我们有相当多的存储帐户 s3
现在在 wasb (azure blob)
. 我提供 access
以及 secret
s3的钥匙 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中定义凭据
1条答案
按热度按时间x7rlezfr1#
如果表不存在,则创建外部表\u wasb(col1
字符串,col2字符串)存储为orc位置'wasb://container_name@storate_account_name.blob.core.windows.net/direc_name/'tblproperty(“orc.compress”=“zlib”);
应该是正确的。
您可能需要授予对服务主体的访问权以保存该存储上的数据,或者访问存储资源管理器(从portal.azure)>容器>访问并允许用户执行该查询(您的服务主体)。
如果您使用hdinsights,您可以与我们共享特定错误。