我正在做一个Spring Java项目,并使用Datastax连接器集成Apache Spark和cassandra。
我已经自动连接了火花会话,下面的代码行似乎有效。
Map<String, String> configMap = new HashMap<>();
configMap.put("keyspace", "key1");
configMap.put("table", tableName.toLowerCase());
Dataset<Row> ds = sparkSession.sqlContext().read().format("org.apache.spark.sql.cassandra").options(configMap)
.load();
ds.show();
但这总是给我20条记录。我想选择表的所有记录。有人可以告诉我该怎么做吗?
提前谢谢。
默认情况下show
始终输出 20 条记录,尽管您可以传递参数来指定需要多少项。但show
通常仅用于简要检查数据,尤其是在交互式工作时。
在您的情况下,一切都取决于您要如何处理数据 - 您已经使用load
函数成功加载了数据 - 之后您可以开始使用普通的 Spark 函数 -select
、filter
、groupBy
等。
附言你可以在这里找到更多关于使用Java的Spark Cassandra Connector(SCC(的例子,尽管它比使用Scala更麻烦。我建议您确保使用的是SCC 2.5.0或更高版本,因为那里有许多新功能。