共用方式為


使用暫存 credentials 使用 COPY INTO 載入數據

如果您的 Azure Databricks 叢集或 SQL 倉儲沒有讀取來源檔案的許可權,您可以使用暫存 credentials 從外部雲端物件記憶體存取數據,並將檔案載入 Delta Lake table。

視組織管理雲端安全性的方式而定,您可能需要要求雲端系統管理員或進階使用者提供您 credentials。 如需詳細資訊,請參閱 Generate 的暫存 credentials 用於攝取的

指定credentials暫時性或加密選項以存取資料

注意

Databricks Runtime 10.4 LTS 和更新版本提供認證和加密選項。

COPY INTO 支援:

警告

為了避免誤用或暴露暫時 credentials,Databricks 建議您 set 到期日線,只要夠長才能完成工作。

COPY INTO 支援從 AWS S3 載入加密的數據。 若要載入加密的數據,請提供加密類型和金鑰來解密數據。

使用暫存 credentials 載入數據

下列範例會使用暫存 credentials 從 S3 和 ADLS Gen2 載入數據,以提供源數據的存取權。

COPY INTO my_json_data
FROM 's3://my-bucket/jsonData' WITH (
  CREDENTIAL (AWS_ACCESS_KEY = '...', AWS_SECRET_KEY = '...', AWS_SESSION_TOKEN = '...')
)
FILEFORMAT = JSON

COPY INTO my_json_data
FROM 'abfss://container@storageAccount.dfs.core.windows.net/jsonData' WITH (
  CREDENTIAL (AZURE_SAS_TOKEN = '...')
)
FILEFORMAT = JSON

載入加密的數據

使用客戶提供的加密金鑰,下列範例會從 S3 載入數據。

COPY INTO my_json_data
FROM 's3://my-bucket/jsonData' WITH (
  ENCRYPTION (TYPE = 'AWS_SSE_C', MASTER_KEY = '...')
)
FILEFORMAT = JSON

使用 credentials 來載入來源和目標的 JSON 資料

下列範例會將 JSON 數據從 Azure 上的檔案載入至名為 my_json_data的外部 Delta table。 必須先建立此 table,才能執行 COPY INTO。 命令會使用一個現有的憑證來寫入至外部的 Delta table,並使用另一個憑證從 ABFSS 位置讀取資料。

COPY INTO my_json_data WITH (CREDENTIAL target_credential)
  FROM 'abfss://container@storageAccount.dfs.core.windows.net/base/path' WITH (CREDENTIAL source_credential)
  FILEFORMAT = JSON
  FILES = ('f.json')