Aller au contenu principal

Catalogue

API de catalogue destinée aux utilisateurs, accessible via SparkSession.catalog. Il s'agit d'une simple enveloppe autour de son implémentation Scala org.apache.spark.sql.catalog.Catalog.

Syntaxe

Python
# Access through SparkSession
spark.catalog

Méthodes

Méthode

Description

currentCatalog()

Retourne le catalogue default actuel dans cette session.

setCurrentCatalog(catalogName)

Définit le catalogue default actuel dans cette session.

listCatalogs(pattern)

Renvoie une liste de catalogues dans cette session.

currentDatabase()

Renvoie la base de données default actuelle dans cette session.

setCurrentDatabase(dbName)

Définit la base de données default actuelle dans cette session.

listDatabases(pattern)

Renvoie une liste de bases de données disponibles pour toutes les sessions.

getDatabase(dbName)

Obtient la base de données avec le nom spécifié. Lève une AnalysisException lorsque la base de données est introuvable.

databaseExists(dbName)

Vérifie si la base de données avec le nom spécifié existe.

listTables(dbName, pattern)

Renvoie une liste de tables et de vues dans la base de données spécifiée. Inclut toutes les vues temporaires.

getTable(tableName)

Récupère la table ou la vue avec le nom spécifié. Déclenche une AnalysisException si aucune table n'est trouvée.

tableExists(tableName, dbName)

Vérifie si la table ou la vue portant le nom spécifié existe.

listColumns(tableName, dbName)

Renvoie la liste des colonnes pour la table ou la vue donnée dans la base de données spécifiée.

listFunctions(dbName, pattern)

Renvoie la liste des fonctions enregistrées dans la base de données spécifiée. Inclut toutes les fonctions temporaires.

functionExists(functionName, dbName)

Vérifie si la fonction portant le nom spécifié existe. Comprend les fonctions temporaires.

getFunction(functionName)

Obtient la fonction avec le nom spécifié. Déclenche une AnalysisException lorsque la fonction est introuvable.

createTable(tableName, path, source, schema, description, **options)

Crée une table basée sur le dataset dans une source de données et renvoie le DataFrame associé.

dropTempView(viewName)

Supprime la vue temporaire locale avec le nom donné. Annule également la mise en cache de la vue si elle était en cache.

dropGlobalTempView(viewName)

Supprime la vue temporaire globale portant le nom spécifié. Annule également la mise en cache de la vue si elle était en cache.

isCached(tableName)

Renvoie true si la table est actuellement mise en cache en mémoire.

cacheTable(tableName, storageLevel)

Met en cache la table spécifiée en mémoire ou avec le niveau de stockage donné. La valeur par default est MEMORY_AND_DISK.

uncacheTable(tableName)

Supprime la table spécifiée du cache en mémoire.

clearCache()

Supprime toutes les tables mises en cache du cache en mémoire.

refreshTable(tableName)

Invalide et refresh toutes les données et métadonnées mises en cache de la table donnée.

recoverPartitions(tableName)

Récupère toutes les partitions de la table donnée et met à jour le catalogue. Ne fonctionne qu'avec les tables partitionnées.

refreshByPath(path)

Invalide et refresh toutes les données et métadonnées mises en cache pour tout DataFrame contenant le chemin de source de données donné.

Méthode

Description

currentCatalog()

Retourne le catalogue default actuel dans cette session.

setCurrentCatalog(catalogName)

Définit le catalogue default actuel dans cette session.

listCatalogs(pattern)

Renvoie une liste de catalogues dans cette session.

currentDatabase()

Renvoie la base de données default actuelle dans cette session.

setCurrentDatabase(dbName)

Définit la base de données default actuelle dans cette session.

listDatabases(pattern)

Renvoie une liste de bases de données disponibles pour toutes les sessions.

getDatabase(dbName)

Obtient la base de données avec le nom spécifié. Lève une AnalysisException lorsque la base de données est introuvable.

databaseExists(dbName)

Vérifie si la base de données avec le nom spécifié existe.

listTables(dbName, pattern)

Renvoie une liste de tables et de vues dans la base de données spécifiée. Inclut toutes les vues temporaires.

getTable(tableName)

Récupère la table ou la vue avec le nom spécifié. Déclenche une AnalysisException si aucune table n'est trouvée.

tableExists(tableName, dbName)

Vérifie si la table ou la vue portant le nom spécifié existe.

listColumns(tableName, dbName)

Renvoie la liste des colonnes pour la table ou la vue donnée dans la base de données spécifiée.

listFunctions(dbName, pattern)

Renvoie la liste des fonctions enregistrées dans la base de données spécifiée. Inclut toutes les fonctions temporaires.

functionExists(functionName, dbName)

Vérifie si la fonction portant le nom spécifié existe. Comprend les fonctions temporaires.

getFunction(functionName)

Obtient la fonction avec le nom spécifié. Déclenche une AnalysisException lorsque la fonction est introuvable.

createTable(tableName, path, source, schema, description, **options)

Crée une table basée sur le dataset dans une source de données et renvoie le DataFrame associé.

dropTempView(viewName)

Supprime la vue temporaire locale avec le nom donné. Annule également la mise en cache de la vue si elle était en cache.

dropGlobalTempView(viewName)

Supprime la vue temporaire globale portant le nom spécifié. Annule également la mise en cache de la vue si elle était en cache.

isCached(tableName)

Renvoie true si la table est actuellement mise en cache en mémoire.

cacheTable(tableName, storageLevel)

Met en cache la table spécifiée en mémoire ou avec le niveau de stockage donné. La valeur par default est MEMORY_AND_DISK.

uncacheTable(tableName)

Supprime la table spécifiée du cache en mémoire.

clearCache()

Supprime toutes les tables mises en cache du cache en mémoire.

refreshTable(tableName)

Invalide et refresh toutes les données et métadonnées mises en cache de la table donnée.

recoverPartitions(tableName)

Récupère toutes les partitions de la table donnée et met à jour le catalogue. Ne fonctionne qu'avec les tables partitionnées.

refreshByPath(path)

Invalide et refresh toutes les données et métadonnées mises en cache pour tout DataFrame contenant le chemin de source de données donné.

Exemples

Python
spark.catalog.currentDatabase()
Output
'default'
Python
spark.catalog.listDatabases()
Output
[Database(name='default', catalog='spark_catalog', description='default database', ...)]
Python
_ = spark.sql("CREATE TABLE tbl1 (name STRING, age INT) USING parquet")
spark.catalog.tableExists("tbl1")
Output
True
Python
spark.catalog.cacheTable("tbl1")
spark.catalog.isCached("tbl1")
Output
True
Python
spark.catalog.uncacheTable("tbl1")
spark.catalog.isCached("tbl1")
Output
False