在本快速入門中,您會使用 Azure 入口網站在 Azure HDInsight 中建立 Apache Spark 叢集。 然後,您可以建立 Jupyter Notebook,並使用它來針對 Apache Hive 資料表執行 Spark SQL 查詢。 Azure HDInsight 是企業受控、全方位、開放原始碼的分析服務。 適用於 HDInsight 的 Apache Spark 架構能夠運用記憶體內部處理,使得資料分析及叢集運算更為快速。 Jupyter Notebook 可讓您與資料互動、將程式碼與 Markdown 文字結合,以及執行簡單的視覺效果。
如需可用設定的深入說明,請參閱在 HDInsight 中設定叢集。 如需使用入口網站建立叢集的詳細資訊,請參閱在 入口網站中建立叢集。
如果您同時使用多個叢集,您可能想要建立虛擬網路;如果您使用 Spark 叢集,可能也想要使用 Hive 倉儲連接器。 如需詳細資訊,請參閱針對 Azure HDInsight 規劃虛擬網路和整合 Apache Spark 和 Apache Hive 與 Hive Warehouse Connector。
這很重要
HDInsight 叢集的計費會按分鐘比例分配,無論您是否使用它們。 請務必在使用完叢集之後將其刪除。 如需詳細資訊,請參閱本文的 清除資源 一節。
先決條件
具有有效訂閱的 Azure 帳戶。 免費建立帳戶。
在 HDInsight 中建立 Apache Spark 叢集
您可以使用 Azure 入口網站 來建立使用 Azure 儲存體 Blob 作為叢集儲存體的 HDInsight 叢集。 如需使用 Data Lake Storage Gen2 的詳細資訊,請參閱 快速入門:在 HDInsight 中設定叢集。
登入 Azure 入口網站。
在頂端功能表中,選取 [+ 建立資源]。
選取 [ 分析>Azure HDInsight ] 以移至 [ 建立 HDInsight 叢集 ] 頁面。
從 基本 索引標籤中,提供下列資訊:
房產 Description Subscription 從下拉式清單中,選取用於叢集的 Azure 訂用帳戶。 資源群組 從下拉式清單中選取現有資源群組,或選取 [新建]。 叢集名稱 輸入全域唯一名稱。 區域 從下拉式清單中,選取建立叢集的區域。 可用性區域 選用 - 指定要部署叢集的可用區域 叢集類型 選取叢集類型以開啟清單。 從清單中,選取 [Spark]。 叢集版本 一旦選取叢集類型,此欄位就會自動填入預設版本。 叢集登入使用者名稱 輸入叢集登入使用者名稱。 預設名稱為 admin。您可以在快速入門稍後使用此帳戶登入 Jupyter Notebook。 叢集登入密碼 輸入叢集登入密碼。 安全殼層 (SSH) 使用者名稱 輸入 SSH 使用者名稱。 用於本快速入門的 SSH 使用者名稱是 sshuser。 依預設,此帳戶與 叢集登入使用者名稱 帳戶共用相同的密碼。
選取 [下一步:儲存體>>] 以繼續前往 [儲存體] 頁面。
在 [儲存體] 下方,提供下列值:
房產 Description 主要儲存體類型 使用預設值 Azure 儲存體。 選取方法 使用預設值 Select from list。 主要儲存體帳戶 使用自動填入的值。 容器 使用自動填入的值。
選取 [檢閱 + 建立] 繼續執行。
在 [檢閱 + 建立] 底下,選取 [建立]。 大約需要 20 分鐘的時間來建立叢集。 您必須先建立叢集,才能繼續前往下一個工作階段。
如果您在建立 HDInsight 叢集時遇到問題,可能是您沒有適當的權限來執行此動作。 如需詳細資訊,請參閱 存取控制需求。
建立 Jupyter Notebook
Jupyter Notebook 是一個支援各種程式語言的互動式筆記本環境。 筆記本可讓您與資料互動、將程式碼與 Markdown 文字結合,以及執行簡單的視覺化。
從 Web 瀏覽器中,導覽至
https://CLUSTERNAME.azurehdinsight.net/jupyter,其中CLUSTERNAME是叢集的名稱。 如果出現提示,請輸入叢集的叢集登入認證資料。選取 [ 新增>PySpark] 以建立筆記本。
系統會建立並開啟一個名為 Untitled(Untitled.pynb) 的新筆記本。
執行 Apache Spark SQL 陳述式
SQL(結構化查詢語言)是最常見和廣泛使用的查詢和定義資料的語言。 Spark SQL 可作為 Apache Spark 的延伸模組,使用熟悉的 SQL 語法來處理結構化資料。
確認核心已準備就緒。 當您在筆記本中看到核心名稱旁邊有一個空心圓圈時,核心就準備就緒。 實心圓表明核心忙碌。
當您第一次啟動筆記本時,核心會在背景執行一些工作。 等待核心準備就緒。
將下列程式碼貼到空白儲存格中,然後按 SHIFT + ENTER 來執行程式碼。 此命令會列出叢集上的 Hive 資料表:
%%sql SHOW TABLES當您搭配 HDInsight 叢集使用 Jupyter Notebook 時,您會取得預設集
sqlContext,可用來使用 Spark SQL 執行 Hive 查詢。%%sql告訴 Jupyter Notebook 使用預設集sqlContext來執行 Hive 查詢。 查詢會從預設隨附所有 HDInsight 叢集的 Hive 資料表 (hivesampletable) 擷取前 10 個資料列。 大約需要 30 秒才能得到結果。 輸出看起來如下:
是快速入門。" border="true":::每次您在 Jupyter 中執行查詢時,您的網頁瀏覽器視窗標題都會顯示 (忙碌) 狀態以及筆記本標題。 您還會在右上角的 PySpark 文字旁邊看到一個實心圓圈。
執行另一個查詢以查看
hivesampletable中的資料。%%sql SELECT * FROM hivesampletable LIMIT 10畫面應重新整理以顯示查詢輸出。
深入解析" border="true":::從筆記本上的 [檔案 ] 功能表中,選取 [關閉並停止]。 關閉筆記本會釋放叢集資源。
清理資源
HDInsight 會將您的資料儲存在 Azure 儲存體或 Azure Data Lake 儲存體中,因此您可以在叢集未使用時安全地刪除叢集。 您也需支付 HDInsight 叢集的費用 (即使未使用該叢集)。 由於叢集費用是儲存體費用的許多倍,所以刪除未使用的叢集符合經濟效益。 如果您打算立即處理 後續步驟 中列出的教學課程,您可能想要保留叢集。
切換回 Azure 入口網站,然後選取 [刪除]。
視覺叢集“ border=”true“:::
您也可以選取資源群組名稱以開啟資源群組頁面,然後選取刪除資源群組。 藉由刪除資源群組,您會同時刪除 HDInsight 叢集和預設儲存體帳戶。
後續步驟
在本快速入門中,您已瞭解如何在 HDInsight 中建立 Apache Spark 叢集,並執行基本的 Spark SQL 查詢。 前往下一個教學課程,以了解如何使用 HDInsight 叢集來執行範例資料的互動式查詢。