Compartilhar via


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.AsyncStorageAccountHostsMixin
FileSystemClient
azure.storage.filedatalake._file_system_client.FileSystemClient
FileSystemClient

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
valor padrão: None

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.


   await file_system_client.delete_file("myfile")

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
Obrigatório

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
Obrigatório

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
Obrigatório

O diretório com o qual interagir. Isso pode ser o nome do diretório ou uma instância de DirectoryProperties.

metadata
dict(str, str)
Obrigatório

Pares de nome-valor associados ao arquivo como metadados.

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
Obrigatório

O arquivo com o qual interagir. Isso pode ser o nome do arquivo ou uma instância de FileProperties.

content_settings
ContentSettings
Obrigatório

Objeto ContentSettings usado para definir propriedades de caminho.

metadata
dict(str, str)
Obrigatório

Pares de nome-valor associados ao arquivo como metadados.

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.

expires_on
datetime ou int

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

metadata
dict(str, str)
Obrigatório

Um ditado com pares nome-valor a serem associados ao sistema de arquivos como metadados. Exemplo: {'Category':'test'}

public_access
PublicAccess
Obrigatório

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
Obrigatório

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
Obrigatório

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

conn_str
str
Obrigatório

Uma cadeia de conexão com uma conta de Armazenamento do Azure.

file_system_name
str
Obrigatório

O nome do sistema de arquivos com o qual interagir.

credential
valor padrão: None

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
Obrigatório

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
Obrigatório

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

path
str
Obrigatório

Filtra os resultados para retornar apenas caminhos no caminho especificado.

recursive
Optional[bool]
Obrigatório

Opcional. Defina True para recursivo, False para iterativo.

max_results
int
Obrigatório

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

<xref:azure.core.paging.AsyncItemPaged>[DeletedPathProperties]

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]
Obrigatório

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
Obrigatório

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

metadata
dict[str, str]
Obrigatório

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