是否可以在没有 Cassandra 的情况下使用 DataStax 部署 Spark worker

Is it possible to deploy Spark worker without Cassandra with DataStax

目前,我们有一个项目运行 3个Spark节点。我们想要扩展 Spark workers。但是,就 CPU/memory 使用而言,将每个 spark 节点 运行 置于 Cassandra 节点之上非常昂贵。我的问题是,是否可以在没有 Cassandra 的情况下使用 DataStax 部署 Spark worker?

您通常会在每个 Cassandra 节点上部署一个 Spark-worker 以支持数据局部性(如果可能,spark-worker 将优先命中它的本地节点)。 但是,如果你真的想将 spark 服务与 cassandra 服务分离,你有几个选择:

  1. 直接询问 DSE 支持,如果您当然有订阅。
  2. 在新节点上部署一个新的 spark-worker,并将其配置为连接到您现有的 spark-master。本质上,启动 spark-slave.sh 。如果正确完成,这应该可以工作。当然,DSE 会出现一些集成问题,您需要尝试看看。您将必须管理您的防火墙规则、dns 解析等...当然,您必须手动配置 CPU 的数量和分配给这个新节点的 RAM。
  3. 将 apache-spark 与 DSE 完全分离 => 仅使用 Cassandra-DSE,并在您的 3 个 Cassandra 节点和一个附加节点中的每个节点上安装 Apache Spark。这肯定有效,但涉及到一些工作,包括自己配置 spark-master、处理 HA(如果需要)、在 DSE 和 Apache Spark 之间正确分配 RAM。如果需要,有 Cassandra 咨询公司的臀部可以为您提供帮助,instaclustr 只是其中之一。

祝你好运!