來源:互聯網
上載者:User
關鍵字
Azure
HDInsight
Azure
Windows AzureHDInsight 提供了運行 Apache Hadoop的動態供應群集來處理大資料(Big Data)的能力。 您可以在這個系列的第一篇博客中找到更多資訊,您也可以點擊這裡開始在Windows Azure 入口網站中使用它。 這篇文章列舉了開發人員與HDInsight交互的幾種不同方法,首先通過討論不同的場景,然後深入討論 HDInsight 中各種不同的功能。 因為我們的產品是建立在 Apache Hadoop 之上,所以開發人員可以利用一個有廣泛且豐富的工具和功能的生態系統。
說起場景, 就我們合作過的客戶而言,有兩個截然不同的情形,創建,使用工具來處理大資料的工作,以及在應用程式中整合HDInsight,將工作的輸入和輸出整合為一個較大的應用程式架構的一部分。 HDInsight 的一個關鍵設計是集成了 Windows Azure Blob Storage作為預設的檔案系統。 這意味著您可以使用現有的和工具和API's訪問 blob 存儲中的資料。 該文章更詳細地解釋了我們如何利用Blob Storage。
就創建工作這一點而言,有大量的工具可用。 深層次說,它有一套作為現有Hadoop 生態系統的一部分的工具,以及一組我們建立的專案説明.NET 開發人員開始學習Hadoop,同時我們已經開始了新的專案説明開發人員利用 JavaScript 與 Hadoop交互。
創建工作
現有的 Hadoop 工具
HDInsight 是通過 Hortonworks Data Platform來使用 Apache Hadoop,對於Hadoop 的生態系統有很高的逼真度。 因此,許多功能都和原來的完全一樣。 這意味著你在下面列出的任何工具的投資和知識都在 HDInsight 中可用。 分散式處理群集由下面的Apache 專案創建:
Map/Reduce 在Hadoop上,Map/Reduce是分散式處理的基礎。 為了編寫工作, 程式師可以使用JAVA, 或者通過Hadoop Streaming使用其他語言和運行時. Hive Hive使用一種類似于 SQL 的語法來表達編譯一組被編譯成Map/Reduce程式的查詢。 Hive支援SQL中的許多結構(聚合、 分組、 過濾等),並輕鬆地在您的群集中的各節點並行化這些查詢。 Pig Pig是一種資料流程語言,使用一種叫做Pig Latin的語言編譯成一系列的Map/Reduce程式。 Oozie Oozie 是一種工作流調度程式, 用來管理行動的有向無循環圖表,其中的行動可以是Map/Reduce, Pig, Hive或其他工作。 詳細資訊請點擊這裡參閱快速入門手冊.
您可以在這裡找到 Hadoop 元件更新清單。 下表表示為當前預覽版中各元件的版本:
Apache Hadoop
1.0.3
Apache Hive
0.9.0
Apache Pig
0.9.3
Apache Sqoop
1.4.2
Apache Oozie
3.2.0
Apache HCatalog
0.4.1
Apache Templeton
0.1.4
此外,Hadoop 空間的其他專案, 例如Mahout(參見示例) 或Cascading, 也可以方便地用在 HDInsight之上。 有關這些主題我們將在今後另外寫文章介紹。
. NET工具
我們正努力開發一組工具讓開發人員能利用他們的. NET技能和投資來使用 Hadoop。 這些專案放在CodePlex上,你可以從NuGet上下載這個工具組創建運行在HDInsight上的工作。 有關這些介紹請參閱CodePlex 網站上的快速入門。
.NET Map/Reduce LINQ to Hive