问题标签 [spark-cassandra-connector]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1164 浏览

scala - 参数化类的 Scala 包装方法 (spark-cassandra-connector)

我正在编写一组扩展 Spark RDD API 的方法。我必须实现一种存储 RDD 的通用方法,首先我尝试包装 spark-cassandra-connector 的saveAsCassandraTable,但没有成功。

这是“扩展 RDD 的 API”部分:

...并将对象导入为:import ...NewRDDFunctions._.

标记的行会产生以下错误:

我不明白为什么这不起作用,因为saveAsCassandraTable它设计用于任何 RDD。有什么建议么?


我对spark-cassandra-connector 文档中的示例有类似的问题:

...解决方案是将案例类定义移出“主要”功能(但我真的不知道这是否适用于上述问题......)。

0 投票
3 回答
1329 浏览

java - 在 java 中加入 spark RDD 时需要帮助

需要在spark中进行如下join操作

要执行此操作,我需要两个 JavaPairRDD,它们是 closedMTMPNL 和 openMTMPNL。OpenMTM 和 closeMTM 工作正常,但两个 RDD 上的 keyBy 在运行时都出错。

有没有其他方法可以加入 openMTM 和 closeMTM RDD?截至目前,试图获得两个可以在 String 上执行连接的 RDD。是什么导致异常发生?

附加堆栈跟踪

0 投票
1 回答
835 浏览

java - `saveAsTextFile` 方法在 Spark 独立集群中不起作用

我正在使用一个具有 1 个主节点和 2 个工作节点的 3 节点独立 spark 集群,以及一个 2 节点 cassandra 环,这是我正在尝试做的示例代码

从 中System.out.println,我知道我有一些数据作为查询的结果,但是在我的项目主页中,在output目录中,我得到的唯一文件是_SUCCESS并且._SUCCESS.crc没有part-*文件。这是预期的行为吗?如果没有,我哪里错了?

0 投票
3 回答
1295 浏览

java - 为什么 Apache Spark 在客户端执行过滤器

作为 apache spark 的新手,在 Spark 上获取 Cassandra 数据时遇到了一些问题。

此查询未过滤 cassandra 服务器上的数据。虽然这个 java 语句正在执行它的内存并最终抛出 spark java.lang.OutOfMemoryError 异常。查询应该过滤掉 cassandra 服务器上的数据,而不是https://github.com/datastax/spark-cassandra-connector/blob/master/doc/3_selection.md中提到的客户端。

当我在 cassandra cqlsh 上使用过滤器执行查询时,它的性能很好,但是在没有过滤器(where 子句)的情况下执行查询会给出预期的超时。所以很明显spark没有在客户端应用过滤器。

为什么在客户端应用过滤器以及如何改进在服务器端应用过滤器。

我们如何在 windows 平台上的 cassandra 集群之上配置 spark 集群?

0 投票
1 回答
695 浏览

scala - 如何在火花作业中处理 cassandra 连接?

我正在对使用 spark cassandra 连接器和 cassandra 驱动程序的 spark 应用程序进行压力测试。在我的应用程序中,我使用 cassandra 驱动程序从 C* 表中选择最新的值。只要火花作业提交通过火花作业服务器一一发生,这就可以正常工作。但是,如果多个作业提交(请求数 = 80)同时发生,那么我会得到如下异常。

我通过在 spark 作业服务器中创建单个上下文来运行作业。

我的代码

问题

代码中有什么我做错了吗?

如何解决这个问题?

我应该为整个应用程序创建一个单例集群对象并共享它吗?

我应该使用sc.cassandraTable方法而不是直接使用 java 驱动程序吗?

0 投票
2 回答
282 浏览

cassandra - 使用 spark-cassandra 连接器在 cassandra 中写入时间

我有这个用例,我需要不断地听一个 kafka 主题并根据 Spark 流应用程序的列值写入 2000 个列族(每个 15 列..时间序列数据)。我有一个本地 Cassandra 安装设置。在使用 3 个内核和 12 GB 内存的 CentOS VM 上创建这些列族大约需要 1.5 小时。在我的 spark 流应用程序中,我正在做一些预处理以将这些流事件存储到 Cassandra。我遇到了我的流媒体应用程序完成此操作所需的时间问题。
我试图根据密钥将 300 个事件保存到多个列族(大约 200-250 个),我的应用程序需要大约 10 分钟来保存它们。这似乎很奇怪,因为将这些事件按键分组打印到屏幕上需要不到一分钟的时间,但只有当我将它们保存到 Cassandra 时才需要时间。我将 300 万条记录保存到 Cassandra 没有问题。花了不到 3 分钟(但这是针对 Cassandra 中的单个列族)。

