メインコンテンツまでスキップ

カタログ

ユーザー向けのカタログ API。 SparkSession.catalogからアクセスできます。これは、Scala 実装org.apache.spark.sql.catalog.Catalogをラップした薄いラッパーです。

構文

Python
# Access through SparkSession
spark.catalog

方法

手法

説明

currentCatalog()

このセッションの現在のデフォルト カタログを返します。

setCurrentCatalog(catalogName)

このセッションの現在のデフォルト カタログを設定します。

listCatalogs(pattern)

このセッション内のカタログのリストを返します。

currentDatabase()

このセッションの現在のデフォルト データベースを返します。

setCurrentDatabase(dbName)

このセッションの現在のデフォルト データベースを設定します。

listDatabases(pattern)

すべてのセッションで利用可能なデータベースのリストを返します。

getDatabase(dbName)

指定された名前のデータベースを取得します。データベースが見つからない場合は AnalysisException をスローします。

databaseExists(dbName)

指定された名前のデータベースが存在するかどうかを確認します。

listTables(dbName, pattern)

指定されたデータベース内のテーブルとビューのリストを返します。すべての一時ビューが含まれます。

getTable(tableName)

指定された名前のテーブルまたはビューを取得します。テーブルが見つからない場合は AnalysisException をスローします。

tableExists(tableName, dbName)

指定された名前のテーブルまたはビューが存在するかどうかを確認します。

listColumns(tableName, dbName)

指定されたデータベース内の指定されたテーブルまたはビューの列のリストを返します。

listFunctions(dbName, pattern)

指定されたデータベースに登録されている関数のリストを返します。すべての一時機能が含まれます。

functionExists(functionName, dbName)

指定された名前の関数が存在するかどうかを確認します。一時的な機能が含まれます。

getFunction(functionName)

指定された名前の関数を取得します。関数が見つからない場合は AnalysisException をスローします。

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

データソース内のデータセットに基づいてテーブルを作成し、関連付けられたDataFrameを返します。

dropTempView(viewName)

指定された名前のローカル一時ビューを削除します。ビューがキャッシュされている場合は、キャッシュを解除します。

dropGlobalTempView(viewName)

指定された名前のグローバル一時ビューを削除します。ビューがキャッシュされている場合は、キャッシュを解除します。

isCached(tableName)

テーブルが現在メモリ内にキャッシュされている場合は true を返します。

cacheTable(tableName, storageLevel)

指定されたテーブルをメモリ内または指定されたストレージ レベルでキャッシュします。デフォルトは MEMORY_AND_DISK です。

uncacheTable(tableName)

指定されたテーブルをメモリ内キャッシュから削除します。

clearCache()

キャッシュされたすべてのテーブルをメモリ内キャッシュから削除します。

refreshTable(tableName)

指定されたテーブルのすべてのキャッシュされたデータとメタデータを無効化して更新します。

recoverPartitions(tableName)

指定されたテーブルのすべてのパーティションを回復し、カタログを更新します。パーティション化されたテーブルでのみ機能します。

refreshByPath(path)

指定されたデータ ソース パスを含むすべてのDataFrameのすべてのキャッシュされたデータとメタデータを無効にして更新します。

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