【问题标题】:Does spark-cassandra-connector support built-in load balanceing?spark-cassandra-connector 是否支持内置负载均衡?
【发布时间】:2020-03-15 04:07:25
【问题描述】:

我有基于 Scala 的应用程序,我需要将它连接到 Cassandra。 我发现 DataStax Enterprise 驱动程序在这方面非常有用,它们有很多很酷的功能,比如 Cassandra 的内置负载平衡,这对我来说真的很重要。 不幸的是,Scala 没有任何本地 DSE 驱动程序。我知道我们可以使用 DSE Java 驱动程序,但在这种情况下,我们失去了很多 Scala 很酷的特性。 我还发现了由 Datastax 构建的 spark-cassandra-connector,但是这个内置的负载平衡对我来说非常重要,我不知道 spark-cassandra-connector 是否支持它。

在使用 DSE Java 驱动程序的基于 Java 的应用程序中,我需要在配置文件中配置内置负载均衡器,如下所示:

datastax-java-driver.basic.load-balancing-policy {
  class = DefaultLoadBalancingPolicy
}

我不知道在 Scala 中使用 spark-cassandra-connector 的等效方法,我什至不确定它是否可能。 任何帮助,将不胜感激。谢谢。

【问题讨论】:

    标签: scala cassandra datastax spark-cassandra-connector


    【解决方案1】:

    在 Scala 中,您可以只使用 Java 驱动程序 - 开箱即用,您不仅支持基本 Scala 类型,但您可以通过将 java-driver-scala-extras 导入项目(作为源代码)来解决此问题- 它至少适用于驱动程序 3.x。另一个问题是对Option 的支持,但这可以通过具有extra codec in Java driver 的Java 选项来完成。

    关于驱动程序的定制 - 这部分应该可以与 Scala 一起使用而无需更改。关于 Spark 中默认策略的支持 - Spark Cassandra 连接器出于特殊原因有一个单独的策略 - 它接近 Java 的默认策略,但具有针对 Spark 的细节。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-04-10
      • 2017-01-13
      • 2021-12-31
      • 2011-10-17
      • 1970-01-01
      • 1970-01-01
      • 2015-09-27
      • 2011-12-30
      相关资源
      最近更新 更多