什麼是 Azure HDInsight?

Azure HDInsight 是雲端中供企業使用的受控、全方位的開放原始碼分析服務。 透過 HDInsight,您可以在 Azure 環境中使用開放原始碼架構,例如 Apache Spark、Apache Hive、LLAP、Apache Kafka、Hadoop 等。

什麼是 HDInsight 和 Hadoop 技術堆疊?

Azure HDInsight 是受控叢集平臺,可讓您輕鬆地在 Azure 環境中執行巨量數據架構,例如 Apache Spark、Apache Hive、LLAP、Apache Kafka、Apache Hadoop 和其他架構。 其設計目的是要以高速和效率處理大量數據。

為何應該使用 Azure HDInsight?

功能 描述
雲端原生 Azure HDInsight 可讓您在 Azure 上建立 Spark、 互動式查詢(LLAP)、Kafka、HBase 和 Hadoop 的優化叢集。 HDInsight 也提供所有生產工作負載的端對端 SLA。
低成本且可調整 HDInsight 可讓您相應增加或減少工作負載。 您可以視需要建立叢集,並只支付您使用項目的費用,以降低成本。 您也可以建置資料管線來運作您的作業。 分離計算與儲存體,讓效能與彈性變得更好。
安全且符合規範 HDInsight 可讓您使用 Azure 虛擬網絡、加密和與 Microsoft Entra ID 整合來保護企業數據資產。 HDInsight 也符合最受歡迎的產業和政府合規性標準。
監視 Azure HDInsight 會與 Azure 監視器記錄整合,以提供單一介面,讓您能夠監視所有叢集。
整體可用性 HDInsight 可在比任何其他 巨量數據分析 供應專案更多的區域中使用。 Azure HDInsight 也適用於 Azure Government、中國和德國,這可讓您滿足主要主權領域的企業需求。
生產力 Azure HDInsight 可讓您搭配慣用的開發環境使用適用於 Hadoop 和 Spark 的豐富生產力工具。 這些開發環境包括Visual Studio、VS Code、Eclipse和IntelliJ for Scala、Python、Java 和 .NET 支援。
擴充性 您可以使用腳本動作、新增邊緣節點,或與其他巨量數據認證應用程式整合,來擴充已安裝元件的 HDInsight 叢集(Hue、Presto 等)。 HDInsight 透過單鍵部署,與最熱門 的巨量數據 解決方案緊密整合。

什麼是巨量資料?

巨量數據會以不斷提升的速度、速度較高,以及比以往更多樣化的格式收集。 其可以是歷史 (意指已儲存) 或即時 (意指從來源串流) 的。 請參閱 使用 HDInsight 的案例,以瞭解巨量數據最常見的使用案例。

HDInsight 中的叢集類型

HDInsight 包含特定的叢集類型和叢集自定義功能,例如新增元件、公用程式和語言的功能。 HDInsight 提供下列叢集類型:

叢集類型 描述 開始使用
Apache Hadoop \(英文\) 使用 HDFS、YARN 資源管理和簡單的 MapReduce 程式設計模型來處理和分析批次數據的架構。 建立 Apache Hadoop 叢集
Apache Spark 開放原始碼的平行處理架構,可支援記憶體內部處理,以大幅提升巨量資料分析應用程式的效能。 請參閱 什麼是 HDInsight 中的 Apache Spark? 建立 Apache Spark 叢集
Apache HBase 建置於 Hadoop 上的 NoSQL 資料庫,可針對大量非結構化及半結構化資料 (可能是數十億個資料列乘以數百萬個資料行) 提供隨機存取功能和強大的一致性。 請參閱 什麼是 HDInsight 上的 HBase? 建立 Apache HBase 叢集
Apache 互動式查詢 更快速進行互動式 Hive 查詢的記憶體內部快取。 請參閱 在 HDInsight 中使用互動式查詢。 建立互動式查詢叢集
Apache Kafka 開放原始碼平台用於建置串流數據管線和應用程式。 Kafka 也提供訊息佇列功能,可讓您發佈和訂閱資料流。 請參閱 HDInsight 上的 Apache Kafka 簡介。 建立 Apache Kafka 叢集

