Поделиться через


CACHE TABLE

Область применения: флажок Databricks Runtime

Кэширует содержимое таблицы или выходные данные запроса на заданном уровне хранилища в кэше Apache Spark. Если запрос кэшируется, для этого запроса создается временное представление. Это позволяет сократить число проверок исходных файлов при последующих запросах.

Синтаксис

CACHE [ LAZY ] TABLE table_name
  [ OPTIONS ( 'storageLevel' [ = ] value ) ] [ [ AS ] query ]

Сведения о различиях между кэшированием дисков и кэшем Apache Spark см. в кэше дисков и Spark.

Параметры

  • LAZY

    Выполняет кэширование только при первом использовании таблицы, а не сразу при его включении.

  • table_name

    Идентифицирует разностную таблицу или представление для кэширования. Имя не должно включать темпоральную спецификацию или спецификацию параметров. Если не удается найти таблицу Azure Databricks, возникает ошибка TABLE_OR_VIEW_NOT_FOUND .

  • OPTIONS ( ‘storageLevel’ [ = ] value )

    Предложение OPTIONS параметром storageLevel, который содержит пару "ключ — значение". При использовании ключа, отличного от storageLevel, выдается предупреждение. Допустимые параметры для storageLevel:

    • 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

    Если для storageLevel задано недопустимое значение, создается исключение. Если storageLevel не задано явным образом в предложении OPTIONS, по умолчанию для storageLevel устанавливается значение MEMORY_AND_DISK.

  • query

    Запрос, создающий строки, которые нужно кэшировать. Он может быть представлен в одном из следующих форматов:

    • Инструкция SELECT
    • Инструкция TABLE
    • Инструкция FROM

Примеры

> CACHE TABLE testCache OPTIONS ('storageLevel' 'DISK_ONLY') SELECT * FROM testData;