Invoke-AzureRmHDInsightHiveJob
將Hive查詢提交至 HDInsight 叢集,並在一個作業中擷取查詢結果。
警告
自 2024 年 2 月 29 日起,AzureRM PowerShell 模組已正式淘汰。 建議使用者從 AzureRM 遷移至 Az PowerShell 模組,以確保持續支援和更新。
雖然 AzureRM 模組可能仍可運作,但不再維護或支援它,但會根據用戶的判斷權和風險放置任何繼續使用。 如需轉換至 Az 模組的指引,請參閱我們的 移轉資源 。
語法
Invoke-AzureRmHDInsightHiveJob
[-Arguments <String[]>]
[-Files <String[]>]
[-StatusFolder <String>]
[-Defines <Hashtable>]
[-File <String>]
[-JobName <String>]
[-Query <String>]
[-RunAsFileJob]
[-DefaultContainer <String>]
[-DefaultStorageAccountName <String>]
[-DefaultStorageAccountKey <String>]
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
Description
Invoke-AzureRmHDInsightHiveJob Cmdlet 會將 Hive 查詢提交至 Azure HDInsight 叢集,並在一項作業中擷取查詢結果。 在呼叫 Invoke-AzureRmHDInsightHiveJob 之前,請先使用 Use-AzureRmHDInsightCluster Cmdlet 來指定將用於查詢的叢集。
範例
範例 1:將 Hive 查詢提交至 Azure HDInsight 叢集
PS C:\># Primary storage account info
PS C:\> $storageAccountResourceGroupName = "Group"
PS C:\> $storageAccountName = "yourstorageacct001"
PS C:\> $storageAccountKey = (Get-AzureRmStorageAccountKey -ResourceGroupName $storageAccountResourceGroupName -Name $storageAccountName)[0].value
PS C:\> $storageContainer = "container001"
# Cluster info
PS C:\> $clusterName = "your-hadoop-001"
PS C:\> $clusterCreds = Get-Credential
# Hive job details
PS C:\> $statusFolder = "tempStatusFolder/"
PS C:\> $query = "SHOW TABLES"
PS C:\> Use-AzureRmHDInsightCluster `
-ClusterCredential $clusterCreds `
-ClusterName $clusterName
PS C:\> Invoke-AzureRmHDInsightHiveJob -StatusFolder $statusFolder `
-Query $query `
-DefaultContainer $storageAccountContainer `
-DefaultStorageAccountName "$storageAccountName.blob.core.windows.net" `
-DefaultStorageAccountKey $storageAccountKey
此命令會將查詢 SHOW TABLES 提交至名為 your-hadoop-001 的叢集。
參數
-Arguments
指定作業的自變數陣列。 自變數會以命令行自變數的形式傳遞至每個工作。
類型: | String[] |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-DefaultContainer
指定 HDInsight 叢集使用的預設 Azure 儲存體 帳戶中預設容器的名稱。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-DefaultProfile
用於與 azure 通訊的認證、帳戶、租用戶和訂用帳戶
類型: | IAzureContextContainer |
別名: | AzureRmContext, AzureCredential |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-DefaultStorageAccountKey
指定 HDInsight 叢集使用之預設記憶體帳戶的帳戶密鑰。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-DefaultStorageAccountName
指定 HDInsight 叢集使用的預設記憶體帳戶名稱。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Defines
指定要在作業執行時設定的Hadoop組態值。
類型: | Hashtable |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-File
指定要執行之查詢之 Azure 儲存體 檔案的路徑。 您可以使用此參數, 而不是 Query 參數。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Files
指定Hive作業所需的檔案集合。
類型: | String[] |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-JobName
指定Hive作業的名稱。 如果您未指定此參數,此 Cmdlet 會使用預設值:「Hive: <Query> 的前 100 個字元」。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Query
指定Hive查詢。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-RunAsFileJob
指出此 Cmdlet 會在用來儲存查詢的預設 Azure 記憶體帳戶中建立檔案。 此 Cmdlet 會提交作業,此作業會將此檔案參考為要執行的腳本。 您可以使用這項功能來處理特殊字元,例如透過Templeton提交作業失敗的百分比符號 * ,因為Templeton會將具有百分比符號的查詢解譯為URL參數。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-StatusFolder
指定資料夾的位置,其中包含作業的標準輸出和錯誤輸出。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
輸入
None