【问题标题】:How to create a CassandraTableScanJavaRDD without connecting to Cassandra?如何在不连接到 Cassandra 的情况下创建 CassandraTableScanJavaRDD?
【发布时间】:2019-07-06 21:41:18
【问题描述】:
我正在尝试对连接到 Cassandra 并执行 select 语句的方法进行单元测试。然后将返回的 CassandraTableScanJavaRDD 转换为数据帧并完成进一步处理。
对于我的单元测试,我不希望使用嵌入式 cassandra。我正在尝试使用 mockito 模拟 CassandraTableScanJavaRDD。但我无法在其中放入一些虚拟数据。
如何创建一个 CassandraTableScanJavaRDD 实例并在其中存储一些数据,而不实际连接到 cassandra。
【问题讨论】:
标签:
java
apache-spark
spark-cassandra-connector
【解决方案1】:
您可以尝试使用 Spark Cassandra Connector Embedded - 对于许多测试用例它应该可以工作,我认为只有 Spark Streaming 作业可能需要真正的 Cassandra。
设置取决于您的包管理器 - 例如,对于 SBT,它将是:
"com.datastax.spark" %% "spark-cassandra-connector-embedded" % {version}
最新版本是 2.4.0,但您可能需要使用另一个版本,具体取决于您使用的 Spark 版本...