在配置单元上为具有凭据的Azure Blob创建外部表

在配置单元上为具有凭据的Azure Blob创建外部表,azure,amazon-s3,hive,azure-storage-blobs,azure-hdinsight,Azure,Amazon S3,Hive,Azure Storage Blobs,Azure Hdinsight,我们在s3和wasb(azureblob)中拥有相当多的存储帐户。 当我外部表时,我为s3提供访问和机密键,如下所示 CREATE EXTERNAL TABLE IF NOT EXISTS Table_S3 ( col1 string, col2 string ) STORED AS ORC LOCATION 's3a://*ACCESS_KEY*:*SECRET_KEY*@bucket_name/direc_n

我们在
s3
wasb(azureblob)
中拥有相当多的存储帐户。 当我
外部表
时,我为s3提供
访问
机密
键,如下所示

CREATE EXTERNAL TABLE IF NOT EXISTS Table_S3
(
col1                      string,
col2                      string
)
STORED AS ORC
LOCATION 's3a://*ACCESS_KEY*:*SECRET_KEY*@bucket_name/direc_name/'
tblproperties ("orc.comlress"="ZLIB");
我如何在一团中实现这一点

CREATE EXTERNAL TABLE IF NOT EXISTS Table_WASB
(
col1                      string,
col2                      string
)
STORED AS ORC
LOCATION 
'wasb://container_name@STORATE_ACCOUNT_NAME.blob.core.windows.net/direc_name/'
tblproperties ("orc.comlress"="ZLIB");
我想在这里用create table语法设置我的存储访问密钥,这样我就可以访问多个存储帐户,而不用在core-site.xml中定义凭据

如果不存在,则创建外部表\u WASB(col1
字符串,col2字符串)存储为ORC位置 'wasb://container_name@STORATE_ACCOUNT_NAME.blob.core.windows.net/direc_NAME/' TBLProperty(“orc.compress”=“ZLIB”)

应该是正确的

您可能需要授予对服务主体的访问权限,以便在该存储上保存数据,或者访问您的存储资源管理器(从portal.azure)>容器>访问权限,并允许用户执行该查询(您的服务主体)

如果您使用hdinsights,您可以与我们共享特定错误