如何有效地将大数据从数据中心移动到Azure Blob存储,以便以后通过HDInsight进行处理?

时间:2014-02-21 11:44:39

标签: azure hadoop azure-storage-blobs hdinsight

我需要设置计划任务,目的是将大量数据从本地数据中心复制/移动到Windows Azure Blob存储。

我所研究的选项是WebHDFS和Flume(目前HDInsight似乎不支持后者)。

将非结构化文件从数据中心传输到Windows Azure Blob存储的最有效方法是什么?

5 个答案:

答案 0 :(得分:1)

如果您使用的是HDInsight,则根本不需要涉及HDFS。实际上,您不需要运行集群来上载数据。将数据导入HDInsight的最佳方法是使用标准.NET客户端或Azure Management Studio或AzCopy等第三方将其上载到Azure Blob存储。

如果你想不断地传输数据,那么你可能更好地设置像Flume,Kafka或Storm这样的东西来对抗HDInsight集群,但这需要在集群本身进行一定量的自定义,这意味着你重启会遇到问题,需要永久集群。

答案 1 :(得分:0)

您没有提到您正在谈论的数据量(您刚才说大量)。但是......假设它是TB或PB的100,Azure有Import/Export Service提供磁盘发送。

除此之外,您需要使用自己的代码或使用第三方工具(如Microsoft的AzCopy)将内容传输到blob。请记住,您将能够执行并行上传,以压缩时间(只要数据中心的带宽足够大,您就可以看到好处)。

答案 2 :(得分:0)

您可以使用CloudBerry驱动器和Flume将数据流式传输到HDInsight群集/ Azure Blob存储

http://blogs.msdn.com/b/bigdatasupport/archive/2014/03/18/using-apache-flume-with-hdinsight.aspx

答案 3 :(得分:0)

不,您不能使用水槽直接将数据流式传输到HDInsight。来自微软博客的帖子说

  

绝大多数Flume消费者将他们的流媒体数据放入HDFS - 而HDFS不是HDInsight使用的默认文件系统。即使它是 - 我们不公开面向公共名称节点或HDFS端点,因此Flume代理将有一个可怕的时间到达集群!因此,出于这些原因和其他一些原因,答案通常是“不”。 ......它不会工作或不支持"

来源:http://blogs.msdn.com/b/bigdatasupport/archive/2014/03/18/using-apache-flume-with-hdinsight.aspx?CommentPosted=true#commentmessage

答案 4 :(得分:-2)

还值得一提的是ExpressRoute选项。 Microsoft现在有一个名为ExpressRoute的程序,您的数据中心可以与您的ISP合作,通过更快的连接直接连接到Azure。另请参阅http://azure.microsoft.com/en-us/services/expressroute/