Share via


匯出至 Azure Blob 儲存體

重要

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

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

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

本文說明如何在機器學習 Studio (傳統) 的「匯出資料」模組中使用 [匯出至 Azure Blob 儲存體] 選項。

注意

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

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

當您想要將資料從機器學習實驗匯出至 Azure Blob 儲存體時,此選項非常有用。 例如,您可能想要與其他應用程式共用機器學習資料輸出,或是儲存中繼資料或已清除的資料集,以供其他實驗使用。

您可以使用 HTTP 或 HTTPS 從任何地方存取 Azure blob。 由於 Azure Blob 儲存體是非結構化資料存放區,因此您可以使用各種格式來匯出資料。 目前支援 CSV、TSV 和 ARFF 格式。

若要將資料匯出至 Azure blob 以供其他應用程式使用,您可以使用「匯出資料」模組將資料儲存至 Azure Blob 儲存體。 然後,使用任何可讀取 Azure 儲存體 (資料的工具,例如 Excel、雲端儲存體公用程式或其他雲端服務) ,以載入和使用資料。

注意

「匯 入資料 」和「 匯出資料 」模組只能從使用傳統部署模型建立的 Azure 儲存體讀取和寫入資料。 換句話說,尚未支援提供經常性存取和非經常性儲存體存取層的新 Azure Blob 儲存體帳戶類型。

一般而言,任何您可能已在這個服務選項變成可供使用之前建立的 Azure 儲存體帳戶應該不會受到影響。

但是,如果您需要建立新的帳戶以搭配機器學習使用,建議您針對部署模型選取 [傳統],或使用 [ Resource manager ],並針對 [帳戶類型] 選取[一般用途],而非 [ Blob 儲存體]。

如何將資料匯出至 Azure Blob 儲存體

Azure blob 服務用於儲存大量資料,包括二進位資料。 有兩種類型的 blob 儲存體:公用 blob 以及需要登入認證的 blob。

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

  2. 連線將資料匯出至模組,以產生您要匯出至 Azure Blob 儲存體的資料。

  3. 開啟 [匯出資料] 的 [屬性] 窗格。 在 [資料目的地] 中,選取 [ Azure Blob 儲存體]。

  4. 針對 [ 驗證類型],如果您知道儲存體支援透過 SAS url 存取,請選擇 [ 公用 (SAS URL])

    SAS URL 是一種特殊類型的 URL,您可以使用 Azure 儲存體公用程式來產生此類型的 URL,且僅限時間內提供使用。 它包含驗證和下載所需的所有資訊。

    針對 [ uri],輸入或貼上定義帳戶和公用 blob 的完整 URI。

  5. 若為私人帳戶,請選擇 [ 帳戶],並提供帳戶名稱和帳戶金鑰,讓實驗可以寫入儲存體帳戶。

    • 帳戶名稱:輸入或貼上您要儲存資料的帳戶名稱。 例如,如果儲存體帳戶的完整 URL 是 https://myshared.blob.core.windows.net ,您會輸入 myshared

    • 帳戶金鑰:貼上與帳戶相關聯的儲存體存取金鑰。

  6. 容器、目錄或 blob 的路徑:輸入將儲存匯出資料的 blob 名稱。 例如,若要將實驗的結果儲存到名為mymldata之帳戶的容器預測中名為results01.csv的新 blob,blob 的完整 URL 就是 https://mymldata.blob.core.windows.net/predictions/results01.csv

    因此,在 容器、目錄或 blob的欄位路徑中,您會指定容器和 blob 名稱,如下所示: predictions/results01.csv

  7. 如果您指定的 blob 名稱不存在,Azure 會為您建立 blob。

    寫入至現有的 blob 時,您可以藉由設定屬性( Azure Blob 儲存體寫入模式)來指定覆寫 blob 的目前內容。 根據預設,這個屬性會設定為 [ 錯誤],表示每當找到相同名稱的現有 blob 檔案時,就會引發錯誤。

  8. 針對 [blob 檔案的 檔案格式],選取儲存資料的格式。

    • Csv:逗號分隔值 (CSV) 是預設的儲存格式。 若要將資料行標題與資料一起匯出,請選取 [ 寫入 blob 標頭資料列] 選項。 如需機器學習中使用之逗點分隔格式的詳細資訊,請參閱轉換成 CSV

    • Tsv:定位字元分隔值 (TSV) 格式與許多機器學習工具相容。 若要將資料行標題與資料一起匯出,請選取 [ 寫入 blob 標頭資料列] 選項。 如需機器學習中使用之定位字元分隔格式的詳細資訊,請參閱轉換為 TSV

    • ARFF:此格式支援以 Weka 工具組所使用的格式儲存檔案。 SAS URL 中儲存的檔案不支援此格式。 如需有關 ARFF 格式的詳細資訊,請參閱 轉換成 ARFF

  9. 使用快取的結果:如果您想要避免在每次執行實驗時將結果重寫至 blob 檔案,請選取此選項。 如果模組參數沒有任何其他變更,則實驗只會在第一次執行模組時或資料有變更時,才會寫入結果。

