Share via


建立連線 (預覽)

適用於:Azure CLI ml 延伸模組 v2 (目前)Python SDK azure-ai-ml v2 (目前)

在本文中,您會了解如何連線至位於 Azure 外部的資料來源,以便資料供 Azure Machine Learning 服務使用。 Azure 連線可作為金鑰保存庫 Proxy,與連線的互動實際上是與 Azure 金鑰保存庫的直接互動。 Azure Machine Learning 連線將使用者名稱和密碼資料資源作為秘密安全地儲存在金鑰保存庫中。 金鑰保存庫 RBAC 可控制對這些資料資源的存取。 針對此資料可用性,Azure 支援下列外部來源的連線:

  • Snowflake DB
  • Amazon S3
  • Azure SQL DB

重要

此功能目前處於公開預覽。 此預覽版本沒有服務等級協定,不建議用於處理生產工作負載。 可能不支援特定功能,或可能已經限制功能。

如需詳細資訊,請參閱 Microsoft Azure 預覽版增補使用條款

必要條件

重要

Azure Machine Learning 連線將連線建立期間傳遞的認證安全地儲存在工作區 Azure Key Vault 中。 連線會參考金鑰保存庫儲存位置的認證,以供進一步使用。 將認證儲存在金鑰保管庫之後,您無須直接處理認證。 您可以選擇將認證儲存在 YAML 檔案中。 CLI 命令或 SDK 可以覆寫它們。 建議您避免將認證儲存在 YAML 檔案中,因為安全性缺口可能會導致認證洩漏。

注意

若要成功匯入資料,請確認您已安裝適用於 SDK 的最新 azure-ai-ml 套件 (1.5.0 版或更新版本) 以及 ml 延伸模組 (2.15.1 版或更新版本)。

如果您有較舊的 SDK 套件或 CLI 擴充功能,請移除舊版本,並使用索引標籤區段中所示的程式碼來安裝新套件。 請遵循 SDK 和 CLI 的指示操作,如下所示:

程式碼版本

az extension remove -n ml
az extension add -n ml --yes
az extension show -n ml #(the version value needs to be 2.15.1 or later)

建立 Snowflake DB 連線

此 YAML 檔案會建立 Snowflake DB 連線。 請務必更新適當的值:

# my_snowflakedb_connection.yaml
$schema: http://azureml/sdk-2-0/Connection.json
type: snowflake
name: my-sf-db-connection # add your datastore name here

target: jdbc:snowflake://<myaccount>.snowflakecomputing.com/?db=<mydb>&warehouse=<mywarehouse>&role=<myrole>
# add the Snowflake account, database, warehouse name and role name here. If no role name provided it will default to PUBLIC
credentials:
    type: username_password
    username: <username> # add the Snowflake database user name here or leave this blank and type in CLI command line
    password: <password> # add the Snowflake database password here or leave this blank and type in CLI command line

在 CLI 中建立 Azure Machine Learning 連線:

選項 1:使用 YAML 檔案中的使用者名稱和密碼

az ml connection create --file my_snowflakedb_connection.yaml

選項 2:覆寫命令列的使用者名稱和密碼

az ml connection create --file my_snowflakedb_connection.yaml --set credentials.username="XXXXX" credentials.password="XXXXX"

建立 Azure SQL DB 連線

此 YAML 指令碼會建立 Azure SQL DB 連線。 請務必更新適當的值:

# my_sqldb_connection.yaml
$schema: http://azureml/sdk-2-0/Connection.json

type: azure_sql_db
name: my-sqldb-connection

target: Server=tcp:<myservername>,<port>;Database=<mydatabase>;Trusted_Connection=False;Encrypt=True;Connection Timeout=30
# add the sql servername, port addresss and database
credentials:
    type: sql_auth
    username: <username> # add the sql database user name here or leave this blank and type in CLI command line
    password: <password> # add the sql database password here or leave this blank and type in CLI command line

在 CLI 中建立 Azure Machine Learning 連線:

選項 1:使用 YAML 檔案中的使用者名稱/密碼

az ml connection create --file my_sqldb_connection.yaml

選項 2:覆寫 YAML 檔案中的使用者名稱和密碼

az ml connection create --file my_sqldb_connection.yaml --set credentials.username="XXXXX" credentials.password="XXXXX"

建立 Amazon S3 連線

使用下列 YAML 檔案建立 Amazon S3 連線。 請務必更新適當的值:

# my_s3_connection.yaml
$schema: http://azureml/sdk-2-0/Connection.json

type: s3
name: my_s3_connection

target: <mybucket> # add the s3 bucket details
credentials:
    type: access_key
    access_key_id: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX # add access key id
    secret_access_key: XxXxXxXXXXXXXxXxXxxXxxXXXXXXXXxXxxXXxXXXXXXXxxxXxXXxXXXXXxXXxXXXxXxXxxxXXxXXxXXXXXxXxxXX # add access key secret

在 CLI 中建立 Azure Machine Learning 連線:

az ml connection create --file my_s3_connection.yaml

下一步