sql 查询 spark-cassandra 集群 thriftserver 没有 return

sql query to spark-cassandra cluster thriftserver does not return

我设置了一个 spark-cassandra 集群。 cqlsh 工作得很好。我启动了 thriftserver 并使用直线命令行连接到它。我可以

use schemaname
show schemas
show tables

但是一个简单的

select * from tablename 

卡住了。

我尝试了一个 java 客户端通过 jdbc:hive2 界面,它显示了相同的行为。显示表上的好结果,但没有 return 简单的 select 声明。

spark 控制台显示所有作业,没有任何投诉迹象。作业停留在已编译阶段。

有人知道如何更深入地诊断吗?

在 sql 中为 cassandra table 创建临时 table。喜欢以下方式

scala> sqlContext.sql(
   """CREATE TEMPORARY TABLE words
     |USING org.apache.spark.sql.cassandra
     |OPTIONS (
     |  table "words",
     |  keyspace "test",
     |  cluster "Test Cluster",
     |  pushdown "true"
     |)""".stripMargin)
scala> val df = sqlContext.sql("SELECT * FROM words")
scala> df.show()

我对编码没意见。这个问题就解决了。这是因为这个设置没有通过 yarn,thriftserver 的第一个实例占用了集群中的所有核心。我对第二个 thriftserver 实例发射了 sql ,它有 0 个核心供其使用。