我正试图在spark2.0中使用pyspark将数据插入配置单元表。这是我的密码-
import pandas as pd
from pyspark.sql import SparkSession
spark = SparkSession\
.builder\
.enableHiveSupport()\
.appName("sparkApp")\
.getOrCreate()
spark._jsc.hadoopConfiguration().set('fs.defaultFS', 's3n')
data = pd.read_csv('s3n://some-path',sep = '\t',compression = 'gzip')
//some manipulation in data
data_sdf = spark.createDataFrame(data)
data_sdf.createOrReplaceTempView('data')
spark.sql(
'INSERT OVERWRITE TABLE schmea.my_table\
PARTITION (col1,col2)\
select col1,col2,col3,col4 from data')
这将导致异常-
App > pyspark.sql.utils.IllegalArgumentException: 'Wrong FS: s3://bucket/a-path, expected: s3n://bucket'
我在emr上使用hive,而hive表的数据文件实际上驻留在s3上。我应该怎么做才能避免这个例外?
暂无答案!
目前还没有任何答案,快来回答吧!