Partilhar via


read_statestore função com valor de tabela

Aplica-se a: Marque Sim Databricks SQL Marque Sim Databricks Runtime 14.3 e superior

Importante

Esta funcionalidade está em Pré-visualização Pública.

Uma função com valor de tabela para ler registros do armazenamento de estado de consultas de streaming. A relação retornada suporta apenas a execução como uma consulta em lotes.

Sintaxe

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

Argumentos

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

  • path: A 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 contêm pontos (.).
  • option_value: Uma expressão constante para definir a opção. Aceita literais e funções escalares.

Todos os s não diferenciam maiúsculas option_valuede minúsculas.

option_key Type Predefinido Description
batchId BIGINT ID do lote mais recente Representa o lote de destino a partir do qual ler. Esta opção é usada quando os usuários desejam realizar viagens no tempo. O lote deve ser comprometido, mas ainda não limpo.
OperatorId BIGINT 0 Representa o operador de destino a partir do qual ler. Essa opção é usada quando a consulta está usando vários operadores com monitoração de estado.
storeName STRING 'DEFAULT' Representa o lado de destino a partir do qual ler. Essa opção é usada quando os usuários desejam ler o estado da junção de fluxo de fluxo.
joinSide STRING 'None' Representa o lado de destino a partir do qual ler. Essa opção é usada quando os usuários desejam ler o estado da junção de fluxo de fluxo. Um dos: 'Left', 'Right', 'None'.

Devoluções

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

Nota

As colunas aninhadas para chave e valor dependem fortemente do esquema de entrada do operador stateful e do tipo de operador.

Name Tipo de dados Pode ser nulo Standard Description
id STRUCT Não Linha de chave do operador stateful armazenada no ponto de verificação de estado.
value STRUCT Sim Linha de valor do operador stateful armazenado 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 de onde os dados foram lidos.
sequenceNumber BIGINT Não O identificador exclusivo do registro em 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'
  );