指定したテーブルをメモリ内または特定のストレージ レベルでキャッシュします。 既定のMEMORY_AND_DISK。
構文
cacheTable(tableName: str, storageLevel: StorageLevel = None)
パラメーター
| パラメーター | タイプ | 説明 |
|---|---|---|
tableName |
str | 取得するテーブルの名前。 カタログ名で修飾できます。 |
storageLevel |
StorageLevel任意 |
永続化のために設定するストレージ レベル。 |
メモ
キャッシュされたデータは、クラスター上のすべての Spark セッションで共有されます。
例示
_ = spark.sql("DROP TABLE IF EXISTS tbl1")
_ = spark.sql("CREATE TABLE tbl1 (name STRING, age INT) USING parquet")
spark.catalog.cacheTable("tbl1")
# or
spark.catalog.cacheTable("tbl1", StorageLevel.OFF_HEAP)
# Throw an analysis exception when the table does not exist.
spark.catalog.cacheTable("not_existing_table")
# Traceback (most recent call last):
# ...
# AnalysisException: ...
# Using the fully qualified name for the table.
spark.catalog.cacheTable("spark_catalog.default.tbl1")
spark.catalog.uncacheTable("tbl1")
_ = spark.sql("DROP TABLE tbl1")