Поделиться через


Настройка учетных данных хранилища Delta

Примечание.

Сведения о настройке учетных данных хранилища Delta см. в статье "Настройка доступа к облачному хранилищу объектов" для Azure Databricks. Databricks больше не рекомендует передавать учетные данные хранения с помощью параметров Кадра данных, как описано в этой статье.

Azure Databricks хранит данные для таблиц Delta Lake в облачном хранилище объектов. Для настройки доступа к облачному хранилищу объектов требуются разрешения в облачной учетной записи, содержащей учетную запись хранения.

Передача учетных данных хранилища в качестве параметров кадра данных

Delta Lake поддерживает указание учетных данных хранилища в качестве параметров DataFrameReader и DataFrameWriter. Это можно использовать, если необходимо взаимодействовать с данными в нескольких учетных записях хранения, управляемых различными ключами доступа.

Примечание.

Эта функция доступна в Databricks Runtime 10.4 LTS и выше.

Например, можно передать учетные данные хранилища с помощью параметров DataFrame:

Python

df1 = spark.read \
  .option("fs.azure.account.key.<storage-account-name>.dfs.core.windows.net", "<storage-account-access-key-1>") \
  .read("...")
df2 = spark.read \
  .option("fs.azure.account.key.<storage-account-name>.dfs.core.windows.net", "<storage-account-access-key-2>") \
  .read("...")
df1.union(df2).write \
  .mode("overwrite") \
  .option("fs.azure.account.key.<storage-account-name>.dfs.core.windows.net", "<storage-account-access-key-3>") \
  .save("...")

Scala

val df1 = spark.read
  .option("fs.azure.account.key.<storage-account-name>.dfs.core.windows.net", "<storage-account-access-key-1>")
  .read("...")
val df2 = spark.read
  .option("fs.azure.account.key.<storage-account-name>.dfs.core.windows.net", "<storage-account-access-key-2>")
  .read("...")
df1.union(df2).write
  .mode("overwrite")
  .option("fs.azure.account.key.<storage-account-name>.dfs.core.windows.net", "<storage-account-access-key-3>")
  .save("...")