匯出資料

重要

Machine Learning 工作室 (傳統) 的支援將於 2024 年 8 月 31 日結束。 建議您在該日期之前轉換成 Azure Machine Learning

自 2021 年 12 月 1 日起,您將無法建立新的 Machine Learning 工作室 (傳統) 資源。 在 2024 年 8 月 31 日之前,您可以繼續使用現有的 Machine Learning 工作室 (傳統) 資源。

ML 工作室 (傳統) 文件即將淘汰,未來將不再更新。

將資料集寫入 Azure 中各種形式的雲端式儲存體,例如資料表、blob 和 Azure SQL 資料庫

類別: 資料輸入和輸出

注意

適用于僅限機器學習 Studio (傳統)

Azure Machine Learning 設計工具中提供類似的拖放模組。

模組概觀

本文說明如何使用機器學習 Studio (傳統) 中的「匯出資料」模組,將實驗中的結果、中繼資料和工作資料儲存到機器學習 Studio (傳統) 以外的雲端儲存體目的地。

此模組支援將您的資料匯出或儲存至下列雲端資料服務:

  • 匯出至 Hive 查詢:將資料寫入至 HDInsight Hadoop 叢集中的 hive 資料表。

  • 匯出至 Azure SQL Database:將資料儲存至 Azure SQL Database 或 Azure SQL Data Warehouse。

  • 匯出至 Azure 資料表:將資料儲存至 azure 中的資料表儲存體服務。 資料表儲存體適合用來儲存大量資料。 它提供可擴充、便宜且高度可用的表格格式。

  • 匯出至 Azure Blob 儲存體:將資料儲存至 Azure 中的 Blob 服務。 此選項適用於影像、非結構化文字或二進位資料。 Blob 服務中的資料可以公開共用,或儲存在安全的應用程式資料存放區中。

注意

如果啟用 [需要安全傳輸] 選項,[匯出資料] 模組不支援連接至 Azure Blob 儲存體帳戶。

  • 下載資料:若要下載您的資料,讓您可以在 Excel 或另一個應用程式中開啟它,請使用像是轉換為 CSV轉換為 TSV的模組,以特定格式準備資料,然後下載資料。

  • 您可以用滑鼠右鍵按一下輸出,然後選取 [ 下載資料集],以下載輸出資料集之任何模組的結果。 依預設,資料會以 CSV 格式匯出。

  • 下載模組定義或實驗圖: 新的 PowerShell 程式庫可讓您下載實驗的完整中繼資料,或特定模組的詳細資料。 機器學習程式庫的 PowerShell 是實驗性版本,但有許多實用的 Cmdlet:

    • Get-AmlExperiment 列出工作區中的所有實驗。
    • Export-AmlExperimentGraph 將完整實驗的定義匯出至 JSON 檔案。
    • Download-AmlExperimentNodeOutput 可讓您解壓縮任何模組的輸出埠上提供的資訊。

如何設定匯出資料

  1. 在 Studio (傳統) 中,將「 匯出資料 」模組新增至您的實驗。 您可以在 [ 輸入] 和 [輸出 ] 分類中找到此模組。

  2. 連線將資料匯出至包含您要匯出之資料的模組。

  3. 按兩下 [ 匯出資料 ] 以開啟 [ 屬性 ] 窗格。

  4. 針對 [ 資料目的地],選取您要儲存資料的雲端儲存體類型。 如果您對此選項進行任何變更,則會重設所有其他屬性。 因此,請務必先選擇這個選項!

  5. 提供存取指定的儲存體帳戶所需的帳戶名稱和驗證方法。

    根據儲存體類型以及帳戶是否受到保護,您可能需要提供帳戶名稱、檔案類型、存取金鑰或容器名稱。 針對不需要驗證的來源,通常就足以知道 URL。

    如需每種類型的範例,請參閱下列主題:

  6. 使用快取 結果的選項可讓您重複實驗,而不需要每次重寫相同的結果。

    如果您取消選取此選項,就會在每次執行實驗時,將結果寫入儲存體,不論輸出資料是否已變更。

    如果您選取此選項,則 匯出資料 會使用快取的資料(如果有的話)。 只有在有會影響結果的上游變更時,才會產生新的結果。

  7. 執行實驗。

範例