範例

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

技術說明

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

常見問題

如何避免在實驗未變更時寫入資料

當您的實驗結果變更時, 匯出資料 一律會儲存新的資料集。 但是,如果您在不進行變更的情況下重複執行實驗,而不會影響輸出資料,則可以選取 [使用快取的 結果 ] 選項。

此模組會檢查實驗是否先前使用相同的資料和相同的選項來執行,而且如果找到先前的執行,就不會重複寫入作業。

我可以將資料儲存至不同地理區域中的帳戶

是,您可以將資料寫入不同區域中的帳戶。 不過,如果儲存體帳戶與用於機器學習實驗的計算節點位於不同的區域,則資料存取可能會變慢。 此外,您還需支付訂用帳戶的資料輸入和輸出費用。

模組參數

一般選項

名稱 範圍 類型 預設 描述
資料來源 List 資料來源或接收 Azure Blob 儲存體 目的地可以是 azure BLOB 儲存體中的檔案、azure 資料表、Azure SQL Database 中的資料表或視圖,或是 Hive 資料表。
使用快取的結果 TRUE/FALSE Boolean FALSE 只有在有效的快取不存在時才會執行模組;否則,請使用先前執行的快取資料。
請指定驗證類型 SAS/帳戶 AuthenticationType 帳戶 指出是否應該使用 SAS 或帳號憑證來進行存取授權

公用或 SAS-公用儲存選項

名稱 範圍 類型 預設 描述
Blob 的 SAS URI 任意 String 要寫入 (所需的 blob 的 SAS URI)
SAS 檔案的檔案格式 ARFF

CSV

TSV
LoaderUtils. 檔案類型 CSV 指出檔案是否為 CSV、TSV 或 ARFF。 (必要)
寫入 SAS 標頭資料列 TRUE/FALSE Boolean FALSE 指出是否應該將資料行標題寫入檔案

帳戶-私用儲存選項

名稱 範圍 類型 預設 描述
Azure 帳戶名稱 任意 String Azure 使用者帳戶名稱
Azure 帳戶金鑰 任意 SecureString Azure 儲存體金鑰
以容器開頭的 Blob 路徑 任意 String Blob 檔案名,以容器名稱開頭
Azure Blob 儲存體寫入模式 清單:錯誤、覆寫 enum: BlobFileWriteMode 錯誤 選擇寫入 blob 檔案的方法
Blob 檔案的檔案格式 ARFF

CSV

TSV
LoaderUtils. 檔案類型 CSV 指出 blob 檔案是否為 CSV、TSV 或 ARFF
寫入 Blob 標頭資料列 TRUE/FALSE Boolean FALSE 指出 blob 檔案是否應該有標頭資料列

例外狀況

例外狀況 描述
錯誤 0027 當兩個物件的大小必須相同但卻不同時,就會發生例外狀況。
錯誤 0003 如果一或多個輸入是 Null 或空白,就會發生例外狀況。
錯誤 0029 傳遞無效的 URI 時,就會發生例外狀況。
錯誤 0030 無法下載檔案時,就會發生例外狀況。
錯誤 0002 如果有一或多個參數無法剖析或從指定的類型轉換成目標方法所需的類型,就會發生例外狀況。
錯誤 0009 如果指定的 Azure 儲存體帳戶名稱或容器名稱不正確,就會發生例外狀況。
錯誤 0048 無法開啟檔案時,就會發生例外狀況。
錯誤 0046 無法在指定的路徑上建立目錄時,就會發生例外狀況。
錯誤 0049 無法剖析檔案時,就會發生例外狀況。

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

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

另請參閱

匯入資料
匯出資料
匯出至 Azure SQL Database
匯出至 Hive 查詢
匯出至 Azure 資料表