Apache Spark SQL:自动内连接?

     2023-04-17     167

关键词:

【中文标题】Apache Spark SQL:自动内连接?【英文标题】:Apache Spark SQL: Automatic Inner Join? 【发布时间】:2016-02-22 22:39:11 【问题描述】:

所以我遇到了一个奇怪的情况。

每当我使用 inner join 语句运行 sqlContext.sql 时,我实际上会收到一个错误,但是当我阅读该错误时,看起来 Spark 在尝试执行 on 时已经自动加入了我的两个单独的表声明。

表 1: 患者编号,代码

表2: 患者 ID,日期

Select code, date
from Table1
inner join Table2
on Table1.patient_id = Table2.patient_id <- exception shows the table is joined already by this point.

对这种行为有什么想法吗?

错误看起来像这样

org.apache.spark.sql.AnalysisException: cannot resolve 'Table2.patient_id' given input columns [patient_id, code, date]

【问题讨论】:

你能把错误信息也贴出来吗? 更新错误信息 你能把代码贴出来吗?我们也许可以帮助您... 【参考方案1】:

我认为你的程序中有错字。

但是,您可以执行以下操作:

tableOneDF.join(tableTwoDF, tableOneDF("patient_id") === tableTwoDF("patient_id"), "inner").select("code", "date") 

而 tableOneDF 和 tableTwoDF 是在两个表之上创建的两个数据框。

尝试一下,看看它是否仍然会发生。

【讨论】:

是的,我找到了,谢谢。列名略有不匹配,但这是多么奇怪的错误...

Spark Jdbc 连接 JDBCOptions

】SparkJdbc连接JDBCOptions【英文标题】:SparkJdbcconnectionJDBCOptions【发布时间】:2018-02-2620:52:03【问题描述】:我正在尝试使用SparkJdbcUtils中的可保存方法https://github.com/apache/spark/blob/master/sql/core/src/main/scala/org/apache/spark/sql/execution/d 查看详情

Apache Spark :org.apache.spark.sql.Dataset.drop(String... colNames) 方法用于 Java

】ApacheSpark:org.apache.spark.sql.Dataset.drop(String...colNames)方法用于Java【英文标题】:ApacheSpark:org.apache.spark.sql.Dataset.drop(String...colNames)methodforJava【发布时间】:2018-04-2505:30:33【问题描述】:我有两个表,有两个公共列。我正在使用这... 查看详情

使用 Apache Spark / Spark SQL 加入文件

】使用ApacheSpark/SparkSQL加入文件【英文标题】:JoinfilesusingApacheSpark/SparkSQL【发布时间】:2015-06-2206:49:35【问题描述】:我正在尝试使用ApacheSpark根据一些公共字段比较两个不同的文件,并从两个文件中获取值并将其写入输出文件... 查看详情

连接 Apache Spark DataFrame 中的列

】连接ApacheSparkDataFrame中的列【英文标题】:ConcatenatecolumnsinApacheSparkDataFrame【发布时间】:2015-07-1609:49:07【问题描述】:我们如何连接ApacheSparkDataFrame中的两列?SparkSQL中有什么函数可以使用吗?【问题讨论】:【参考方案1】:... 查看详情

连接 Apache Spark DataFrame 中的列

】连接ApacheSparkDataFrame中的列【英文标题】:ConcatenatecolumnsinApacheSparkDataFrame【发布时间】:2015-07-1609:49:07【问题描述】:我们如何连接ApacheSparkDataFrame中的两列?SparkSQL中有什么函数可以使用吗?【问题讨论】:【参考方案1】:... 查看详情

连接 Apache Spark DataFrame 中的列

】连接ApacheSparkDataFrame中的列【英文标题】:ConcatenatecolumnsinApacheSparkDataFrame【发布时间】:2015-07-1609:49:07【问题描述】:我们如何连接ApacheSparkDataFrame中的两列?SparkSQL中有什么函数可以使用吗?【问题讨论】:【参考方案1】:... 查看详情

Spark 1.3.x 的 org.apache.spark.sql.cassandra 的 API 文档在哪里?

】Spark1.3.x的org.apache.spark.sql.cassandra的API文档在哪里?【英文标题】:WherearetheAPIdocsfororg.apache.spark.sql.cassandraforSpark1.3.x?【发布时间】:2015-06-0821:23:14【问题描述】:我正在编写一个Spark作业,该作业使用Spark-Cassandra连接器从spark... 查看详情

使用 Apache Spark SQL 和 Java 直接运行 sql 查询