如需如何使用「 匯出資料 」模組的範例,請參閱 Azure AI 資源庫

  • 文字分類:此範例會使用 匯出資料 來儲存中繼結果,然後使用匯 入資料 從儲存體取得這些結果,以供實驗中的後續步驟使用。

  • 零售預測步驟1之 6-資料前置處理:零售預測範本會根據儲存在 Azure SQL Database 中的資料來說明機器學習工作。 它會示範幾個實用的技巧,例如如何建立機器學習的 Azure SQL 資料庫、使用 Azure SQL 資料庫在不同帳戶的實驗之間傳遞資料集、儲存和合併預測。

  • 使用 azure vm 上的 SQL Server 來建立和部署機器學習模型:本文將示範如何使用 azure vm 中裝載的 SQL Server 資料庫,作為儲存定型資料和實驗所產生之預測的來源。 它也會說明如何使用關係資料庫來進行特徵工程和特徵選取。

  • 如何搭配使用 Azure ML 與 Azure SQL Data Warehouse:本文說明如何使用 Azure SQL Data Warehouse 中的資料來建立機器學習模型。

技術說明

本節包含實作詳細資料、提示和常見問題集的解答。

實作詳細資料

  • 此模組先前命名為 Writer。 如果您有使用 寫入器 模組的現有實驗,當您重新整理實驗時,模組會重新命名為 匯出資料

  • 並非所有模組都會產生與 匯出資料 目的地相容的輸出。 例如, 匯出資料 無法儲存已轉換成 SVMLight 格式的資料集。 匯出資料 支援下列格式:

    • (Azure ML 內部格式的資料集)
    • .NET DataTable
    • 具有或不含標頭的 CSV
    • TSV (含或不含標頭)

已知問題

  • 當您選取 Azure 資料表作為輸出資料的位置時,有時可能會在寫入指定的資料表時發生錯誤。 發生這種情況時,資料可能會改寫入 blob。

    如果發生此錯誤,而且您稍後無法從預期的資料表讀取,請嘗試使用 Azure 儲存體公用程式來檢查儲存體帳戶中指定容器內的 blob。

  • 目前,您無法將 blob 儲存至指定的 Hive 資料表。 如果您需要寫入中繼結果,請避免使用 HDInsight 中的 Hive 資料表,並改為使用 blob 儲存體或資料表儲存體。

  • 目前,如果您選取 HDFS 做為儲存輸出資料的位置,則會傳回此錯誤訊息: "ErrorMapping + ModuleException"。

預期的輸入

名稱 類型 說明
資料集 資料表 要寫入的資料集。

模組參數

下表列出適用于所有 匯出資料 選項的參數。 其他參數則為動態,而且會根據您選取的資料目的地而變更。

名稱 範圍 類型 預設 描述
請指定資料目的地 List DataSourceOrSink Azure 儲存體中的 Blob 服務 指出資料目的地是否為Blob 服務中的檔案、資料表服務中的檔案、Azure 中的SQL 資料庫Hive 資料表
使用快取的結果 TRUE/FALSE Boolean FALSE 選取此選項以避免不必要地重寫結果。 如果實驗中有任何變更,則 匯出資料 一律會執行並寫入新的結果。 但是,如果沒有任何變更,而且您已選取此選項,則 匯出資料 將不會執行,以避免重寫相同的結果。

例外狀況

例外狀況 描述
錯誤 0057 當您嘗試建立的檔案或 Blob 已存在時,就會發生例外狀況。
錯誤 0001 如果找不到資料集的一或多個指定的資料行,就會發生例外狀況。
錯誤 0027 當兩個物件必須具有相同的大小,但實際上它們的大小並不相同時,就會發生例外狀況。
錯誤 0079 如果 Azure 儲存體中的容器名稱指定不正確,就會發生例外狀況。
錯誤 0052 如果 Azure 帳戶的儲存體存取金鑰指定不正確,就會發生例外狀況。
錯誤 0064 如果 Azure 帳戶的帳戶名稱或儲存體存取金鑰指定不正確,就會發生例外狀況。
錯誤 0071 如果提供的認證不正確,就會發生例外狀況。
錯誤 0018 如果無效的輸入資料集,就會發生例外狀況。
錯誤 0029 傳遞無效的 URI 時,就會發生例外狀況。
錯誤 0003 如果一或多個輸入是 Null 或空白,就會發生例外狀況。

如需 Studio (傳統) 模組特定的錯誤清單,請參閱機器學習錯誤碼

如需 API 例外狀況的清單,請參閱機器學習 REST API 錯誤碼

另請參閱

匯入資料
資料輸入和輸出
資料轉換
比較 Azure 資料表儲存體與 Azure SQL Database
A-Z 模組清單