找不到帐户<storage_account_name> .blob.core.windows.net的容器​​<container_name>

时间:2019-09-23 12:43:53

标签: azure hive azure-storage-blobs hdinsight

我正在使用以下命令在hive中创建一个表:

CREATE EXTERNAL TABLE  azure_test_table
(
col1                      string,
col2                      string
)
STORED AS ORC
LOCATION 'wasbs://container_name@storage_account_name.blob.core.windows.net/directory/'
tblproperties ("orc.comlress"="ZLIB");

运行SELECT * FROM azure_test_table limit 1;时出现错误。

  

失败,例外   java.io.IOException:org.apache.hadoop.fs.azure.AzureException:   org.apache.hadoop.fs.azure.AzureException:帐户中的容器myntra   找不到analyticsfe.blob.core.windows.net,我们无法创建它   使用匿名凭证。

我已在hive-site.xml中添加了存储帐户属性,如下所示:

<property>
  <name>fs.azure.account.key.storage_account_name.blob.core.windows.net</name>
  <value>access_key_for_the_account</value>
</property>

我想念什么?你能帮忙吗?

1 个答案:

答案 0 :(得分:0)

您需要通过Ambari修改配置,以在配置单元上创建外部表,该表按以下方式映射到Azure Blob存储:

可以通过以下步骤通过Ambari将存储帐户添加到现有群集中

步骤1:转到Ambari信息中心https://clustername.azurehdinsight.net/

步骤2:导航至HDFS->配置->高级,向下滚动至“自定义”核心站点

enter image description here

第3步:选择添加属性,然后按照以下方式输入您的存储帐户名称和密钥

HDFS >>自定义核心站点

Key => fs.azure.account.key。(storage_account).blob.core.windows.net

值=>(存储访问密钥)

enter image description here

步骤4::导航到HIVE =>配置=>高级,向下滚动到“自定义hive-env”

enter image description here

第5步:选择添加媒体资源,然后按照以下方式输入您的存储帐户名称和密钥

配置单元 = >> 自定义配置单元环境

键=> AZURE_STORAGE_ACCOUNT

值=>(存储帐户名称)

键=> AZURE_STORAGE_KEY

值=>(存储访问密钥)

enter image description here

步骤6 :从Ambari重新启动服务

enter image description here

希望这会有所帮助。