saveAsTable
Enregistre le contenu du DataFrame en tant que table spécifiée. Si la table existe déjà, le comportement dépend du paramètre mode (la default est de lever une exception). Lorsque mode est 'overwrite', le schéma du DataFrame n'a pas besoin de correspondre au schéma de table existant.
Syntaxe
saveAsTable(name, format=None, mode=None, partitionBy=None, **options)
parameter
parameter | Type | Description |
|---|---|---|
| str | Le nom de la table. |
| str, facultatif | Le format utilisé pour enregistrer. |
| str, facultatif | Le comportement lorsque des données existent déjà. Les valeurs acceptées sont |
| chaîne ou liste, facultatif | Noms des colonnes de partitionnement. |
| dict | Options de chaîne supplémentaires. |
Renvoie
Aucun
Notes
Lorsque mode est 'append', si une table existe déjà, son format et ses options sont utilisés. Contrairement à DataFrameWriter.insertInto, DataFrameWriter.saveAsTable utilise les noms de colonne pour trouver les positions de colonne correctes.
Exemples
Créer une table à partir d'un DataFrame, et la relire.
spark.sql("DROP TABLE IF EXISTS tblA")
spark.createDataFrame([
(100, "Alice"), (120, "Bob"), (140, "Tom")],
schema=["age", "name"]
).write.saveAsTable("tblA")
spark.read.table("tblA").sort("age").show()
# +---+------------+
# |age| name|
# +---+------------+
# |100|Alice|
# |120|Bob|
# |140| Tom|
# +---+------------+
spark.sql("DROP TABLE tblA")