问题标签 [spark3]

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 回答
1450 浏览

java - 火花3错误java.lang.UnsatisfiedLinkError:java.library.path中没有zstd-jni

将 Spark3 安装到 redhat 7 后,一切似乎都运行了。

一个简单的连接 dat.join(ids_df, on=['symbol']).show()

遇到这个错误。任何人都可以帮忙吗?非常感谢。

0 投票
1 回答
780 浏览

prometheus - 使用 Prometheus 监控 Spark 3 应用程序

关于使用指标的拉取机制以及如何使用 Prometheus 监控 Spark 3 应用程序有一些非常基本的问题:

  1. Spark-3 支持的 PrometheusServlet 接收器是否包含自应用程序启动时间以来的所有指标?这些指标是否未汇总?
  2. 接收器中的度量信息存储在哪里/如何存储以及当 Prometheus 抓取端点时真正发生了什么?如果端点显示自应用程序启动时间以来的所有指标信息,那么存储这些指标所花费的内存不会成为长时间运行的 spark 应用程序的问题吗?
  3. Prometheus 是否会在每次重新抓取时获取所有指标(从应用程序启动时间开始)?如果不是,它如何知道上次抓取的指标?

谢谢。

0 投票
2 回答
530 浏览

java - 如何以加密格式保存火花数据集?

我将我的 spark 数据集保存为本地机器中的 parquet 文件。我想知道是否有任何方法可以使用某种加密算法来加密数据。我用来将数据保存为镶木地板文件的代码如下所示。

dataset.write().mode("overwrite").parquet(parquetFile);

我看到了一个类似的问题,但是当我写入本地磁盘时,我的查询有所不同。

0 投票
1 回答
170 浏览

scala - 在 Scala 映射中查找值重叠的键集

我正在使用 scala 中的地图对象,其中键是篮子 ID,值是篮子中包含的一组项目 ID。目标是获取此地图对象并为每个篮子计算一组其他篮子 ID,其中至少包含一个常见项目。

假设输入地图对象是

val basket = Map("b1" -> Set("i1", "i2", "i3"), "b2" -> Set("i2", "i4"), "b3" -> Set("i3", "i5"), "b4" -> Set("i6"))

是否可以在 spark 中执行计算,以便我得到相交的篮子信息?例如 val intersects = Map("b1" -> Set("b2", "b3"), "b2" -> Set("b1"), "b3" -> Set("b1"), "b4" -> Set())

谢谢!

0 投票
2 回答
542 浏览

pyspark - PySaprk - 使用 Databricks Spark 在 Synapse 中执行合并

在使用 Databricks Spark 执行 ACID 操作时,我们遇到了一个棘手的情况。我们希望使用 PySpark 通过 JDBC 连接对 Azure Synapse 表执行 UPSERT。我们知道 Spark 只提供了 2 种数据写入模式。APPENDOVERWRITE(在我们的例子中只有这两个使用 full)。因此,基于这两种模式,我们想到了以下选项:

  1. 我们将把整个数据框写入一个阶段表。我们将使用这个阶段表对最终表执行 MERGE 操作(~UPSERT)。阶段表将在此之后被截断/删除。

  2. 我们还将把目标表数据带入 Spark。在 Spark 内部,我们将使用 Delta Lake 执行 MERGE,并将生成最终的 Dataframe 。此数据帧将以 OVERWRITE 模式写回 Target 表。

考虑到缺点。双方..

在选项 1 中,我们必须使用两个表来写入最终数据。如果 Stage 和 target 表都很大,那么在 Synapse 中执行 MERGE 操作是另一项艰巨的任务,可能需要时间。

在选项 2 中,我们必须将 Target 表放入内存中的 Spark。尽管网络 IO 不是我们关心的问题,因为 Databricks 和 Synpse 都在同一个 Azure AZ 中,但它可能会导致 Spark 端的内存问题。

还有其他可行的选择吗??或者有什么推荐吗??

0 投票
1 回答
3173 浏览

apache-spark - 如何解决 Spark 3.0 中的以下问题?无法创建托管表。相关位置已存在。

在我的 spark 工作中,我尝试在每个微批量结构化流中覆盖一个表

它产生了以下错误。

我知道在 Spark 2.xx 中,解决这个问题的方法是添加以下选项。

它在 spark 2.xx 中运行良好。但是,此选项在 Spark 3.0.0 中已删除。那么,我们应该如何在 Spark 3.0.0 中解决这个问题呢?

谢谢!

0 投票
1 回答
146 浏览

sql - 当我尝试执行简单查询时,Spark 3 失败

我在 Hive 上有这张桌子:

表上有数据,但是当我在下面尝试这个查询时:

它崩溃了!

但是,下面的这个查询有效!

这也有效!

我的环境

  • Hadoop 2.10.0
  • 蜂巢 2.3.7
  • 特斯 0.9.2
  • 火花 3.0.1

pyspark 和 Scala 的结果是一样的。

我完全迷失在这里!也许你可以帮助我!

谢谢!

0 投票
1 回答
439 浏览

apache-spark - 带有 HDP 2.6 堆栈的 Apache spark 3.0

我们计划在现有 HDP 2.6 集群之外设置 Apache Spark 3.0,并在该集群中使用 yarn(v2.7) 提交作业,无需升级或修改。目前用户正在使用 HDP 堆栈中包含的 Spark 2.3。目标是在 HDP 集群之外启用 Apache Spark 3.0,而不会中断当前作业。

什么是最好的方法?在 HDP 集群之外设置 apache 3.0 客户端节点并从新客户端节点提交?

对此有什么建议吗?避免与当前 HDP 堆栈及其组件发生冲突的事情?

0 投票
4 回答
636 浏览

scala - 如何创建地图列以计算没有 udaf 的出现次数

我想创建一个Map计算出现次数的列。

例如:

会导致

目前,在 Spark 2.4.6 中,我能够使用 udaf 实现它。

在碰到 Spark3 时,我想知道是否可以摆脱这个 udaf(我尝试使用新方法aggregate但没有成功)

有没有一种有效的方法来做到这一点?(对于效率部分,我可以轻松测试)

0 投票
1 回答
660 浏览

apache-spark - Pyspark.ml - 加载模型和管道时出错

我想将经过训练的 pyspark 模型(或管道)导入 pyspark 脚本。我训练了一个决策树模型,如下所示:

上面的所有代码都可以正常工作,没有任何错误。问题是,当我尝试加载这个模型(在同一个或另一个 pyspark 应用程序上)时,使用:

我收到以下错误:

我选择了这种方法,因为它也无法使用Pipeline对象。关于正在发生的事情有什么想法吗?

更新

我已经意识到这个错误只发生在我使用我的 Spark 集群(一个 master,两个 worker 使用 Spark 的独立集群管理器)时。如果我像这样设置 Spark Session(主设置为本地):

我没有收到上述错误。

另外,我使用的是Spark 3.0.0,难道Spark 3中的模型导入和导出仍然存在错误?