CACHE TABLE
Aplica-se a: Databricks Runtime
Armazena em cache o conteúdo de uma tabela ou saída de uma consulta com o nível de armazenamento determinado no Apache Spark cache. Se uma consulta for armazenada em cache, uma exibição temporária será criada para essa consulta. Isso reduz a verificação dos arquivos originais em consultas futuras.
Sintaxe
CACHE [ LAZY ] TABLE table_name
[ OPTIONS ( 'storageLevel' [ = ] value ) ] [ [ AS ] query ]
Veja Cache de disco vs. Cache Spark para as diferenças entre o cache de disco e o cache Apache Spark.
Parâmetros
LENTIDÃO
Só armazena em cache a tabela quando ela é usada pela primeira vez, em vez de imediatamente.
-
Identifica a exibição ou a tabela Delta a armazenar em cache. O nome não deve incluir uma especificação temporal ou especificação de opções. Se a tabela não puder ser encontrada, o Azure Databricks gerará um erro TABLE_OR_VIEW_NOT_FOUND.
OPÇÕES ( 'storageLevel' [ = ] valor )
OPTIONS
cláusula com parstorageLevel
chave e valor. Um aviso é emitido quando uma chave diferente destorageLevel
é usada. As opções válidas parastorageLevel
são:NONE
DISK_ONLY
DISK_ONLY_2
MEMORY_ONLY
MEMORY_ONLY_2
MEMORY_ONLY_SER
MEMORY_ONLY_SER_2
MEMORY_AND_DISK
MEMORY_AND_DISK_2
MEMORY_AND_DISK_SER
MEMORY_AND_DISK_SER_2
OFF_HEAP
Uma Exceção é lançada quando um valor inválido é definido para
storageLevel
. SestorageLevel
não for definido explicitamente usando a cláusulaOPTIONS
, o padrãostorageLevel
será definido comoMEMORY_AND_DISK
.query
Uma consulta que produz as linhas a serem armazenadas em cache. Pode estar em um dos seguintes formatos:
- Uma instrução
SELECT
- Uma instrução
TABLE
- Uma instrução
FROM
- Uma instrução
Exemplos
> CACHE TABLE testCache OPTIONS ('storageLevel' 'DISK_ONLY') SELECT * FROM testData;