toTable (DataStreamWriter)

ストリーミング クエリの実行を開始し、新しいデータが到着すると、指定されたテーブルに継続的に結果を出力します。 StreamingQuery オブジェクトを返します。

構文

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

パラメーター

パラメーター タイプ 説明
tableName str テーブルの名前。
format str、省略可能 保存に使用する形式。
outputMode str、省略可能 シンクにデータを書き込む方法: appendcomplete、または update
partitionBy str または list、省略可能 パーティション分割列の名前。 既に存在する v2 テーブルの場合は無視されます。
queryName str、省略可能 クエリの一意の名前。
**options
その他のすべての文字列オプション。 ほとんどのストリームに checkpointLocation を指定します。

返品

StreamingQuery

メモ

v1 テーブルの場合、 partitionBy 列は常に考慮されます。 v2 テーブルの場合、 partitionBy はテーブルがまだ存在しない場合にのみ考慮されます。

例示

データ ストリームをテーブルに保存します。

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")