Pular para o conteúdo principal

toTable (DataStreamWriter)

Inicie a execução da consulta de transmissão, enviando continuamente os resultados para a tabela especificada à medida que novos dados chegam. Retorna um objeto StreamingQuery.

Sintaxe

toTable(tableName, format=None, outputMode=None, partitionBy=None, queryName=None, **options)

Parâmetros

Parâmetro

Tipo

Descrição

tableName

str

Nome da tabela.

format

str, opcional

O formato usado para salvar.

outputMode

str, opcional

Como os dados são gravados no coletor: append, complete ou update.

partitionBy

str ou lista, opcional

Nomes das colunas de particionamento. Ignorado para tabelas v2 que já existem.

queryName

str, opcional

Nome único para a consulta.

**options

-

Todas as outras opções de strings. Forneça um checkpointLocation para a maioria das transmissões.

Devoluções

StreamingQuery

Notas

Para tabelas v1, as colunas partitionBy são sempre respeitadas. Para tabelas v2, partitionBy só é respeitado se a tabela ainda não existir.

Exemplos

Salve uma transmissão de dados em uma tabela:

Python
import tempfile
import time
_ = spark.sql("DROP TABLE IF EXISTS my_table2")
with tempfile.TemporaryDirectory(prefix="toTable") as d:
q = spark.readStream.format("rate").option(
"rowsPerSecond", 10).load().writeStream.toTable(
"my_table2",
queryName='that_query',
outputMode="append",
format='parquet',
checkpointLocation=d)
time.sleep(3)
q.stop()
spark.read.table("my_table2").show()
_ = spark.sql("DROP TABLE my_table2")