首页 文章

火花 Cassandra 调整

提问于
浏览
0

如何在版本的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 回答

  • 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 .

  • 0

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

    spark.cassandra.output.concurrent.writes 10
    

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

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

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

    spark-submit --properties-file spark.conf ...
    

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

相关问题