如何在hadoop中读取azure blob存储?

carvr3hs  于 2021-05-30  发布在  Hadoop
关注(0)|答案(1)|浏览(469)

我有一个map reduce作业,reducer获取驻留在azure blob存储上的文件的绝对地址,reducer应该打开它并读取其内容。在配置hadoop集群(hdinsight)时,我添加了包含这些文件的存储帐户。所以reducer必须能够访问这个blob存储,但是blob存储不是我的作业的默认hdfs存储。我的reducer中有以下代码,但它给了我一个filenotfound错误消息。

FileSystem fs = FileSystem.get(new Configuration());
Path pt = new Path("wasb://mycontainer@accountname..."); 
FSDataInputStream stream = fs.open(pt);
mccptt67

mccptt671#

上面覆盖着https://azure.microsoft.com/en-us/documentation/articles/hdinsight-hadoop-use-blob-storage/#addressing
语法是wasb://mycontainer@myaccount.blob.core.windows.net/example/jars/hadoop-mapreduce-examples.jar
如果“mycontainer”是专用容器,则必须在调配过程中将“myaccount”azure存储帐户添加为附加存储帐户。

相关问题