使用 HDInsight 的案例

Azure HDInsight 可用於巨量數據處理的各種案例。 它可以是歷程記錄數據(已經收集和儲存的數據)或實時數據(直接從來源串流的數據)。 處理這類資料的案例可以摘要說明下列類別:

批次處理 (ETL)

擷取、轉換和載入 (ETL) 是非結構化或結構化數據從異質數據源擷取的程式。 然後它會轉換成結構化格式,並載入至數據存放區。 您可以將轉換的數據用於資料科學或數據倉儲。

資料倉儲

您可以使用 HDInsight 在任何格式的結構化或非結構化數據上,以 PB 為單位執行互動式查詢。 您也可以建置將它們連線到 BI 工具的模型。

HDInsight architecture: Data warehousing.

物聯網 (IoT)

您可以使用 HDInsight 來處理從不同類型裝置即時接收的串流數據。 如需詳細資訊,請閱讀 Azure 的這篇部落格文章, 以宣佈 HDInsight 上的 Apache Kafka 公開預覽與 Azure 受控磁碟

Screenshot of the HDInsight architecture: Internet of Things.

混合式

您可以使用 HDInsight 將現有的內部部署 巨量數據 基礎結構延伸至 Azure,以套用雲端的進階分析功能。

HDInsight architecture: Hybrid.

HDInsight 中的開放原始碼元件

Azure HDInsight 可讓您使用 Spark、Hive、LLAP、Kafka、Hadoop 和 HBase 等開放原始碼架構來建立叢集。 根據預設,這些叢集包含各種開放原始碼元件,例如 Apache Ambari、Avro、Apache Hive 3、HCatalog、Apache Hadoop MapReduce、Apache Hadoop YARN、Apache Phoenix、Apache Pig、Apache Sqoop、Apache Tez、Apache Oozie 和 Apache ZooKeeper。

HDInsight 中的程式設計語言

HDInsight 叢集,包括 Spark、HBase、Kafka、Hadoop 等,都支援許多程式設計語言。 某些程式設計語言預設不會安裝。 針對預設未安裝的連結庫、模組或套件,請使用腳本動作來安裝元件。

程式設計語言 資訊
默認程式設計語言支援 根據預設,HDInsight 叢集支援:
  • Java
  • Python
  • .NET
  • Go
Java 虛擬機 (JVM) 語言 Java 以外的許多語言可以在 Java 虛擬機 (JVM) 上執行。 不過,如果您執行其中一些語言,您可能需要在叢集上安裝更多元件。 HDInsight 叢集支援下列 JVM 型語言:
  • Clojure
  • Jython (適用於 Java 的 Python)
  • Scala
Hadoop 特定語言 HDInsight 叢集支援 Hadoop 技術堆棧特有的下列語言:
  • Pig Latin for Pig jobs
  • Hive 作業和 SparkSQL 的 HiveQL

HDInsight 的開發工具

您可以使用 HDInsight 開發工具,包括 IntelliJ、Eclipse、Visual Studio Code 和 Visual Studio,來撰寫和提交 HDInsight 數據查詢和作業,並與 Azure 緊密整合。

  • 適用於 IntelliJ 10 的 Azure 工具組
  • 適用於 Eclipse 6 的 Azure 工具組
  • 適用於 VS Code 13 的 Azure HDInsight 工具
  • 適用於 Visual Studio 9 的 Azure Data Lake 工具

HDInsight 上的商業智慧

熟悉的商業智慧 (BI) 工具會使用 Power Query 載入宏或 Microsoft Hive ODBC 驅動程式,擷取、分析和報告與 HDInsight 整合的數據:

區域內數據落地

Spark、Hadoop 和 LLAP 不會儲存客戶數據,因此這些服務會自動滿足信任中心中指定的區域數據落地需求。

Kafka 和 HBase 會儲存客戶數據。 此數據會自動由 Kafka 和 HBase 儲存在單一區域中,因此此服務符合信任中心中指定的區域內數據落地需求。

熟悉的商業智慧 (BI) 工具會使用 Power Query 載入宏或 Microsoft Hive ODBC 驅動程式,擷取、分析和報告與 HDInsight 整合的數據。

下一步