】使用ApacheSparkSQL和Java直接运行sql查询【英文标题】:RundirectlysqlquerywithApacheSparkSQLwithJava【发布时间】:2016-10-0709:50:25【问题描述】:我试图弄清楚如何使用SparkSQL直接执行查询。我的意思是:SQLContextsql=newSQLContext(ctx);sql.sql("QUER... 查看详情

在 spark 数据框中运行 UDF 时,不支持获取 org.apache.spark.sql.Column 类型的架构

】在spark数据框中运行UDF时,不支持获取org.apache.spark.sql.Column类型的架构【英文标题】:gettingSchemafortypeorg.apache.spark.sql.ColumnisnotsupportedwhilerunningUDFinsparkdataframe【发布时间】:2019-12-2317:34:58【问题描述】:我正在尝试连接spark数据... 查看详情

将 sql-spark-connector 库安装到 Azure Synapse Apache Spark

】将sql-spark-connector库安装到AzureSynapseApacheSpark【英文标题】:Installsql-spark-connectorlibrarytoAzureSynapseApacheSpark【发布时间】:2021-12-0218:00:42【问题描述】:我正在尝试安装适用于SQLServer和AzureSQL的ApacheSpark连接器,以便在大数据分析... 查看详情

spark:求出分组内的topn(代码片段)

制作测试数据源:c185c277c388c122c166c395c354c291c266c154c165c241c465sparkscala实现代码:importorg.apache.spark.SparkConfimportorg.apache.spark.sql.SparkSessionobjectGroupTopN1System.setProperty("hadoop.home.dir", 查看详情

UDF 注册错误:不支持 org.apache.spark.sql.Dataset[org.apache.spark.sql.Row] 类型的架构 [重复]

】UDF注册错误:不支持org.apache.spark.sql.Dataset[org.apache.spark.sql.Row]类型的架构[重复]【英文标题】:UDFregisterationerror:Schemafortypeorg.apache.spark.sql.Dataset[org.apache.spark.sql.Row]isnotsupported[duplicate]【发布时间】:2017-03-2806:39:0 查看详情

Apache Livy:通过 REST 查询 Spark SQL:可能吗?

】ApacheLivy:通过REST查询SparkSQL:可能吗?【英文标题】:ApacheLivy:querySparkSQLviaREST:possible?【发布时间】:2017-08-1600:08:39【问题描述】:ApacheLivy文档很少:是否可以使用ApacheLivy将SparkSQL查询结果集作为REST调用返回?调用应用程序... 查看详情

Spark SQL - org.apache.spark.sql.AnalysisException

】SparkSQL-org.apache.spark.sql.AnalysisException【英文标题】:【发布时间】:2020-03-2518:53:26【问题描述】:当我第二次在Databricks上运行Spark作业时出现下面描述的错误(第一次不太频繁)。sql查询只是从DataFrame执行createtableasselectfrom注... 查看详情

Spark SQL 查询:org.apache.spark.sql.AnalysisException

】SparkSQL查询:org.apache.spark.sql.AnalysisException【英文标题】:SparkSQLquery:org.apache.spark.sql.AnalysisException【发布时间】:2015-08-1214:37:57【问题描述】:我正在尝试为twitterjson文件编写查询,以通过查看retweetCount来提取最有影响力的人... 查看详情

spark:内存繁重的连接操作的最佳实践(代码片段)

...ewSparkConf().setAppName("Modello1_Spark")conf.set("spark.serializer","org.apache.spark.serializer.KryoSerializer")conf.set("spark.io.compression.codec","org.apache.spark.io.LZFCompressionCodec")valsc=newSparkContext(conf)valhc=newHiveContext(sc)importhc.implicits._hc.sql("SEThive.exec.compress.outp... 查看详情

org.apache.spark.sql.AnalysisException:未定义函数:'ano'

】org.apache.spark.sql.AnalysisException:未定义函数:\\\'ano\\\'【英文标题】:org.apache.spark.sql.AnalysisException:Undefinedfunction:\'ano\'org.apache.spark.sql.AnalysisException:未定义函数:\'ano\'【发布时间】:2021-06-1906:15:24【问题描述】:我在spark3 查看详情

从 org.apache.spark.sql.Row 中提取信息

】从org.apache.spark.sql.Row中提取信息【英文标题】:Extractinformationfroma`org.apache.spark.sql.Row`【发布时间】:2015-01-2000:21:49【问题描述】:我有Array[org.apache.spark.sql.Row]由sqc.sql(sqlcmd).collect()返回:Array([10479,6,10],[8975,149,640],...)我 查看详情