FileSystemClient Classe
Um cliente para interagir com um sistema de arquivos específico, mesmo que esse sistema de arquivos ainda não exista.
Para operações relacionadas a um diretório ou arquivo específico dentro desse sistema de arquivos, um cliente de diretório ou cliente de arquivo pode ser recuperado usando as get_directory_client funções ou get_file_client .
ivar str url: a URL completa do ponto de extremidade para o sistema de arquivos, incluindo o token SAS, se usado.
ivar str primary_endpoint: a URL completa do ponto de extremidade primário.
ivar str primary_hostname: o nome do host do ponto de extremidade primário.
param str account_url: o URI para a conta de armazenamento.
param file_system_name: o sistema de arquivos para o diretório ou arquivos.
tipo file_system_name: str
credencial param: as credenciais com as quais autenticar. Isso será opcional se a URL da conta já tiver um token SAS. O valor pode ser uma cadeia de caracteres de token SAS, uma instância de um AzureSasCredential ou AzureNamedKeyCredential de azure.core.credentials, uma chave de acesso compartilhado de conta ou uma instância de uma classe TokenCredentials do azure.identity. Se o URI do recurso já contiver um token SAS, isso será ignorado em favor de uma credencial explícita , exceto no caso do AzureSasCredential, em que os tokens SAS conflitantes gerarão um ValueError. Se estiver usando uma instância do AzureNamedKeyCredential, "name" deverá ser o nome da conta de armazenamento e "key" deverá ser a chave da conta de armazenamento.
palavra-chave str api_version: a versão da API de Armazenamento a ser usada para solicitações. O valor padrão é a versão de serviço mais recente compatível com o SDK atual. A configuração para uma versão mais antiga pode resultar em compatibilidade de recursos reduzida.
- Herança
-
azure.storage.filedatalake._shared.base_client_async.AsyncStorageAccountHostsMixinFileSystemClientazure.storage.filedatalake._file_system_client.FileSystemClientFileSystemClient
Construtor
FileSystemClient(account_url: str, file_system_name: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | AsyncTokenCredential | None = None, **kwargs: Any)
Parâmetros
- account_url
- file_system_name
- credential
Exemplos
Obtenha um FileSystemClient de um DataLakeServiceClient existente.
# Instantiate a DataLakeServiceClient using a connection string
from azure.storage.filedatalake.aio import DataLakeServiceClient
datalake_service_client = DataLakeServiceClient.from_connection_string(self.connection_string)
async with datalake_service_client:
# Instantiate a FileSystemClient
file_system_client = datalake_service_client.get_file_system_client("mynewfilesystems")
Métodos
acquire_lease |
Solicita uma nova concessão. Se o sistema de arquivos não tiver uma concessão ativa, o serviço DataLake criará uma concessão no sistema de arquivos e retornará uma nova ID de concessão. |
close |
Esse método é fechar os soquetes abertos pelo cliente. Ele não precisa ser usado ao usar com um gerenciador de contexto. |
create_directory |
Criar diretório |
create_file |
Criar arquivo |
create_file_system |
Cria um novo sistema de arquivos na conta especificada. Se o sistema de arquivos com o mesmo nome já existir, um ResourceExistsError será gerado. Esse método retorna um cliente com o qual interagir com o sistema de arquivos recém-criado. |
delete_directory |
Marca o caminho especificado para exclusão. |
delete_file |
Marca o arquivo especificado para exclusão. Excluir arquivo no sistema de arquivos.
|
delete_file_system |
Marca o sistema de arquivos especificado para exclusão. O sistema de arquivos e todos os arquivos contidos nele são posteriormente excluídos durante a coleta de lixo. Se o sistema de arquivos não for encontrado, um ResourceNotFoundError será gerado. |
exists |
Retorna True se um sistema de arquivos existir e retornar False caso contrário. |
from_connection_string |
Crie FileSystemClient a partir de uma cadeia de conexão. :return a FileSystemClient :rtype ~azure.storage.filedatalake.FileSystemClient |
get_directory_client |
Faça com que um cliente interaja com o diretório especificado. O diretório ainda não precisa existir. |
get_file_client |
Faça com que um cliente interaja com o arquivo especificado. O arquivo ainda não precisa existir. |
get_file_system_access_policy |
Obtém as permissões para o sistema de arquivos especificado. As permissões indicam se os dados do sistema de arquivos podem ser acessados publicamente. |
get_file_system_properties |
Retorna todos os metadados definidos pelo usuário e as propriedades do sistema para o sistema de arquivos especificado. Os dados retornados não incluem a lista de caminhos do sistema de arquivos. |
get_paths |
Retorna um gerador para listar os caminhos (podem ser arquivos ou diretórios) no sistema de arquivos especificado. O gerador seguirá lentamente os tokens de continuação retornados pelo serviço. |
list_deleted_paths |
Retorna um gerador para listar os caminhos excluídos (arquivo ou diretório) no sistema de arquivos especificado. O gerador seguirá lentamente os tokens de continuação retornados pelo serviço. Novo na versão 12.4.0: essa operação foi introduzida na versão da API '2020-06-12'. |
set_file_system_access_policy |
Define as permissões para o sistema de arquivos especificado ou políticas de acesso armazenadas que podem ser usadas com assinaturas de acesso compartilhado. As permissões indicam se os arquivos em um sistema de arquivos podem ser acessados publicamente. |
set_file_system_metadata |
Define um ou mais pares nome-valor definidos pelo usuário para o sistema de arquivos especificado. Cada chamada a essa operação substitui todos os metadados existentes anexados ao sistema de arquivos. Para remover todos os metadados do sistema de arquivos, chame essa operação sem um ditado de metadados. |
acquire_lease
Solicita uma nova concessão. Se o sistema de arquivos não tiver uma concessão ativa, o serviço DataLake criará uma concessão no sistema de arquivos e retornará uma nova ID de concessão.
async acquire_lease(lease_duration: int = -1, lease_id: str | None = None, **kwargs) -> DataLakeLeaseClient
Parâmetros
- lease_duration
- int
Especifica a duração de concessão, em segundos, ou um negativo (- 1) para uma concessão que nunca expira. A duração de uma concessão não infinita pode ser entre 15 e 60 segundos. Uma duração de concessão não pode ser alterada usando renovação ou alteração. O padrão é -1 (concessão infinita).
- lease_id
- str
ID proposta da concessão, em um formato de cadeia de caracteres GUID. O serviço DataLake retornará 400 (solicitação inválida) se a ID de concessão proposta não estiver no formato correto.
- if_modified_since
- datetime
Um valor Datetime. O Azure espera que o valor de data passado seja UTC. Se o fuso horário estiver incluído, todos os datetimes não UTC serão convertidos em UTC. Se uma data for passada sem informações de fuso horário, supõe-se que seja UTC. Especifique esse cabeçalho para executar a operação somente se o recurso tiver sido modificado desde a hora especificada.
- if_unmodified_since
- datetime
Um valor Datetime. O Azure espera que o valor de data passado seja UTC. Se o fuso horário estiver incluído, todos os datetimes não UTC serão convertidos em UTC. Se uma data for passada sem informações de fuso horário, supõe-se que seja UTC. Especifique esse cabeçalho para executar a operação somente se o recurso não tiver sido modificado desde a data/hora especificada.
- etag
- str
Um valor de ETag ou o caractere curinga (*). Usado para marcar se o recurso foi alterado e agir de acordo com a condição especificada pelo parâmetro match_condition.
- match_condition
- MatchConditions
A condição de correspondência a ser usada na etag.
- timeout
- int
Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, confira aqui.
Retornos
Um objeto DataLakeLeaseClient, que pode ser executado em um gerenciador de contexto.
Tipo de retorno
Exemplos
Adquirir uma concessão no file_system.
# Acquire a lease on the file system
lease = await file_system_client.acquire_lease()
# Delete file system by passing in the lease
await file_system_client.delete_file_system(lease=lease)
close
Esse método é fechar os soquetes abertos pelo cliente. Ele não precisa ser usado ao usar com um gerenciador de contexto.
async close() -> None
create_directory
Criar diretório
async create_directory(directory: DirectoryProperties | str, metadata: Dict[str, str] | None = None, **kwargs) -> DataLakeDirectoryClient
Parâmetros
- directory
- str ou DirectoryProperties
O diretório com o qual interagir. Isso pode ser o nome do diretório ou uma instância de DirectoryProperties.
- content_settings
- ContentSettings
Objeto ContentSettings usado para definir propriedades de caminho.
- lease
- DataLakeLeaseClient ou str
Obrigatório se o arquivo tiver uma concessão ativa. O valor pode ser um objeto DataLakeLeaseClient ou a ID de concessão como uma cadeia de caracteres.
- umask
- str
Opcional e válido somente se o Namespace Hierárquico estiver habilitado para a conta. Ao criar um arquivo ou diretório e a pasta pai não tem uma ACL padrão, a umask restringe as permissões do arquivo ou diretório a ser criado. A permissão resultante é fornecida por p & ^u, em que p é a permissão e você é a umask. Por exemplo, se p for 0777 e você for 0057, a permissão resultante será 0720. A permissão padrão é 0777 para um diretório e 0666 para um arquivo. A umask padrão é 0027. A umask deve ser especificada em notação octal de 4 dígitos (por exemplo, 0766).
- owner
- str
O proprietário do arquivo ou diretório.
- group
- str
O grupo proprietário do arquivo ou diretório.
- acl
- str
Define os direitos de controle de acesso POSIX em arquivos e diretórios. O valor é uma lista separada por vírgulas de entradas de controle de acesso. Cada ACE (entrada de controle de acesso) consiste em um escopo, um tipo, um identificador de usuário ou grupo e permissões no formato "[scope:][type]:[id]:[permissions]".
- lease_id
- str
ID proposta da concessão, em um formato de cadeia de caracteres GUID. O serviço DataLake retornará 400 (solicitação inválida) se a ID de concessão proposta não estiver no formato correto.
- lease_duration
- int
Especifica a duração de concessão, em segundos, ou um negativo (- 1) para uma concessão que nunca expira. A duração de uma concessão não infinita pode ser entre 15 e 60 segundos. Uma duração de concessão não pode ser alterada usando renovação ou alteração.
- permissions
- str
Opcional e válido somente se o Namespace Hierárquico estiver habilitado para a conta. Define permissões de acesso POSIX para o proprietário do arquivo, o grupo proprietário do arquivo e outros. Cada classe pode receber permissão de leitura, gravação ou execução. Também há suporte para o bit sticky. Há suporte para notação octal simbólica (rwxrw-rw-) e octal de 4 dígitos (por exemplo, 0766).
- if_modified_since
- datetime
Um valor Datetime. O Azure espera que o valor de data passado seja UTC. Se o fuso horário estiver incluído, todos os datetimes não UTC serão convertidos em UTC. Se uma data for passada sem informações de fuso horário, supõe-se que seja UTC. Especifique esse cabeçalho para executar a operação somente se o recurso tiver sido modificado desde a hora especificada.
- if_unmodified_since
- datetime
Um valor Datetime. O Azure espera que o valor de data passado seja UTC. Se o fuso horário estiver incluído, todos os datetimes não UTC serão convertidos em UTC. Se uma data for passada sem informações de fuso horário, supõe-se que seja UTC. Especifique esse cabeçalho para executar a operação somente se o recurso não tiver sido modificado desde a data/hora especificada.
- etag
- str
Um valor de ETag ou o caractere curinga (*). Usado para marcar se o recurso foi alterado e agir de acordo com a condição especificada pelo parâmetro match_condition.
- match_condition
- MatchConditions
A condição de correspondência a ser usada na etag.
- timeout
- int
Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, confira aqui.
Retornos
DataLakeDirectoryClient
Exemplos
Crie um diretório no sistema de arquivos.
directory_client = await file_system_client.create_directory("mydirectory")
create_file
Criar arquivo
async create_file(file: FileProperties | str, **kwargs) -> DataLakeFileClient
Parâmetros
- file
- str ou FileProperties
O arquivo com o qual interagir. Isso pode ser o nome do arquivo ou uma instância de FileProperties.
- content_settings
- ContentSettings
Objeto ContentSettings usado para definir propriedades de caminho.
- lease
- DataLakeLeaseClient ou str
Obrigatório se o arquivo tiver uma concessão ativa. O valor pode ser um objeto DataLakeLeaseClient ou a ID de concessão como uma cadeia de caracteres.
- umask
- str
Opcional e válido somente se o Namespace Hierárquico estiver habilitado para a conta. Ao criar um arquivo ou diretório e a pasta pai não tem uma ACL padrão, a umask restringe as permissões do arquivo ou diretório a ser criado. A permissão resultante é fornecida por p & ^u, em que p é a permissão e você é a umask. Por exemplo, se p for 0777 e você for 0057, a permissão resultante será 0720. A permissão padrão é 0777 para um diretório e 0666 para um arquivo. A umask padrão é 0027. A umask deve ser especificada em notação octal de 4 dígitos (por exemplo, 0766).
- owner
- str
O proprietário do arquivo ou diretório.
- group
- str
O grupo proprietário do arquivo ou diretório.
- acl
- str
Define os direitos de controle de acesso POSIX em arquivos e diretórios. O valor é uma lista separada por vírgulas de entradas de controle de acesso. Cada ACE (entrada de controle de acesso) consiste em um escopo, um tipo, um identificador de usuário ou grupo e permissões no formato "[scope:][type]:[id]:[permissions]".
- lease_id
- str
ID proposta da concessão, em um formato de cadeia de caracteres GUID. O serviço DataLake retornará 400 (solicitação inválida) se a ID de concessão proposta não estiver no formato correto.
- lease_duration
- int
Especifica a duração de concessão, em segundos, ou um negativo (- 1) para uma concessão que nunca expira. A duração de uma concessão não infinita pode ser entre 15 e 60 segundos. Uma duração de concessão não pode ser alterada usando renovação ou alteração.
O tempo para definir o arquivo como expirado. Se o tipo de expires_on for int, o tempo de expiração será definido como o número de milissegundos decorridos do tempo de criação. Se o tipo de expires_on for datetime, o tempo de validade será definido como absoluto à hora fornecida. Se nenhuma informação de fuso horário for fornecida, isso será interpretado como UTC.
- permissions
- str
Opcional e válido somente se o Namespace Hierárquico estiver habilitado para a conta. Define permissões de acesso POSIX para o proprietário do arquivo, o grupo proprietário do arquivo e outros. Cada classe pode receber permissão de leitura, gravação ou execução. Também há suporte para o bit sticky. Há suporte para notação octal simbólica (rwxrw-rw-) e octal de 4 dígitos (por exemplo, 0766).
- if_modified_since
- datetime
Um valor Datetime. O Azure espera que o valor de data passado seja UTC. Se o fuso horário estiver incluído, todos os datetimes não UTC serão convertidos em UTC. Se uma data for passada sem informações de fuso horário, supõe-se que seja UTC. Especifique esse cabeçalho para executar a operação somente se o recurso tiver sido modificado desde a hora especificada.
- if_unmodified_since
- datetime
Um valor Datetime. O Azure espera que o valor de data passado seja UTC. Se o fuso horário estiver incluído, todos os datetimes não UTC serão convertidos em UTC. Se uma data for passada sem informações de fuso horário, supõe-se que seja UTC. Especifique esse cabeçalho para executar a operação somente se o recurso não tiver sido modificado desde a data/hora especificada.
- etag
- str
Um valor de ETag ou o caractere curinga (*). Usado para marcar se o recurso foi alterado e agir de acordo com a condição especificada pelo parâmetro match_condition.
- match_condition
- MatchConditions
A condição de correspondência a ser usada na etag.
- timeout
- int
Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, confira aqui.
Retornos
DataLakeFileClient
Exemplos
Criar arquivo no sistema de arquivos.
file_client = await file_system_client.create_file("myfile")
create_file_system
Cria um novo sistema de arquivos na conta especificada.
Se o sistema de arquivos com o mesmo nome já existir, um ResourceExistsError será gerado. Esse método retorna um cliente com o qual interagir com o sistema de arquivos recém-criado.
async create_file_system(metadata: Dict[str, str] | None = None, public_access: PublicAccess | None = None, **kwargs) -> Dict[str, str | datetime]
Parâmetros
Um ditado com pares nome-valor a serem associados ao sistema de arquivos como metadados. Exemplo: {'Category':'test'}
- public_access
- PublicAccess
Para especificar se os dados no sistema de arquivos podem ser acessados publicamente e o nível de acesso.
- encryption_scope_options
- dict ou EncryptionScopeOptions
Especifica o escopo de criptografia padrão a ser definido no sistema de arquivos e usado para todas as gravações futuras.
Novo na versão 12.9.0.
- timeout
- int
Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, confira aqui.
Retornos
Um dicionário de cabeçalhos de resposta.
Tipo de retorno
Exemplos
Criando um sistema de arquivos no serviço datalake.
await file_system_client.create_file_system()
delete_directory
Marca o caminho especificado para exclusão.
async delete_directory(directory: DirectoryProperties | str, **kwargs) -> DataLakeDirectoryClient
Parâmetros
- directory
- str ou DirectoryProperties
O diretório com o qual interagir. Isso pode ser o nome do diretório ou uma instância de DirectoryProperties.
- lease
- DataLakeLeaseClient ou str
Obrigatório se o arquivo tiver uma concessão ativa. O valor pode ser um objeto LeaseClient ou a ID de concessão como uma cadeia de caracteres.
- if_modified_since
- datetime
Um valor Datetime. O Azure espera que o valor de data passado seja UTC. Se o fuso horário estiver incluído, todos os datetimes não UTC serão convertidos em UTC. Se uma data for passada sem informações de fuso horário, supõe-se que seja UTC. Especifique esse cabeçalho para executar a operação somente se o recurso tiver sido modificado desde a hora especificada.
- if_unmodified_since
- datetime
Um valor Datetime. O Azure espera que o valor de data passado seja UTC. Se o fuso horário estiver incluído, todos os datetimes não UTC serão convertidos em UTC. Se uma data for passada sem informações de fuso horário, supõe-se que seja UTC. Especifique esse cabeçalho para executar a operação somente se o recurso não tiver sido modificado desde a data/hora especificada.
- etag
- str
Um valor de ETag ou o caractere curinga (*). Usado para marcar se o recurso foi alterado e agir de acordo com a condição especificada pelo parâmetro match_condition.
- match_condition
- MatchConditions
A condição de correspondência a ser usada na etag.
- timeout
- int
Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, confira aqui.
Retornos
DataLakeDirectoryClient
Exemplos
Exclua o diretório no sistema de arquivos.
await file_system_client.delete_directory("mydirectory")
delete_file
Marca o arquivo especificado para exclusão.
Excluir arquivo no sistema de arquivos.
await file_system_client.delete_file("myfile")
async delete_file(file: FileProperties | str, **kwargs) -> DataLakeFileClient
Parâmetros
- file
- str ou FileProperties
O arquivo com o qual interagir. Isso pode ser o nome do arquivo ou uma instância de FileProperties.
- lease
- DataLakeLeaseClient ou str
Obrigatório se o arquivo tiver uma concessão ativa. O valor pode ser um objeto LeaseClient ou a ID de concessão como uma cadeia de caracteres.
- if_modified_since
- datetime
Um valor Datetime. O Azure espera que o valor de data passado seja UTC. Se o fuso horário estiver incluído, todos os datetimes não UTC serão convertidos em UTC. Se uma data for passada sem informações de fuso horário, supõe-se que seja UTC. Especifique esse cabeçalho para executar a operação somente se o recurso tiver sido modificado desde a hora especificada.
- if_unmodified_since
- datetime
Um valor Datetime. O Azure espera que o valor de data passado seja UTC. Se o fuso horário estiver incluído, todos os datetimes não UTC serão convertidos em UTC. Se uma data for passada sem informações de fuso horário, supõe-se que seja UTC. Especifique esse cabeçalho para executar a operação somente se o recurso não tiver sido modificado desde a data/hora especificada.
- etag
- str
Um valor de ETag ou o caractere curinga (*). Usado para marcar se o recurso foi alterado e agir de acordo com a condição especificada pelo parâmetro match_condition.
- match_condition
- MatchConditions
A condição de correspondência a ser usada na etag.
- timeout
- int
Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, confira aqui.
Retornos
DataLakeFileClient
delete_file_system
Marca o sistema de arquivos especificado para exclusão.
O sistema de arquivos e todos os arquivos contidos nele são posteriormente excluídos durante a coleta de lixo. Se o sistema de arquivos não for encontrado, um ResourceNotFoundError será gerado.
async delete_file_system(**kwargs: Any) -> None
Parâmetros
- lease
- DataLakeLeaseClient ou str
Se especificado, delete_file_system só terá êxito se a concessão do sistema de arquivos estiver ativa e corresponder a essa ID. Obrigatório se o sistema de arquivos tiver uma concessão ativa.
- if_modified_since
- datetime
Um valor Datetime. O Azure espera que o valor de data passado seja UTC. Se o fuso horário estiver incluído, todos os datetimes não UTC serão convertidos em UTC. Se uma data for passada sem informações de fuso horário, supõe-se que seja UTC. Especifique esse cabeçalho para executar a operação somente se o recurso tiver sido modificado desde a hora especificada.
- if_unmodified_since
- datetime
Um valor Datetime. O Azure espera que o valor de data passado seja UTC. Se o fuso horário estiver incluído, todos os datetimes não UTC serão convertidos em UTC. Se uma data for passada sem informações de fuso horário, supõe-se que seja UTC. Especifique esse cabeçalho para executar a operação somente se o recurso não tiver sido modificado desde a data/hora especificada.
- etag
- str
Um valor de ETag ou o caractere curinga (*). Usado para marcar se o recurso foi alterado e agir de acordo com a condição especificada pelo parâmetro match_condition.
- match_condition
- MatchConditions
A condição de correspondência a ser usada na etag.
- timeout
- int
Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, confira aqui.
Tipo de retorno
Exemplos
Excluindo um sistema de arquivos no serviço datalake.
await file_system_client.delete_file_system()
exists
Retorna True se um sistema de arquivos existir e retornar False caso contrário.
async exists(**kwargs: Any) -> bool
Parâmetros
- timeout
- int
Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, confira aqui.
Retornos
True se existir um sistema de arquivos, caso contrário, False.
Tipo de retorno
from_connection_string
Crie FileSystemClient a partir de uma cadeia de conexão.
:return a FileSystemClient :rtype ~azure.storage.filedatalake.FileSystemClient
from_connection_string(conn_str: str, file_system_name: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any) -> Self
Parâmetros
- credential
As credenciais com as quais autenticar. Isso é opcional se a URL da conta já tiver um token SAS ou a cadeia de conexão já tiver valores de chave de acesso compartilhado. O valor pode ser uma cadeia de caracteres de token SAS, uma instância de um AzureSasCredential ou AzureNamedKeyCredential de azure.core.credentials, uma chave de acesso compartilhado de conta ou uma instância de uma classe TokenCredentials do azure.identity. As credenciais fornecidas aqui terão precedência sobre aquelas na cadeia de conexão. Se estiver usando uma instância do AzureNamedKeyCredential, "name" deverá ser o nome da conta de armazenamento e "key" deverá ser a chave da conta de armazenamento.
Exemplos
Criar FileSystemClient a partir da cadeia de conexão
from azure.storage.filedatalake import FileSystemClient
file_system_client = FileSystemClient.from_connection_string(self.connection_string, "filesystem")
get_directory_client
Faça com que um cliente interaja com o diretório especificado.
O diretório ainda não precisa existir.
get_directory_client(directory: DirectoryProperties | str) -> DataLakeDirectoryClient
Parâmetros
- directory
- str ou DirectoryProperties
O diretório com o qual interagir. Isso pode ser o nome do diretório ou uma instância de DirectoryProperties.
Retornos
Um DataLakeDirectoryClient.
Tipo de retorno
Exemplos
Fazer com que o cliente do diretório interaja com um diretório específico.
# Get the DataLakeDirectoryClient from the FileSystemClient to interact with a specific file
directory_client = file_system_client.get_directory_client("mynewdirectory")
get_file_client
Faça com que um cliente interaja com o arquivo especificado.
O arquivo ainda não precisa existir.
get_file_client(file_path: FileProperties | str) -> DataLakeFileClient
Parâmetros
- file_path
- str ou FileProperties
O arquivo com o qual interagir. Esse pode ser o caminho do arquivo (do diretório raiz) ou uma instância de FileProperties. Eg. directory/subdirectory/file
Retornos
Um DataLakeFileClient.
Tipo de retorno
Exemplos
Fazer com que o cliente de arquivo interaja com um arquivo específico.
# Get the FileClient from the FileSystemClient to interact with a specific file
file_client = file_system_client.get_file_client("mynewfile")
get_file_system_access_policy
Obtém as permissões para o sistema de arquivos especificado. As permissões indicam se os dados do sistema de arquivos podem ser acessados publicamente.
async get_file_system_access_policy(**kwargs: Any) -> Dict[str, Any]
Parâmetros
- lease
- DataLakeLeaseClient ou str
Se especificado, get_file_system_access_policy só terá êxito se a concessão do sistema de arquivos estiver ativa e corresponder a essa ID.
- timeout
- int
Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, confira aqui.
Retornos
Acessar informações de política em um ditado.
Tipo de retorno
get_file_system_properties
Retorna todos os metadados definidos pelo usuário e as propriedades do sistema para o sistema de arquivos especificado. Os dados retornados não incluem a lista de caminhos do sistema de arquivos.
async get_file_system_properties(**kwargs: Any) -> FileSystemProperties
Parâmetros
- lease
- DataLakeLeaseClient ou str
Se especificado, get_file_system_properties só terá êxito se a concessão do sistema de arquivos estiver ativa e corresponder a essa ID.
- timeout
- int
Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, confira aqui.
Retornos
Propriedades para o sistema de arquivos especificado em um objeto do sistema de arquivos.
Tipo de retorno
Exemplos
Obtendo propriedades no sistema de arquivos.
properties = await file_system_client.get_file_system_properties()
get_paths
Retorna um gerador para listar os caminhos (podem ser arquivos ou diretórios) no sistema de arquivos especificado. O gerador seguirá lentamente os tokens de continuação retornados pelo serviço.
get_paths(path: str | None = None, recursive: bool | None = True, max_results: int | None = None, **kwargs) -> AsyncItemPaged[PathProperties]
Parâmetros
- max_results
- int
Um valor opcional que especifica o número máximo de itens a serem retornados por página. Se for omitido ou maior que 5.000, a resposta incluirá até 5.000 itens por página.
- upn
Opcional. Válido somente quando o Namespace Hierárquico está habilitado para a conta. Se "true", os valores de identidade do usuário retornados nos cabeçalhos de resposta x-ms-owner, x-ms-group e x-ms-acl serão transformados de IDs de objeto do Azure Active Directory para Nomes de Entidade de Usuário. Se "false", os valores serão retornados como IDs de Objeto do Azure Active Directory. O valor padrão é false. Observe que as IDs de objeto de grupo e aplicativo não são convertidas porque não têm nomes amigáveis exclusivos.
- timeout
- int
Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, confira aqui.
Retornos
Uma resposta iterável (paginação automática) de PathProperties.
Tipo de retorno
Exemplos
Liste os blobs no sistema de arquivos.
path_list = file_system_client.get_paths()
async for path in path_list:
print(path.name + '\n')
list_deleted_paths
Retorna um gerador para listar os caminhos excluídos (arquivo ou diretório) no sistema de arquivos especificado. O gerador seguirá lentamente os tokens de continuação retornados pelo serviço.
Novo na versão 12.4.0: essa operação foi introduzida na versão da API '2020-06-12'.
list_deleted_paths(**kwargs: Any) -> AsyncItemPaged[DeletedPathProperties]
Parâmetros
- path_prefix
- str
Filtra os resultados para retornar apenas caminhos no caminho especificado.
- results_per_page
- int
Um valor opcional que especifica o número máximo de itens a serem retornados por página. Se for omitido ou maior que 5.000, a resposta incluirá até 5.000 itens por página.
- timeout
- int
Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, confira aqui.
Retornos
Uma resposta iterável (paginação automática) de DeletedPathProperties.
Tipo de retorno
set_file_system_access_policy
Define as permissões para o sistema de arquivos especificado ou políticas de acesso armazenadas que podem ser usadas com assinaturas de acesso compartilhado. As permissões indicam se os arquivos em um sistema de arquivos podem ser acessados publicamente.
async set_file_system_access_policy(signed_identifiers: Dict[str, AccessPolicy], public_access: str | PublicAccess | None = None, **kwargs) -> Dict[str, str | datetime]
Parâmetros
- signed_identifiers
- dict[str, AccessPolicy]
Um dicionário de políticas de acesso a serem associadas ao sistema de arquivos. O dicionário pode conter até 5 elementos. Um dicionário vazio limpará as políticas de acesso definidas no serviço.
- public_access
- PublicAccess
Para especificar se os dados no sistema de arquivos podem ser acessados publicamente e o nível de acesso.
- lease
- DataLakeLeaseClient ou str
Obrigatório se o sistema de arquivos tiver uma concessão ativa. O valor pode ser um objeto DataLakeLeaseClient ou a ID de concessão como uma cadeia de caracteres.
- if_modified_since
- datetime
Um valor datetime. O Azure espera que o valor de data passado seja UTC. Se o fuso horário estiver incluído, todos os datetimes não UTC serão convertidos em UTC. Se uma data for passada sem informações de fuso horário, supõe-se que seja UTC. Especifique esse cabeçalho para executar a operação somente se o recurso tiver sido modificado desde a data/hora especificada.
- if_unmodified_since
- datetime
Um valor datetime. O Azure espera que o valor de data passado seja UTC. Se o fuso horário estiver incluído, todos os datetimes não UTC serão convertidos em UTC. Se uma data for passada sem informações de fuso horário, supõe-se que seja UTC. Especifique esse cabeçalho para executar a operação somente se o recurso não tiver sido modificado desde a data/hora especificada.
- timeout
- int
Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, confira aqui.
Retornos
dict de propriedade atualizado pelo sistema de arquivos (Etag e última modificação).
Tipo de retorno
set_file_system_metadata
Define um ou mais pares nome-valor definidos pelo usuário para o sistema de arquivos especificado. Cada chamada a essa operação substitui todos os metadados existentes anexados ao sistema de arquivos. Para remover todos os metadados do sistema de arquivos, chame essa operação sem um ditado de metadados.
async set_file_system_metadata(metadata: Dict[str, str], **kwargs) -> Dict[str, str | datetime]
Parâmetros
Um ditado que contém pares nome-valor a serem associados ao sistema de arquivos como metadados. Exemplo: {'category':'test'}
- lease
- DataLakeLeaseClient ou str
Se especificado, set_file_system_metadata só terá êxito se a concessão do sistema de arquivos estiver ativa e corresponder a essa ID.
- if_modified_since
- datetime
Um valor Datetime. O Azure espera que o valor de data passado seja UTC. Se o fuso horário estiver incluído, todos os datetimes não UTC serão convertidos em UTC. Se uma data for passada sem informações de fuso horário, supõe-se que seja UTC. Especifique esse cabeçalho para executar a operação somente se o recurso tiver sido modificado desde a hora especificada.
- if_unmodified_since
- datetime
Um valor Datetime. O Azure espera que o valor de data passado seja UTC. Se o fuso horário estiver incluído, todos os datetimes não UTC serão convertidos em UTC. Se uma data for passada sem informações de fuso horário, supõe-se que seja UTC. Especifique esse cabeçalho para executar a operação somente se o recurso não tiver sido modificado desde a data/hora especificada.
- etag
- str
Um valor de ETag ou o caractere curinga (*). Usado para marcar se o recurso foi alterado e agir de acordo com a condição especificada pelo parâmetro match_condition.
- match_condition
- MatchConditions
A condição de correspondência a ser usada na etag.
- timeout
- int
Define o tempo limite do lado do servidor para a operação em segundos. Para obter mais informações, confira https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Esse valor não é rastreado ou validado no cliente. Para configurar tempos limite de rede do lado do cliente, confira aqui.
Retornos
dict de propriedade atualizado pelo sistema de arquivos (Etag e última modificação).
Exemplos
Definindo metadados no contêiner.
# Create key, value pairs for metadata
metadata = {'type': 'test'}
# Set metadata on the file system
await file_system_client.set_file_system_metadata(metadata=metadata)
Atributos
api_version
A versão da API de Armazenamento usada para solicitações.
location_mode
O modo de localização que o cliente está usando no momento.
Por padrão, isso será "primário". As opções incluem "primário" e "secundário".
primary_endpoint
A URL completa do ponto de extremidade primário.
primary_hostname
O nome do host do ponto de extremidade primário.
secondary_endpoint
A URL completa do ponto de extremidade secundário, se configurada.
Se não estiver disponível, um ValueError será gerado. Para especificar explicitamente um nome de host secundário, use o argumento opcional secondary_hostname palavra-chave na instanciação.
Exceções
secondary_hostname
O nome do host do ponto de extremidade secundário.
Se não estiver disponível, este será Nenhum. Para especificar explicitamente um nome de host secundário, use o argumento opcional secondary_hostname palavra-chave na instanciação.
url
A URL completa do ponto de extremidade para essa entidade, incluindo o token SAS, se usado.
Pode ser o ponto de extremidade primário ou o ponto de extremidade secundário, dependendo do atual location_mode. :returns: a URL completa do ponto de extremidade para essa entidade, incluindo o token SAS, se usado. :rtype: str
Azure SDK for Python