2017-09-20 74 views
1

我正在使用spark-cassandra-connector_2.11(2.0.5版)将来自Cassandra的数据加载到Spark群集中。我使用读取API如下加载数据:如何使用Datastax spark-cassandra连接器读取Cassandra表中的特定列?

SparkUtil.initSpark() 
     .read 
     .format("org.apache.spark.sql.cassandra") 
     .options(Map("table"-><table_name>, "keyspace"-><keyspace>)) 
     .load() 

其工作正常,但是,在使用情况下,我想只读从卡桑德拉的特定列的一个。如何使用read api来做同样的事情?

回答

2
SparkUtil.initSpark() 
     .read 
     .format("org.apache.spark.sql.cassandra") 
     .options(Map("table"-><table_name>, "keyspace"-><keyspace>)) 
     .load() 
     .select("column_name") 

使用select ..你也可以使用case类

1

另一种方法是使用下面的方法,而无需使用选项API。

SparkUtil.initSpark() 
     .sparkContext 
     .cassandraTable(<keyspace>, <table_name>) 
     .select(<column_name>) 
相关问题