我试图在Glue目录中创建一个包含s3路径位置的表,这个位置是在EMR中使用hive运行的火花路径。我尝试了以下命令,但得到了错误:
pyspark.sql.utils.AnalysisException: u'java.lang.IllegalArgumentException:无法从空字符串创建路径;‘
sparksession.sql("CREATE TABLE IF NOT EXISTS abc LOCATION 's3://my-bucket/test/' as (SELECT * from my_table)")
sparksession.sql("CREATE TABLE abcSTORED AS PARQUET LOCATION 's3://my-bucket/test/' AS select * from my_table")
sparksession.sql("CREATE TABLE abcas SELECT * from my_table USING PARQUET LOCATION 's3://my-bucket/test/'")
有人能给我建议一下我错过的参数吗?
发布于 2020-11-25 09:02:14
在没有指定位置的情况下创建数据库时会发生此问题:
CREATE DATABASE db_name;若要解决此问题,请在创建数据库时指定位置:
CREATE DATABASE db_name LOCATION 's3://my-bucket/db_path';然后,创建一个表:
USE db_name;
CREATE TABLE IF NOT EXISTS abc LOCATION 's3://my-bucket/db_path/abc' as (SELECT * from my_table)https://stackoverflow.com/questions/64459472
复制相似问题