Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Aplica-se a:
Databricks SQL
Databricks Runtime 11.3 LTS e superior
Retorna o estado no nível de arquivo de um Auto Loader ou read_files fluxo de dados.
Sintaxe
cloud_files_state( { TABLE ( table_name ) | checkpoint } )
Argumentos
-
table_name: O identificador da tabela de streaming que está sendo gravada pelo
read_files. O nome não deve incluir uma especificação temporal. Disponível em Databricks Runtime 13.3 LTS e superior. -
checkpoint: UmSTRINGliteral. O diretório de ponto de verificação para um fluxo usando a fonte Auto Loader. Consulte O que é Auto Loader?.
Devoluções
Retorna uma tabela com o seguinte esquema:
path STRING NOT NULL PRIMARY KEYO caminho de um arquivo.
size BIGINT NOT NULLO tamanho de um arquivo em bytes.
create_time TIMESTAMP NOT NULLA hora em que um arquivo foi criado.
discovery_time TIMESTAMP NOT NULLAplica-se a:
Databricks SQL
Databricks Runtime 16.4 e superiorA hora em que um arquivo foi descoberto.
processed_time TIMESTAMP NOT NULLAplica-se a:
Databricks SQL
Databricks Runtime 16.4 e superior quando cloudFiles.cleanSourceestá habilitado. Consulte Opções do carregador automático.A hora em que um ficheiro foi processado. Se um lote encontrar uma falha e for repetido, um arquivo poderá ser processado várias vezes. Quando ocorrem novas tentativas, este campo contém o tempo de processamento mais recente.
commit_time TIMESTAMPAplica-se a:
Databricks SQL
Databricks Runtime 16.4 e superior quando cloudFiles.cleanSourceestá habilitado. Consulte Opções do carregador automático.O tempo que um arquivo foi confirmado no ponto de verificação após o processamento.
NULLse o ficheiro ainda não estiver processado. Não há latência garantida para marcar um arquivo como confirmado; Um arquivo pode ser processado, mas marcado como comprometido arbitrariamente mais tarde. Marcar o arquivo como confirmado significa que o Auto Loader não requer o arquivo para processamento novamente.archive_time TIMESTAMPAplica-se a:
Databricks SQL
Databricks Runtime 16.4 e superior quando cloudFiles.cleanSourceestá habilitado. Consulte Opções do carregador automático.A hora em que um arquivo foi arquivado.
NULLse o ficheiro não tiver sido arquivado.archive_mode STRINGAplica-se a:
Databricks SQL
Databricks Runtime 16.4 e superior quando cloudFiles.cleanSourceestá habilitado. Consulte Opções do carregador automático.MOVEsecloudFiles.cleanSourcefoi definido comoMOVEquando o arquivo foi arquivado.DELETEsecloudFiles.cleanSourcefoi definido comoDELETEquando o arquivo foi arquivado.NULLsecloudFiles.cleanSourcefoi definido comoOFF(padrão).move_location STRINGAplica-se a:
Databricks SQL
Databricks Runtime 16.4 e superior quando cloudFiles.cleanSourceestá habilitado. Consulte Opções do carregador automático.O caminho completo de onde o arquivo foi movido durante a operação de arquivamento quando
cloudFiles.cleanSourcefoi definido comoMOVE.NULLse o ficheiro não tiver sido arquivado oucloudFiles.cleanSourcefor um dosDELETEouOFF.source_id STRINGO identificador da origem do Auto Loader na consulta de streaming. Esse valor é
'0'para fluxos que ingerem de um único local de armazenamento de objetos na nuvem.flow_name STRINGAplica-se a:
Databricks SQL
Databricks Runtime 13.3 e superiorRepresenta um fluxo de streaming específico no Lakeflow Spark Declarative Pipelines que contém uma ou mais fontes de arquivos na nuvem. NULO se não tiver sido dada table_name.
ingestion_state STRINGAplica-se a:
Databricks SQL
Databricks Runtime 16.4 e superior quando cloudFiles.cleanSourceestá habilitado. Consulte Opções do carregador automático.Se o ficheiro foi ingerido, indicado por um dos seguintes estados:
-
NULL: O ficheiro ainda não foi processado ou o estado do ficheiro não pode ser determinado pelo Carregador Automático. -
PROCESSING: O ficheiro está a ser processado. -
SKIPPED_CORRUPTED: O arquivo não foi ingerido porque estava corrompido. -
SKIPPED_MISSING: O ficheiro não foi ingerido porque não foi encontrado durante o processamento. -
INGESTED: O arquivo foi processado pelo coletor pelo menos uma vez. Pode ser processado novamente por sumidouros não idempotentes, comoforeachBatchem caso de falhas no fluxo. Somente os arquivos com um campo não nulocommit_timeque estão no estado concluíram oINGESTEDprocessamento. -
NOT_RECOGNIZED_BY_DBR: Reservado para compatibilidade de versão. Esse estado será exibido para estados introduzidos em versões posteriores do Databricks Runtime que não são reconhecidas por versões anteriores do Databricks Runtime.
-
Permissões
Você precisa ter:
- Se estiver usando um identificador de tabela de streaming
- Databricks Runtime 17.1 e inferior:
OWNERprivilégios na tabela de streaming - Databricks SQL e Databricks Runtime 17.2 ou superior: privilégios
SELECTeMODIFYna tabela de streaming.
- Databricks Runtime 17.1 e inferior:
-
READ FILESprivilégios de acesso no local do ponto de verificação ao fornecer um ponto de verificação num local externo.
Exemplos
-- Simple example from checkpoint
> SELECT path FROM CLOUD_FILES_STATE('/some/checkpoint');
/some/input/path
/other/input/path
-- Simple example from source subdir
> SELECT path FROM CLOUD_FILES_STATE('/some/checkpoint/sources/0');
/some/input/path
/other/input/path
-- Simple example from streaming table
> SELECT path FROM CLOUD_FILES_STATE(TABLE(my_streaming_table));
/some/input/path
/other/input/path
Limitações
- Os usuários que leem um modo de exibição que faz referência
cloud_files_stateem uma tabela de streaming devem terSELECTprivilégios na exibição e os privilégios necessários na tabela de streaming.