Compartilhar via


Função com valor de tabela read_statestore

Aplica-se a:verificação marcada como sim Databricks SQL marca de seleção positiva Databricks Runtime 14.3 e versões posteriores

Uma função com valor de tabela para leitura de registros do repositório de estado de consultas de streaming. A relação retornada dá suporte apenas para a execução como uma consulta em lote.

Sintaxe

read_statestore ( path [, option_key => option_value ] [ ... ] )

Argumentos

read_statestore requer a invocação do parâmetro nomeado para seus parâmetros opcionais.

  • path: um STRING literal. O caminho do local do ponto de verificação da consulta de streaming.
  • option_key: o nome da opção a ser configurada. Você precisa usar backticks (`) para opções que contenham pontos (.).
  • option_value: uma expressão constante para a qual definir a opção. Aceita literais e funções escalares.

Todos os option_values não diferenciam maiúsculas de minúsculas.

option_key Tipo Padrão Descrição
batchId BIGINT ID do lote mais recente Representa o lote de destino para leitura. Essa opção é usada quando os usuários desejam realizar viagens no tempo. O lote deve ser confirmado, mas ainda não foi limpo.
OperatorId BIGINT 0 Representa o operador de destino para leitura. Essa opção é usada quando a consulta está usando vários operadores com estado.
storeName STRING 'DEFAULT' Representa o lado de destino a ser lido. Essa opção é usada quando os usuários desejam ler o estado da junção entre fluxo e fluxo.
joinSide STRING 'None' Representa o lado de destino a ser lido. Essa opção é usada quando os usuários desejam ler o estado da junção entre fluxo e fluxo. Uma opção entre 'Left', 'Right' e 'None'.

Retornos

A função retorna um conjunto de resultados com as seguintes colunas.

Observação

As colunas aninhadas para chave e valor dependem muito do esquema de entrada do operador com estado e do tipo de operador.

Nome Tipo de dados Nullable Standard Descrição
id STRUCT Não Chave da linha do operador com estado armazenada no ponto de verificação de estado.
value STRUCT Sim Valor da linha do operador com estado armazenada no ponto de verificação de estado.
partition_id INTEGER Não A partição que contém o registro.
shardId STRING Não Um identificador exclusivo para o fragmento do qual os dados foram lidos.
sequenceNumber BIGINT Não O identificador exclusivo do registro dentro de seu fragmento.
approximateArrivalTimestamp TIMESTAMP Não A hora aproximada em que o registro foi inserido no fluxo.

Exemplos

- Read from state
> SELECT * FROM read_statestore('/checkpoint/path');

– Read from state with storeName option
> SELECT * FROM read_statestore(
      '/checkpoint/path',
      operatorId => 0,
      batchId => 2,
      storeName => 'default'
  );

– Read from state with joinSide option

> SELECT * FROM read_statestore(
      '/checkpoint/path',
      joinSide => 'left'
  );