Pular para o conteúdo principal

Consulta de streaming

Um identificador para uma consulta que é executada continuamente em segundo plano à medida que novos dados chegam. Todos os métodos são seguros para uso em múltiplas threads.

Sintaxe

Python
# Returned by DataStreamWriter.start() or DataStreamWriter.toTable()
q = df.writeStream.format("console").start()

Propriedades

Propriedade

Descrição

id

Retorna o ID exclusivo desta consulta, que persiste entre reinicializações a partir dos dados do ponto de verificação.

runId

Retorna o ID único desta consulta, que não persiste entre reinicializações.

name

Retorna o nome da consulta especificado pelo usuário ou None se não for especificado.

isActive

Retorna se esta consulta de transmissão está atualmente ativa.

status

Retorna o estado atual da consulta como um dicionário.

recentProgress

Retorna uma matriz com as StreamingQueryProgress atualizações mais recentes para esta consulta.

lastProgress

Retorna a atualização mais recente StreamingQueryProgress , ou None se não houve atualizações.

Métodos

Método

Descrição

awaitTermination(timeout)

Aguarda o término desta consulta, seja por stop() ou por uma exceção.

processAllAvailable()

Bloqueia até que todos os dados disponíveis na origem tenham sido processados e enviados para o destino. Destinado a testes.

stop()

Interrompe esta consulta de transmissão.

explain(extended)

Imprime os planos (lógicos e físicos) no console para depuração.

exception()

Retorna StreamingQueryException se a consulta terminou com uma exceção, ou None.

Exemplos

Python
sdf = spark.readStream.format("rate").load()
sq = sdf.writeStream.format('memory').queryName('this_query').start()
sq.isActive
# True
sq.name
# 'this_query'
sq.awaitTermination(5)
# False
sq.stop()
sq.isActive
# False