2015-12-10 71 views
0

我想使用Azure表存儲作爲運行在HDInsight上的Hadoop應用程序的數據源。我只發現了MSFT的this library,但沒有足夠的文檔。我有幾個關於從Azure表中採購的問題:從HDInsight中的Azure表存儲中讀取數據

1)數據塊是如何形成的?讓我們可以將記錄從一個分區傳送給每個映射器嗎?如果是,如果分區包含大量記錄會發生什麼?如果不是,那是如何工作的?

2)Hadoop應用程序是否也可以輸出到Azure表?

3)Hadoop作業可以從兩個(或更多)Azure表中獲取源數據嗎?如果是這樣,如何在映射器中區分它們?例如當從多個文件採集數據時,我們可以根據輸入文件名來區分記錄。

+0

如果您使用的是HDInsight,那麼您可能正在使用Java進行編碼,這意味着您需要查看Azure存儲[Java客戶端](https://github.com/Azure/azure-storage-java)。有關使用Azure存儲表的最佳做法,請查看此最佳做法[指南](https://azure.microsoft.com/en-us/documentation/articles/storage-table-design-guide/)。 –

+0

謝謝,但我主要關心在HDInsight中獲取數據。 Azure存儲Java客戶端將成爲底層。我需要一個層。 –

回答

0

本博客文章的文件會有一點擔心,解答了您關於映射器的問題: http://blogs.msdn.com/b/mostlytrue/archive/2014/04/04/analyzing-azure-table-storage-data-with-hdinsight.aspx

據我所知,使用這個庫,你不能插入到Azure的表存儲。

我相信你可以通過創建兩個外部表格並將它們連接到Hive中從兩個表中讀取。

+0

我已經閱讀過這篇博文,但篇幅很短,並沒有說明細節。 –

+0

如何更改azure-tables-hadoop庫,使映射程序獲取屬於多個分區鍵的實體?默認行爲是每個映射器都有一個分區鍵的實體。 –

+0

@ H.Z。幸運的是它是開源的代碼,所以你可以改變它,但你覺得合適。 – GregGalloway

相關問題