Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Démarre l’exécution de la requête de diffusion en continu, en mettant continuellement les résultats dans la table donnée à mesure que de nouvelles données arrivent. Renvoie un objet StreamingQuery.
Syntaxe
toTable(tableName, format=None, outputMode=None, partitionBy=None, queryName=None, **options)
Paramètres
| Paramètre | Type | Description |
|---|---|---|
tableName |
str | Nom de la table. |
format |
str, facultatif | Format utilisé pour enregistrer. |
outputMode |
str, facultatif | Comment les données sont écrites dans le récepteur : append, completeou update. |
partitionBy |
str ou list, facultatif | Noms des colonnes de partitionnement. Ignoré pour les tables v2 qui existent déjà. |
queryName |
str, facultatif | Nom unique de la requête. |
**options |
Toutes les autres options de chaîne. Fournissez la checkpointLocation plupart des flux. |
Retours
StreamingQuery
Remarques
Pour les tables v1, partitionBy les colonnes sont toujours respectées. Pour les tables v2, partitionBy n’est respecté que si la table n’existe pas encore.
Exemples
Enregistrez un flux de données dans une table :
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")