我已经配置了连接到 Cassandra 集群的独立 spark 集群,其中有 1 个主服务器、1 个从属服务器和 Thrift 服务器,该服务器用作 Tableau 应用程序的 JDBC 连接器。无论如何,当我启动任何查询工作人员时,奴隶都会出现在工作人员列表中,似乎没有被用作执行者(使用了 0 个核心)。所有工作负载都由主执行器执行。同样在 Thrift Web 控制台中,我观察到只有一个执行程序处于活动状态。
基本上,我希望 spark 集群的两个执行器上的分布式工作负载能够实现更高的性能。
从主日志:
2019-03-26 15:36:52 INFO Master:54 - 我被选为领导了!新状态:ALIVE 2019-03-26 15:37:00 INFO Master:54 - Registering worker worker-ip:37678 with 16 cores, 61.8 GB RAM
从工人日志:
2019-03-26 15:37:00 INFO Worker:54 - 成功注册 master spark://master-hostname:7077
我的 spark-defaults.conf 是:
spark.driver.memory=50g
spark.driver.maxResultSize=4g
spark.sql.thriftServer.incrementalCollect=false
spark.sql.shuffle.partition=17
spark.sql.autoBroadcastJoinThreshold=10485760
spark.sql.inMemoryColumnarStorage.compressed=true
spark.sql.inMemoryColumnarStorage.batchSize=10000
spark.cores.max=32
spark.executor.cores=16
spark.memory.offHeap.enabled=true
spark.memory.offHeap.size=1g
pic1 工人
pic2 执行者
任何帮助高度赞赏。