问题标签 [apache-spark-sql]
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.
apache-spark - Spark惰性转换执行障碍
我正在研究 SparkSQL。我使用 JavaPairRDD 从 HBase 获取数据,然后做了一个映射。在地图中,我将所有键保存到一个集合中。为了强制完成此映射,请遵循 collect()。在此之后,我使用 Set 中的值进行其他操作。
该程序可以在我的本地 PC 上完美运行。但是当我把它放到集群上(2个工人)时,就会出现执行障碍。在映射转换之前,执行 Set 操作。
代码流程如下: 从 Hbase 获取数据:
转换数据:
强制上面的地图运行:
获取 Set 的结果:
当我在本地运行代码时,我可以获得所有结果。但是当我在集群上运行它时, sb 没有任何价值。
java - 使用 java 创建的两个 RDD 上的 Spark SQL 连接
我创建了两个 RDD 并使用 java 将它们持久化。我已将 jar 提交给 spark master。现在当spark shell提示我输入查询时,我已经给出了两个RDD上的SQL语句连接条件;然后它在对结果集执行 collect() 时引发异常。
JOIN Condition : 从 TABLE_1 中选择 a.ID 作为 JOIN TABLE_2 b ON a.NAME = b.NAME;
异常:resultSet.collect() 上的空指针异常
PS:我在 resultSet.collect(); 之前检查了结果集是否为空。但它仍然进入条件并抛出 NPE。我正在使用 spark-sql-1.1.1 jar(最新)。
SPARK SQL 中的 JOIN 是否存在问题?
apache-spark-sql - Spark SQL:获取总匹配行
我正在使用 Spark SQL 在存储在 Amazon S3 上的 json 日志之上构建查询 UI。在 UI 中,大多数查询使用限制来返回最重要的结果。通常只有前十个。
spark sql 有没有办法显示与查询匹配的总行数,而无需重新运行查询作为计数?
apache-spark-sql - Spark SQL - 性能诊断
我正在使用 Spark SQL,但有些查询非常慢。我想知道如何获得一些关于查询速度慢的原因,以便我可以尝试优化系统。
hbase - 将大型 Hbase 表加载到 SPARK RDD 中需要很长时间
我正在尝试将大型 Hbase 表加载到 SPARK RDD 中以在实体上运行 SparkSQL 查询。对于大约 600 万行的实体,将其加载到 RDD 大约需要 35 秒。是预期的吗?有什么办法可以缩短加载过程吗?我从http://hbase.apache.org/book/perf.reading.html获得了一些提示来加快进程,例如 scan.setCaching(cacheSize) 并且只添加必要的属性/列进行扫描。我只是想知道是否有其他方法可以提高速度?
这是代码片段:
sql - 火花 SQL 超时
我正在尝试在 Spark 独立集群上运行一个相对简单的 Spark SQL 命令
桌子尺寸如下
因此,据此我希望得到 25,000,000 行的结果。我想用 Spark SQL 运行这个查询,然后处理每一行。这是相关的火花代码
该命令在表分数大小为 200,000 时运行良好,但现在不运行。以下是相关日志
我最初的想法是增加这个超时时间,但是如果不重新编译源代码,这看起来是不可能的。在父目录中,我还看到了一些不同的连接,但我不确定如何让 spark 使用其他类型的连接。
我还试图通过将 spark.executor.memory 增加到 10g 来修复关于持久化到磁盘的第一个警告,但这并没有解决问题。
有谁知道我如何实际运行这个查询?
scala - 使用 Scala 在 Apache Spark 中连接不同 RDD 的数据集
有没有办法RDD
在spark中连接两个不同s的数据集?
要求是 - 我使用具有相同列名的 scala 创建了两个中间 RDD,需要组合两个 RDD 的这些结果并缓存结果以访问 UI。我如何在这里合并数据集?
RDD 的类型spark.sql.SchemaRDD
scala - 加入两个带有/不带 Spark SQL 的普通 RDD
RDDs
我需要在一个/多个列上加入两个普通的。逻辑上这个操作相当于两个表的数据库连接操作。我想知道这是否只能通过Spark SQL
或有其他方法来实现。
作为一个具体的例子,考虑r1
带有主键的 RDD ITEM_ID
:
r2
和带有主键的RDD COMPANY_ID
:
我想加入r1
和r2
。
如何才能做到这一点?
scala - 无法将 Spark RDD 转换为 Schema RDD
我正在尝试执行 Spark 编程指南中提供的示例。 https://spark.apache.org/docs/1.1.0/sql-programming-guide.html
但我面临编译错误。(我是 Scala 新手)
下面是我的代码:
我正面临着编译错误No TypeTag available for Person
。people.registerTempTable("people")
如何解决此错误?
scala - 标准化 RDD
假设我有一个双打 RDD,我想将它“标准化”如下:
- 计算每个 col 的均值和 sd
- 对于每个 col,从每个条目中减去列平均值,然后将结果除以列 sd
这可以有效且轻松地完成(无需在任何阶段将 RDD 转换为双数组)吗?
谢谢并恭祝安康,