在Azure Data Factory 或 Synapse Analytics中使用Hadoop Hive活動轉換數據

適用於: Azure Data Factory Azure Synapse Analytics

提示

關於 Microsoft Fabric 中 Data Factory 中的等效活動,請參閱 Azure HDInsight activity。

Azure Data Factory 或 Synapse Analytics 管線中的 HDInsight Hive 活動,會在您自己的或隨選 HDInsight 叢集上執行 Hive 查詢。 本文是以資料轉換活動一文為基礎,該文提供了資料轉換和系統支援的轉換活動的一般概覽。

如果你是Azure Data Factory和 Synapse Analytics 的新手,請先閱讀 Azure Data Factory 或 Synapse Analytics 的介紹文章,並先做 Tutorial: transform data再閱讀本文。

使用 UI 將 HDInsight Hive 活動新增至管線

若要在流水線中使用 Azure Data Lake Analytics 的 HDInsight Hive 活動,請完成以下步驟:

  1. 在管線活動窗格中搜尋 Hive,然後將 Hive 活動拖曳到管線畫布上。

  2. 如果尚未選取畫布上的新 Hive 活動,請選取它。

  3. 選取 [HDI 叢集] 索引標籤,即可選取或建立 HDInsight 叢集的新連結服務,該叢集會用來執行 Hive 活動。

    顯示 Hive 活動的用戶介面。

  4. 選取 [指令碼] 索引標籤,以選擇或建立新的儲存連結服務,並在儲存位置中指定用於存放指令碼的路徑。

    顯示 Hive 活動中 [腳本] 索引標籤的 UI。

語法

{
    "name": "Hive Activity",
    "description": "description",
    "type": "HDInsightHive",
    "linkedServiceName": {
        "referenceName": "MyHDInsightLinkedService",
        "type": "LinkedServiceReference"
    },
    "typeProperties": {
        "scriptLinkedService": {
            "referenceName": "MyAzureStorageLinkedService",
            "type": "LinkedServiceReference"
        },
        "scriptPath": "MyAzureStorage\\HiveScripts\\MyHiveScript.hql",
        "getDebugInfo": "Failure",
        "arguments": [
            "SampleHadoopJobArgument1"
        ],
        "defines": {
            "param1": "param1Value"
        }
    }
}

語法詳細資料

屬性 描述 必要
名稱 活動的名稱 Yes
說明 說明活動用途的文字 No
型別 在 Hive 活動中,活動類型為 HDinsightHive。 Yes
linkedServiceName 註冊為連結服務的 HDInsight 叢集參考。 若要深入了解此已連結的服務,請參閱計算已連結的服務一文。 Yes
scriptLinkedService 參考用於儲存待執行 Hive 腳本的 Azure 儲存體 Linked Service。 此處僅支援 Azure Blob 儲存體 及 ADLS Gen2 連接的服務。 如果您未指定此連結服務,則使用 HDInsight 連結服務中定義的 Azure 儲存體 Linked Service。 No
scriptPath 提供 scriptLinkedService 所引用的 Azure 儲存體 中腳本檔案的路徑。 檔案名稱有區分大小寫。 Yes
getDebugInfo 指定何時將日誌檔案複製到 HDInsight 叢集所使用的 Azure 儲存體(或由 scriptLinkedService 指定)。 允許的值:無、總是或失敗。 預設值:無。 No
引數 指定 Hadoop 作業的引數陣列。 引數會以命令列引數的方式傳遞給每項工作。 No
定義 指定參數作為機碼/值組,以供在 Hive 指令碼內參考。 No
queryTimeout 查詢逾時值 (單位為分鐘)。 適用於已啟用企業安全性套件的 HDInsight 叢集。 No

注意

queryTimeout 的預設值為 120 分鐘。

請參閱下列文章,其說明如何以其他方式轉換資料: