火花卡桑德拉调整

时间:2018-03-06 11:15:15

标签: scala apache-spark cassandra datastax

如何在spark scala代码中设置以下Cassandra写入参数 版本 - DataStax Spark Cassandra Connector 1.6.3

Spark版本 - 1.6.2

spark.cassandra.output.batch.size.rows

spark.cassandra.output.concurrent.writes

spark.cassandra.output.batch.size.bytes

spark.cassandra.output.batch.grouping.key

谢谢, 钱德拉

2 个答案:

答案 0 :(得分:2)

在DataStax Spark Cassandra Connector 1.6.X中,您可以将这些参数作为SparkConf的一部分传递。

val conf = new SparkConf(true)
    .set("spark.cassandra.connection.host", "192.168.123.10")
    .set("spark.cassandra.auth.username", "cassandra")            
    .set("spark.cassandra.auth.password", "cassandra")
    .set("spark.cassandra.output.batch.size.rows", "100")            
    .set("spark.cassandra.output.concurrent.writes", "100")
    .set("spark.cassandra.output.batch.size.bytes", "100")            
    .set("spark.cassandra.output.batch.grouping.key", "partition")

val sc = new SparkContext("spark://192.168.123.10:7077", "test", conf)

您可以参考此readme了解详情。

答案 1 :(得分:0)

最灵活的方法是在文件中添加这些变量,例如 spark.conf

Car::~Car()'
        /tmp/cczSuMnH.o:proj5.cpp:(.text+0x6fc): more undefined references to

...等 然后在您的应用中创建您的spark上下文,例如:

spark.cassandra.output.concurrent.writes 10

最后,当您提交应用时,您可以使用以下命令指定属性文件:

val conf = new SparkConf()
val sc = new SparkContext(conf)

Spark会在创建spark上下文时自动从spark.conf读取您的配置 这样,您可以修改spark.conf上的属性,而无需每次都重新编译代码。