【发布时间】:2018-08-24 05:29:33
【问题描述】:
我有 RF=3 的三节点 Cassandra DSE 集群和数据库模式。现在我正在创建一个要在 DSE spark 上执行的 scala 应用程序。 Scala 代码如下:-
package com.spark
import com.datastax.spark.connector._
import org.apache.spark.SparkConf
import org.apache.spark.SparkContext
import org.apache.spark.SparkContext._
import org.apache.spark.sql._
import org.apache.spark.sql.SQLContext
object sample {
def main(args: Array[String]) {
val conf = new SparkConf()
.setMaster("local")
.setAppName("testing")
.set("spark.cassandra.connection.host", "192.168.0.40")
.set("spark.driver.allowMultipleContexts", "true")
.set("spark.executor.memory", "1g")
.set("spark.driver.memory", "1g")
.set("spark.driver.maxResultSize", "500M")
.set("spark.executor.heartbeatInterval", "30s")
.set("spark.submit.deployMode", "cluster")
val sc = new SparkContext(conf)
val lRDD = sc.cassandraTable("dbname", "tablename")
lRDD.collect.foreach(println)
}}
我正在使用
运行脚本dse> bin/dse spark-submit --class com.spark.sample --total-executor-cores 4 /home/db-svr/sample.jar
所以,现在我想从 1 个节点执行我的 spark 应用程序,但系统应该在内部对 3 个节点进行处理,我想对其进行监控,以便我可以共同利用 3 个节点的 RAM 和处理器。我该怎么做?
此外,当前的脚本需要花费大量时间来生成结果(表大小为 100 万行,每行 128 字节)。有没有我遗漏的性能调整参数?
【问题讨论】:
标签: scala apache-spark cassandra datastax-enterprise