我刚刚开始使用HDInsight。我有一些文件存储在Azure存储中,我想复制到HDFS中。我正在尝试使用fs -copyFromLocal。当我从C驱动器复制时,当我尝试使用wasb路径从blob存储复制到blob容器时,它工作正常,我得到了错误的FS错误。我怀疑从本地复制是错误的工具。如何从容器复制到HDFS。
最佳答案
将文件从Azure存储复制到HDInsight中的HDFS可能不是一个好主意。原因是HDInsight群集上HDFS中的所有内容都存储在组成该群集的 transient 实例上,并且实质上是临时存储。
您可能想要做的是将包含文件的存储帐户添加到HDInsight群集,这将使文件作为wasb://空间的一部分可供Hadoop访问。
您可以将存储帐户与想要在创建集群时访问的文件一起添加,或者与http://blogs.msdn.com/b/cindygross/archive/2013/04/25/access-azure-blob-stores-from-hdinsight.aspx中描述的过程一起添加。您也可以使用
azure hdinsight cluster config storage add
或等效的PowerShell:
Add-AzureHDInsightStorage
仅当您在运行命令的计算机上有文件时,copyFromLocal命令才有效,因此您当然可以将Azure文件下载到该本地磁盘,但是,为什么要移动数据,当您可以将计算群集链接到该本地磁盘时与以上?
关于azure - 从Blob复制本地hdinsight,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20033698/