Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
API каталога, доступный для SparkSession.catalogпользователей. Это тонкая оболочка вокруг своей реализации org.apache.spark.sql.catalog.CatalogScala.
Синтаксис
# 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) |
Создает таблицу на основе набора данных в источнике данных и возвращает связанный кадр данных. |
dropTempView(viewName) |
Удаляет локальное временное представление с заданным именем. Кроме того, распаковывает представление, если оно было кэшировано. |
dropGlobalTempView(viewName) |
Удаляет глобальное временное представление с заданным именем. Кроме того, распаковывает представление, если оно было кэшировано. |
isCached(tableName) |
Возвращает значение true, если таблица в настоящее время кэшируется в памяти. |
cacheTable(tableName, storageLevel) |
Кэширует указанную таблицу в памяти или с заданным уровнем хранилища. По умолчанию используется MEMORY_AND_DISK. |
uncacheTable(tableName) |
Удаляет указанную таблицу из кэша в памяти. |
clearCache() |
Удаляет все кэшированные таблицы из кэша в памяти. |
refreshTable(tableName) |
Отменяет и обновляет все кэшированные данные и метаданные данной таблицы. |
recoverPartitions(tableName) |
Восстанавливает все разделы данной таблицы и обновляет каталог. Работает только с секционированных таблицами. |
refreshByPath(path) |
Отменяет и обновляет все кэшированные данные и метаданные для любого кадра данных, содержащего заданный путь к источнику данных. |
Примеры
spark.catalog.currentDatabase()
'default'
spark.catalog.listDatabases()
[Database(name='default', catalog='spark_catalog', description='default database', ...)]
_ = spark.sql("CREATE TABLE tbl1 (name STRING, age INT) USING parquet")
spark.catalog.tableExists("tbl1")
True
spark.catalog.cacheTable("tbl1")
spark.catalog.isCached("tbl1")
True
spark.catalog.uncacheTable("tbl1")
spark.catalog.isCached("tbl1")
False