DataLakeServiceClient Класс
Клиент для взаимодействия со службой DataLake на уровне учетной записи.
Этот клиент предоставляет операции для получения и настройки свойств учетной записи, а также перечисления, создания и удаления файловой системы в учетной записи. Для операций, связанных с определенной файловой системой, каталогом или файлом, клиенты для этих сущностей также можно получить с помощью функций get_client .
- Наследование
-
azure.storage.filedatalake._shared.base_client.StorageAccountHostsMixinDataLakeServiceClient
Конструктор
DataLakeServiceClient(account_url: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any)
Параметры
- account_url
- str
URL-адрес учетной записи хранения DataLake. Любые другие сущности, включенные в путь URL-адреса (например, файловая система или файл), будут удалены. Этот URL-адрес можно при необходимости пройти проверку подлинности с помощью маркера SAS.
- credential
Учетные данные для проверки подлинности. Это необязательно, если URL-адрес учетной записи уже содержит маркер SAS. Это может быть строка маркера SAS, экземпляр AzureSasCredential или AzureNamedKeyCredential из azure.core.credentials, общий ключ доступа учетной записи или экземпляр класса TokenCredentials из azure.identity. Если URI ресурса уже содержит маркер SAS, он будет игнорироваться в пользу явных учетных данных.
- за исключением случаев AzureSasCredential, где конфликтующие маркеры SAS вызовут ValueError. При использовании экземпляра AzureNamedKeyCredential "name" должно быть именем учетной записи хранения, а "key" — ключом учетной записи хранения.
- api_version
- str
Версия API хранилища, используемая для запросов. Значение по умолчанию — это последняя версия службы, совместимая с текущим пакетом SDK. Установка более старой версии может привести к снижению совместимости функций.
Примеры
Создание DataLakeServiceClient из строки подключения.
from azure.storage.filedatalake import DataLakeServiceClient
datalake_service_client = DataLakeServiceClient.from_connection_string(self.connection_string)
Создание DataLakeServiceClient с учетными данными Azure Identity.
from azure.identity import ClientSecretCredential
token_credential = ClientSecretCredential(
self.active_directory_tenant_id,
self.active_directory_application_id,
self.active_directory_application_secret,
)
datalake_service_client = DataLakeServiceClient("https://{}.dfs.core.windows.net".format(self.account_name),
credential=token_credential)
Переменные
- url
- str
Полный URL-адрес конечной точки для конечной точки службы datalake.
- primary_endpoint
- str
Полный URL-адрес основной конечной точки.
- primary_hostname
- str
Имя узла основной конечной точки.
Методы
close |
Этот метод заключается в закрытии сокетов, открытых клиентом. Его не нужно использовать при использовании с диспетчером контекста. |
create_file_system |
Создает новую файловую систему в указанной учетной записи. Если файловая система с тем же именем уже существует, будет создано свойство ResourceExistsError. Этот метод возвращает клиент, с которым будет взаимодействовать с только что созданной файловой системой. |
delete_file_system |
Помечает указанную файловую систему для удаления. Файловая система и все содержащиеся в ней файлы позже удаляются во время сборки мусора. Если файловая система не найдена, возникает ошибка ResourceNotFoundError. |
from_connection_string |
Создайте DataLakeServiceClient из строки подключения. :return a DataLakeServiceClient :rtype ~azure.storage.filedatalake.DataLakeServiceClient |
get_directory_client |
Получение клиента для взаимодействия с указанным каталогом. Каталог еще не должен существовать. |
get_file_client |
Получение клиента для взаимодействия с указанным файлом. Файл еще не должен существовать. |
get_file_system_client |
Получите клиент для взаимодействия с указанной файловой системой. Файловая система еще не должна существовать. |
get_service_properties |
Возвращает свойства службы datalake учетной записи хранения, включая Аналитика Службы хранилища Azure. Новые возможности в версии 12.4.0: эта операция появилась в API версии 2020-06-12. |
get_user_delegation_key |
Получите ключ делегирования пользователя для подписи маркеров SAS. Для успешного выполнения этого запроса в объекте службы должны присутствовать учетные данные маркера. |
list_file_systems |
Возвращает генератор для вывода списка файловой системы в указанной учетной записи. Генератор будет отложенно следовать маркерам продолжения, возвращенным службой, и останавливаться при возврате всех файловых систем. |
set_service_properties |
Задает свойства службы Datalake учетной записи хранения, включая Аналитика Службы хранилища Azure. Новые возможности в версии 12.4.0: эта операция появилась в API версии 2020-06-12. Если элемент (например, analytics_logging) остается равным None, существующие параметры службы для этой функции сохраняются. |
undelete_file_system |
Восстанавливает обратимо удаленную файловую систему. Операция будет успешной, только если используется в течение указанного числа дней, заданного в политике хранения удаления. Новые возможности в версии 12.3.0: эта операция появилась в API версии 2019-12-12. |
close
Этот метод заключается в закрытии сокетов, открытых клиентом. Его не нужно использовать при использовании с диспетчером контекста.
close() -> None
create_file_system
Создает новую файловую систему в указанной учетной записи.
Если файловая система с тем же именем уже существует, будет создано свойство ResourceExistsError. Этот метод возвращает клиент, с которым будет взаимодействовать с только что созданной файловой системой.
create_file_system(file_system: FileSystemProperties | str, metadata: Dict[str, str] | None = None, public_access: PublicAccess | None = None, **kwargs) -> FileSystemClient
Параметры
Словарь с парами "имя-значение" для связывания с файловой системой в качестве метаданных. Пример: {'Category':'test'}
- encryption_scope_options
- dict или EncryptionScopeOptions
Указывает область шифрования по умолчанию, устанавливаемую в файловой системе и используемую для всех будущих операций записи.
Новые возможности в версии 12.9.0.
- timeout
- int
Задает время ожидания на стороне сервера для операции в секундах. Дополнительные сведения см. в следующей статье: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Это значение не отслеживается и не проверяется на клиенте. Сведения о настройке времени ожидания сети на стороне клиента см. здесь.
Возвращаемый тип
Примеры
Создание файловой системы в службе datalake.
datalake_service_client.create_file_system("filesystem")
delete_file_system
Помечает указанную файловую систему для удаления.
Файловая система и все содержащиеся в ней файлы позже удаляются во время сборки мусора. Если файловая система не найдена, возникает ошибка ResourceNotFoundError.
delete_file_system(file_system: FileSystemProperties | str, **kwargs) -> FileSystemClient
Параметры
- file_system
- str или FileSystemProperties
Удаляемая файловая система. Это может быть имя файловой системы или экземпляр FileSystemProperties.
- lease
- DataLakeLeaseClient или str
Если этот параметр указан, delete_file_system выполняется успешно, только если аренда файловой системы активна и соответствует этому идентификатору. Требуется, если у файловой системы есть активная аренда.
- if_modified_since
- datetime
Значение даты и времени. Azure ожидает, что переданное значение даты будет иметь формат UTC. Если включен часовой пояс, все значения даты и времени, отличные от UTC, будут преобразованы в формат UTC. Если дата передается без сведений о часовом поясе, предполагается, что она имеет значение UTC. Укажите этот заголовок для выполнения операции только в том случае, если ресурс был изменен в указанное время.
- if_unmodified_since
- datetime
Значение даты и времени. Azure ожидает, что переданное значение даты будет иметь формат UTC. Если включен часовой пояс, все значения даты и времени, отличные от UTC, будут преобразованы в формат UTC. Если дата передается без сведений о часовом поясе, предполагается, что она имеет значение UTC. Укажите этот заголовок для выполнения операции только в том случае, если ресурс не был изменен в указанные дату и время.
- etag
- str
Значение ETag или подстановочный знак (*). Используется для проверка, если ресурс изменился, и действует в соответствии с условием, заданным параметром match_condition.
- match_condition
- MatchConditions
Условие соответствия, используемое для etag.
- timeout
- int
Задает время ожидания на стороне сервера для операции в секундах. Дополнительные сведения см. в следующей статье: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Это значение не отслеживается и не проверяется на клиенте. Сведения о настройке времени ожидания сети на стороне клиента см. здесь.
Возвращаемый тип
Примеры
Удаление файловой системы в службе datalake.
datalake_service_client.delete_file_system("filesystem")
from_connection_string
Создайте DataLakeServiceClient из строки подключения.
:return a DataLakeServiceClient :rtype ~azure.storage.filedatalake.DataLakeServiceClient
from_connection_string(conn_str: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any) -> Self
Параметры
- credential
Учетные данные для проверки подлинности. Это необязательно, если URL-адрес учетной записи уже содержит маркер SAS или строка подключения уже содержит значения общего ключа доступа. Это может быть строка маркера SAS, экземпляр AzureSasCredential из azure.core.credentials, общий ключ доступа учетной записи или экземпляр класса TokenCredentials из azure.identity. Предоставленные здесь учетные данные будут иметь приоритет над учетными данными в строке подключения.
Примеры
Создание DataLakeServiceClient из строки подключения.
from azure.storage.filedatalake import DataLakeServiceClient
datalake_service_client = DataLakeServiceClient.from_connection_string(self.connection_string)
get_directory_client
Получение клиента для взаимодействия с указанным каталогом.
Каталог еще не должен существовать.
get_directory_client(file_system: FileSystemProperties | str, directory: DirectoryProperties | str) -> DataLakeDirectoryClient
Параметры
- file_system
- str или FileSystemProperties
Файловая система, в которую находится каталог. Это может быть имя файловой системы или экземпляр FileSystemProperties.
- directory
- str или DirectoryProperties
Каталог, с которым нужно взаимодействовать. Это может быть имя каталога или экземпляр DirectoryProperties.
Возвращаемое значение
A DataLakeDirectoryClient.
Возвращаемый тип
Примеры
Получение клиента каталога для взаимодействия с определенным каталогом.
directory_client = datalake_service_client.get_directory_client(file_system_client.file_system_name,
"mydirectory")
get_file_client
Получение клиента для взаимодействия с указанным файлом.
Файл еще не должен существовать.
get_file_client(file_system: FileSystemProperties | str, file_path: FileProperties | str) -> DataLakeFileClient
Параметры
- file_system
- str или FileSystemProperties
Файловая система, в которую находится файл. Это может быть имя файловой системы или экземпляр FileSystemProperties.
- file_path
- str или FileProperties
Файл, с которым необходимо взаимодействовать. Это может быть полный путь к файлу (из корневого каталога) или экземпляр FileProperties. Например. directory/subdirectory/file
Возвращаемое значение
A DataLakeFileClient.
Возвращаемый тип
Примеры
Получение файлового клиента для взаимодействия с определенным файлом.
file_client = datalake_service_client.get_file_client(file_system_client.file_system_name, "myfile")
get_file_system_client
Получите клиент для взаимодействия с указанной файловой системой.
Файловая система еще не должна существовать.
get_file_system_client(file_system: FileSystemProperties | str) -> FileSystemClient
Параметры
- file_system
- str или FileSystemProperties
Файловая система. Это может быть имя файловой системы или экземпляр FileSystemProperties.
Возвращаемое значение
A FileSystemClient.
Возвращаемый тип
Примеры
Получение клиента файловой системы для взаимодействия с определенной файловой системой.
# Instantiate a DataLakeServiceClient using a connection string
from azure.storage.filedatalake import DataLakeServiceClient
datalake_service_client = DataLakeServiceClient.from_connection_string(self.connection_string)
# Instantiate a FileSystemClient
file_system_client = datalake_service_client.get_file_system_client("mynewfilesystem")
get_service_properties
Возвращает свойства службы datalake учетной записи хранения, включая Аналитика Службы хранилища Azure.
Новые возможности в версии 12.4.0: эта операция появилась в API версии 2020-06-12.
get_service_properties(**kwargs: Any) -> Dict[str, Any]
Параметры
- timeout
- int
Задает время ожидания на стороне сервера для операции в секундах. Дополнительные сведения см. в следующей статье: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Это значение не отслеживается и не проверяется на клиенте. Сведения о настройке времени ожидания сети на стороне клиента см. здесь.
Возвращаемое значение
Объект, содержащий свойства службы datalake, такие как ведение журнала аналитики, метрики по часам в минуту, правила cors и т. д.
Возвращаемый тип
get_user_delegation_key
Получите ключ делегирования пользователя для подписи маркеров SAS. Для успешного выполнения этого запроса в объекте службы должны присутствовать учетные данные маркера.
get_user_delegation_key(key_start_time: datetime, key_expiry_time: datetime, **kwargs: Any) -> UserDelegationKey
Параметры
- key_start_time
- datetime
Значение даты и времени. Указывает, когда ключ становится действительным.
- key_expiry_time
- datetime
Значение даты и времени. Указывает, когда ключ перестает быть действительным.
- timeout
- int
Задает время ожидания на стороне сервера для операции в секундах. Дополнительные сведения см. в следующей статье: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Это значение не отслеживается и не проверяется на клиенте. Сведения о настройке времени ожидания сети на стороне клиента см. здесь.
Возвращаемое значение
Ключ делегирования пользователя.
Возвращаемый тип
Примеры
Получите ключ делегирования пользователя из клиента службы datalake.
from datetime import datetime, timedelta
user_delegation_key = datalake_service_client.get_user_delegation_key(datetime.utcnow(),
datetime.utcnow() + timedelta(hours=1))
list_file_systems
Возвращает генератор для вывода списка файловой системы в указанной учетной записи.
Генератор будет отложенно следовать маркерам продолжения, возвращенным службой, и останавливаться при возврате всех файловых систем.
list_file_systems(name_starts_with: str | None = None, include_metadata: bool | None = None, **kwargs) -> ItemPaged[FileSystemProperties]
Параметры
- name_starts_with
- str
Фильтрует результаты, возвращая только файловые системы, имена которых начинаются с указанного префикса.
- include_metadata
- bool
Указывает, что в ответе возвращаются метаданные файловой системы. Значение по умолчанию равно False.
- results_per_page
- int
Максимальное количество имен файловой системы для каждого вызова API. Если в запросе не указано, сервер вернет до 5000 элементов на страницу.
- timeout
- int
Задает время ожидания на стороне сервера для операции в секундах. Дополнительные сведения см. в следующей статье: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Это значение не отслеживается и не проверяется на клиенте. Сведения о настройке времени ожидания сети на стороне клиента см. здесь.
- include_deleted
- bool
Указывает, что удаленные файловые системы будут возвращены в ответе. Это предназначено для учетной записи с поддержкой восстановления файловой системы. Значение по умолчанию равно False. .. versionadded:: 12.3.0
- include_system
- bool
Флаг, указывающий, что системные файловые системы должны быть включены. .. versionadded:: 12.6.0
Возвращаемое значение
Итерируемая (автоматическая подкачки) свойства FileSystemProperties.
Возвращаемый тип
Примеры
Перечисление файловой системы в службе datalake.
file_systems = datalake_service_client.list_file_systems()
for file_system in file_systems:
print(file_system.name)
set_service_properties
Задает свойства службы Datalake учетной записи хранения, включая Аналитика Службы хранилища Azure.
Новые возможности в версии 12.4.0: эта операция появилась в API версии 2020-06-12.
Если элемент (например, analytics_logging) остается равным None, существующие параметры службы для этой функции сохраняются.
set_service_properties(**kwargs: Any) -> None
Параметры
- analytics_logging
Группирует параметры ведения журнала Azure Analytics.
- hour_metrics
Параметры часовых метрик предоставляют сводку статистики запросов, сгруппированных по API в почасовых статистических выражениях.
- minute_metrics
Параметры метрик минуты предоставляют статистику запросов за каждую минуту.
- cors
В список можно включить до пяти элементов CorsRule. Если указан пустой список, все правила CORS будут удалены, а CORS будет отключен для службы.
- target_version
- str
Указывает версию по умолчанию, используемую для запросов, если версия входящего запроса не указана.
- delete_retention_policy
Политика хранения удаления указывает, следует ли сохранять удаленные файлы или каталоги. Он также указывает количество дней и версий файла или каталога для хранения.
- static_website
Указывает, включена ли функция статического веб-сайта, а если да, то указывает на документ индекса и документ ошибки 404 для использования.
- timeout
- int
Задает время ожидания на стороне сервера для операции в секундах. Дополнительные сведения см. в следующей статье: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Это значение не отслеживается и не проверяется на клиенте. Сведения о настройке времени ожидания сети на стороне клиента см. здесь.
Возвращаемый тип
undelete_file_system
Восстанавливает обратимо удаленную файловую систему.
Операция будет успешной, только если используется в течение указанного числа дней, заданного в политике хранения удаления.
Новые возможности в версии 12.3.0: эта операция появилась в API версии 2019-12-12.
undelete_file_system(name: str, deleted_version: str, **kwargs: Any) -> FileSystemClient
Параметры
- timeout
- int
Задает время ожидания на стороне сервера для операции в секундах. Дополнительные сведения см. в следующей статье: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Это значение не отслеживается и не проверяется на клиенте. Сведения о настройке времени ожидания сети на стороне клиента см. здесь.
Возвращаемое значение
Восстановленный solft-deleted FileSystemClient.
Возвращаемый тип
Атрибуты
api_version
Версия API хранилища, используемого для запросов.
location_mode
Режим расположения, используемый клиентом в настоящее время.
По умолчанию это будет "основной". Возможные варианты: "primary" и "secondary".
primary_endpoint
Полный URL-адрес основной конечной точки.
primary_hostname
Имя узла основной конечной точки.
secondary_endpoint
Полный URL-адрес вторичной конечной точки, если он настроен.
Если он недоступен, будет вызван параметр ValueError. Чтобы явно указать имя вторичного узла, используйте необязательный аргумент secondary_hostname ключевое слово при создании экземпляра.
Исключения
secondary_hostname
Имя узла вторичной конечной точки.
Если он недоступен, это значение будет нет. Чтобы явно указать имя вторичного узла, используйте необязательный аргумент secondary_hostname ключевое слово при создании экземпляра.
url
Полный URL-адрес конечной точки для этой сущности, включая маркер SAS, если он используется.
Это может быть основная конечная точка или вторичная конечная точка в зависимости от текущего location_mode. :returns: полный URL-адрес конечной точки для этой сущности, включая маркер SAS, если он используется. :rtype: str
Azure SDK for Python