我们在s3
中有很多存储帐户,现在在wasb (azure blob)
中。
当我如下所述access
时,我为s3提供了secret
和EXTERNAL TABLE
键。
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");
我如何在Blob中实现这一目标?
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中定义凭据
答案 0 :(得分:0)
如果不存在Table_WASB,则创建外部表(col1
字符串,col2字符串)存储为ORC位置 'wasb://container_name@STORATE_ACCOUNT_NAME.blob.core.windows.net/direc_name/' tblproperties(“ orc.compress ” =“ ZLIB”);
应该正确。
可能您需要授予对服务主体的访问权限,以将数据保存在该存储上或访问存储资源管理器(来自portal.azure)>容器>访问权限,并允许用户执行该查询(您的服务主体)。 / p>
如果您使用hdinsights,则可以与我们分享特定的错误。