- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个Hive表,我想使用插入覆盖(下面的示例查询)覆盖
spark.sql("INSERT OVERWRITE TABLE my_database.my_table VALUES (221221, 'DUMMY_Record_Pav', 21233, 'SPACE')")
--Show create Table
CREATE TABLE `my_database.my_table`(
`player_id` string,
`player_type` string,
`position_id` string,
`position_location` string)
ROW FORMAT SERDE
'org.apache.hadoop.hive.ql.io.parquet.serde.ParquetHiveSerDe'
WITH SERDEPROPERTIES (
'path'='hdfs://path/hive/data/my_database.db/my_table')
STORED AS INPUTFORMAT
'org.apache.hadoop.hive.ql.io.parquet.MapredParquetInputFormat'
OUTPUTFORMAT
'org.apache.hadoop.hive.ql.io.parquet.MapredParquetOutputFormat'
LOCATION
'hdfs://path/hive/data/my_database.db/my_table''
TBLPROPERTIES (
--Redacted
)
org.apache.spark.sql.AnalysisException: Can only write data to relations with a single path.;
at org.apache.spark.sql.execution.datasources.DataSourceAnalysis$$anonfun$apply$1.applyOrElse(DataSourceStrategy.scala:188)
at org.apache.spark.sql.execution.datasources.DataSourceAnalysis$$anonfun$apply$1.applyOrElse(DataSourceStrategy.scala:134)
at org.apache.spark.sql.catalyst.plans.logical.AnalysisHelper$$anonfun$resolveOperatorsDown$1$$anonfun$2.apply(AnalysisHelper.scala:108)
at org.apache.spark.sql.catalyst.plans.logical.AnalysisHelper$$anonfun$resolveOperatorsDown$1$$anonfun$2.apply(AnalysisHelper.scala:108)
at org.apache.spark.sql.catalyst.trees.CurrentOrigin$.withOrigin(TreeNode.scala:70)
at org.apache.spark.sql.catalyst.plans.logical.AnalysisHelper$$anonfun$resolveOperatorsDown$1.apply(AnalysisHelper.scala:107)
at org.apache.spark.sql.catalyst.plans.logical.AnalysisHelper$$anonfun$resolveOperatorsDown$1.apply(AnalysisHelper.scala:106)
at org.apache.spark.sql.catalyst.plans.logical.AnalysisHelper$.allowInvokingTransformsInAnalyzer(AnalysisHelper.scala:194)
at org.apache.spark.sql.catalyst.plans.logical.AnalysisHelper$class.resolveOperatorsDown(AnalysisHelper.scala:106)
at org.apache.spark.sql.catalyst.plans.logical.LogicalPlan.resolveOperatorsDown(LogicalPlan.scala:29)
at org.apache.spark.sql.catalyst.plans.logical.AnalysisHelper$class.resolveOperators(AnalysisHelper.scala:73)
at org.apache.spark.sql.catalyst.plans.logical.LogicalPlan.resolveOperators(LogicalPlan.scala:29)
at org.apache.spark.sql.execution.datasources.DataSourceAnalysis.apply(DataSourceStrategy.scala:134)
at org.apache.spark.sql.execution.datasources.DataSourceAnalysis.apply(DataSourceStrategy.scala:52)
at org.apache.spark.sql.catalyst.rules.RuleExecutor$$anonfun$execute$1$$anonfun$apply$1.apply(RuleExecutor.scala:87)
at org.apache.spark.sql.catalyst.rules.RuleExecutor$$anonfun$execute$1$$anonfun$apply$1.apply(RuleExecutor.scala:84)
at scala.collection.IndexedSeqOptimized$class.foldl(IndexedSeqOptimized.scala:57)
at scala.collection.IndexedSeqOptimized$class.foldLeft(IndexedSeqOptimized.scala:66)
at scala.collection.mutable.ArrayBuffer.foldLeft(ArrayBuffer.scala:48)
at org.apache.spark.sql.catalyst.rules.RuleExecutor$$anonfun$execute$1.apply(RuleExecutor.scala:84)
at org.apache.spark.sql.catalyst.rules.RuleExecutor$$anonfun$execute$1.apply(RuleExecutor.scala:76)
at scala.collection.immutable.List.foreach(List.scala:392)
at org.apache.spark.sql.catalyst.rules.RuleExecutor.execute(RuleExecutor.scala:76)
at org.apache.spark.sql.catalyst.analysis.Analyzer.org$apache$spark$sql$catalyst$analysis$Analyzer$$executeSameContext(Analyzer.scala:127)
at org.apache.spark.sql.catalyst.analysis.Analyzer.execute(Analyzer.scala:121)
at org.apache.spark.sql.catalyst.analysis.Analyzer$$anonfun$executeAndCheck$1.apply(Analyzer.scala:106)
at org.apache.spark.sql.catalyst.analysis.Analyzer$$anonfun$executeAndCheck$1.apply(Analyzer.scala:105)
at org.apache.spark.sql.catalyst.plans.logical.AnalysisHelper$.markInAnalyzer(AnalysisHelper.scala:201)
at org.apache.spark.sql.catalyst.analysis.Analyzer.executeAndCheck(Analyzer.scala:105)
at org.apache.spark.sql.execution.QueryExecution.analyzed$lzycompute(QueryExecution.scala:57)
at org.apache.spark.sql.execution.QueryExecution.analyzed(QueryExecution.scala:55)
at org.apache.spark.sql.execution.QueryExecution.assertAnalyzed(QueryExecution.scala:47)
at org.apache.spark.sql.Dataset$.ofRows(Dataset.scala:78)
at org.apache.spark.sql.SparkSession.sql(SparkSession.scala:651)
... 49 elided
WITH SERDEPROPERTIES (
'path'='hdfs://path/hive/data/my_database.db/my_table')
ALTER TABLE my_database.my_table SET SERDEPROPERTIES('path'='');
最佳答案
您可以创建中间表
Create table mytable2 () with ();
insert into mytable2 select * from mytable;
alter table mytable rename to mytable1;
alter table mytable2 rename to mytable;
关于scala - 如何在不因org.apache.spark.sql.AnalysisException而失败的情况下插入覆盖Hive表:只能将数据写入到具有单个路径的关系中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61394038/
我正在使用spark-sql 2.4.1和java 8。 val country_df = Seq( ("us",2001), ("fr",2002), ("jp",2002
我在 Windows 7 计算机上运行 Quickstart VM Cloudera,其中 8Go RAM 和 4Go 专用于 VM。 我使用 Sqoop(Cloudera VM 教程练习 1)将表从
我一直在使用 Spark Dataset API 对 JSON 执行操作以根据需要提取某些字段。但是,当我提供的让 spark 知道要提取哪个字段的规范出错时,spark 会吐出一个 org.apac
所以我有一些数据在 Kafka 主题中进行流式传输,我正在获取这些流式数据并将其放入 DataFrame .我想在 DataFrame 中显示数据: import os from kafka impo
我收到以下错误: 18/03/14 15:31:11 ERROR ApplicationMaster: User class threw exception: org.apache.spark.sql
今天早上我们将 Spark 版本从 2.2.0 更新到 2.3.0,我遇到了相当奇怪的问题。 我有一个 UDF(),计算 2 点之间的距离 private static UDF4 calcDistan
exitTotalDF .filter($"accid" === "dc215673-ef22-4d59-0998-455b82000015") .groupBy("exiturl") .
我正在使用标准的 hdfs 运行 amazon emr 的 spark 作业,而不是 S3 来存储我的文件。我在 hdfs://user/hive/warehouse/中有一个配置单元表,但在运行我的
val rdd = sc.parallelize(Seq(("vskp", Array(2.0, 1.0, 2.1, 5.4)),("hyd",Array(1.5, 0.5, 0.9, 3.7)),(
案例 1: 当我尝试获取“b.no”时出现错误,下面共享代码以及错误消息。我如何从第二个数据帧中获取值(即别名为 b)。此处是否允许从 b 中选择值。如果我删除 b.no 它工作正常。 df1.csv
在 Spark shell 上执行以下查询时,我面临分区错误: Expected only partition pruning predicates: ((((isnotnull(tenant_sui
我有一个这样的 JSON 数据: { "parent":[ { "prop1":1.0, "prop2":"C", "ch
我正在尝试将整个 df 转换为单个向量列,使用 df_vec = vectorAssembler.transform(df.drop('col200')) 我被抛出这个错误: File "/usr/h
我有一个带有 String[] 的数据集,我正在努力从中提取列。这是代码 import static org.apache.spark.sql.functions.col; //Read parque
first 的这种用法有什么问题?我想获取数据框中每个 id 的第一行,但它返回一个错误: Exception in thread "main" org.apache.spark.sql.Analys
我正在使用朴素贝叶斯算法对文章进行分类,并希望访问部分结果的“概率”列: val Array(trainingDF, testDF) = rawDataDF.randomSplit(Array(0.6
我正在使用neo4j-spark connector将neo4j数据提取到spark数据帧中。我能够成功获取它,因为我能够显示数据框。然后我用 createOrReplaceTempView() 注册
我正在尝试在 Impala 中执行查询并收到以下错误(AnalysisException:INT 和 STRING 类型的操作数不可比较:B.COMMENT_TYPE_CD = '100')有人可以帮
SparkSession .builder .master("local[*]") .config("spark.sql.warehouse.dir", "C:/tmp/spark")
我有一个返回 Dataset 的 Java 方法。我想将其转换为 Dataset ,其中该对象名为 StatusChangeDB。我创建了一个 POJO StatusChangeDB.java 并使用
我是一名优秀的程序员,十分优秀!