Apache spark 从spark创建表时,间歇性获取无法创建托管表错误
从spark保存托管表时,spark 2.4中间歇性出现以下错误 错误- pyspark.sql.utils.AnalysisException:u“无法创建托管表('hive\u issue.table')。关联位置('s3://{bucket\u name}/EMRFS\u WARE\u TEST167\u new/warehouse/hive\u issue.db/table')已存在 复制步骤-- 1.从spark中型数据(30MB CSV文件)创建数据帧 2.将dataframe另存为表 3.在进行上述操作时终止会话 注意-- 会话终止状态只是重新处理此问题的一种方式。在实时情况下,当我们多次运行相同的spark作业时,我们会间歇性地遇到这个问题。我们使用来自EMR集群的EMRFS和HDFS,在这两个系统上面临相同的问题。 我们唯一可以解决这一问题的方法是删除目标文件夹,表将在其中保存其文件,这对我们来说不是选项,我们需要在表中保留历史信息,因此在写入表时使用附加模式 我们查阅了spark 2.4[1]的文档,发现spark不再允许在非空文件夹上创建管理表Apache spark 从spark创建表时,间歇性获取无法创建托管表错误,apache-spark,pyspark,apache-spark-sql,Apache Spark,Pyspark,Apache Spark Sql,从spark保存托管表时,spark 2.4中间歇性出现以下错误 错误- pyspark.sql.utils.AnalysisException:u“无法创建托管表('hive\u issue.table')。关联位置('s3://{bucket\u name}/EMRFS\u WARE\u TEST167\u new/warehouse/hive\u issue.db/table')已存在 复制步骤-- 1.从spark中型数据(30MB CSV文件)创建数据帧 2.将dataframe另存为
from pyspark.sql import SparkSession
sc = SparkSession.builder.enableHiveSupport().getOrCreate()
df = sc.read.csv("s3://{sample-bucket}1/DATA/consumecomplians.csv")
print "STARTED WRITING TO TABLE"
# Terminate session using ctrl + c after this statement post df.write action started
df.write.mode("append").saveAsTable("hive_issue.table")
print "COMPLETED WRITING TO TABLE"