我的要求是尽可能实时,这似乎还很遥远。生产环境每 3 秒大约有 400 个事件。

是否需要对 Cassandra 中的 YAML 文件进行任何调整或对 cassandra-connector 本身进行任何更改

0 投票
1 回答
1123 浏览

scala - Spark-cassandra 连接器:选择键列表

Cassandra 2.1、Spark 1.1、spark-cassandra-connector 1.1

我有一个非常高的键值对列族。而且我还有一个我想从该 CF 中选择的键的 RDD

我想做的是

但是,在映射中引用 Spark 上下文会导致 NPE。我可以从完整的 tallTable 中创建一个 RDD,然后加入 id,但是这是一个非常缓慢的操作,我想避免它。

有没有办法像这样从 Cassandra 读取一组密钥?

0 投票
1 回答
941 浏览

amazon-ec2 - Cassandra 使用 Spark 阅读基准

我正在对 Cassandra 的阅读性能进行基准测试。在测试设置步骤中,我创建了一个包含 1 / 2 / 4 个 ec2 实例和数据节点的集群。我写了一张包含 1 亿个条目的表(~3 GB csv 文件)。然后我启动一个 Spark 应用程序,它使用 spark-cassandra-connector 将数据读入 RDD。

但是,我认为行为应该如下:Cassandra 使用的实例越多(Spark 上的实例数量相同),读取速度越快!通过写入,一切似乎都是正确的(如果集群大 2 倍,则速度快 2 倍)。

但是:在我的基准测试中,1-instance-cluster 的读取速度总是比 2-或 4-instance-cluster 快!!!

我的基准测试结果:

集群大小 4:写入:1750 秒/读取:360 秒

集群大小 2:写入:3446 秒/读取:420 秒

集群大小 1:写入:7595 秒/读取:284 秒


额外尝试 - 使用 CASSANTRA-STRESS 工具

我在 Cassandra 集群(大小 1 / 2 / 3 / 4 个节点)上启动了“cassandra-stress”工具,结果如下:


结果:使用 4 或 8 个线程,单节点集群与更大的集群一样快或更快!!!



结果如图: 在此处输入图像描述
数据集是集群大小(1/2/3/4),x 轴是线程,y 轴是 ops/sec。

--> 这里的问题:这些结果是集群范围的结果还是这是对本地节点的测试(因此只有一个环实例的结果)???

有人可以解释一下吗?谢谢!

0 投票
1 回答
483 浏览

scala - Spark Cassandra 聚合 java.lang.OutOfMemoryError:Java 堆空间

我一直在尝试学习如何使用 Apache Spark,并且在尝试对 Cassandra 列中的所有值求和时遇到问题(使用 datastax spark-cassandra-connector)。我尝试的一切都会导致java.lang.OutOfMemoryError: Java heap space

这是我提交给火花大师的代码:

现在,我的集群中只有一个 Spark 工作节点,而且鉴于表的大小,绝对有可能并非所有这些节点都可以同时放入内存中。但是我不认为这会是一个问题,因为 spark 应该懒惰地评估命令,并且对列中的所有值求和不需要让整个表一次驻留在内存中。

我是这个主题的新手,所以任何关于为什么这不起作用的澄清或关于如何正确地做到这一点的帮助将不胜感激。

谢谢

0 投票
1 回答
2125 浏览

ssl - 如何在 Spark 和 Cassandra 之间配置 SSL?

我正在尝试为 Cassandra Spark 连接器配置 SSL,但我找不到如何执行此操作的示例。

我正在尝试像这样配置它:

当我尝试提交 spark 作业时,出现以下错误:

所以我不确定这是否受支持,或者我只是使用了错误的属性名称。

我看到了连接器 1.2.3 版的这张,但我找不到如何使用它的示例,而且听起来它可能不支持密钥库。我使用的是 1.4.0-M1 版本的连接器。

谁能告诉我如何为 Spark Cassandra 连接器配置 SSL 的示例?谢谢。