我正在使用Spark-Cassandra-Connector_2.11(2.0.5版)将Cassandra的数据加载到Spark群集中。我正在使用读取API来加载数据如下:
SparkUtil.initSpark()
.read
.format("org.apache.spark.sql.cassandra")
.options(Map("table"-><table_name>, "keyspace"-><keyspace>))
.load()
但是,在其中一种用例中,我只想阅读Cassandra的特定列。如何使用读取API进行相同的操作?
SparkUtil.initSpark()
.read
.format("org.apache.spark.sql.cassandra")
.options(Map("table"-><table_name>, "keyspace"-><keyspace>))
.load()
.select("column_name")
使用select
..您也可以使用案例类
其他方法是使用以下方法而不使用选项API。
SparkUtil.initSpark()
.sparkContext
.cassandraTable(<keyspace>, <table_name>)
.select(<column_name>)
一行解决方案,用于从卡桑德拉表中获取几列:
val rdd = sc.cassandratable(" keyspace"," table_name")
.select(" service_date"," Mobile")。persist(Storagelevel.memory_and_disk)