Перейти к основному содержимому

REFRESH EXTERNAL TABLE

REFRESH EXTERNAL TABLE обновляет метаданные, кэшированные в Selena. Метаданные поступают из таблиц в озерах данных. Эта инструкция используется в следующих сценариях:

  • External table: При использовании Hive external table или Hudi external table для запроса данных в Apache Hive™ или Apache Hudi, вы можете выполнить эту инструкцию для обновления метаданных Hive таблицы или Hudi таблицы, кэшированных в Selena.
  • External catalog: При использовании external catalog для запроса данных в соответствующем источнике данных, вы можете выполнить эту инструкцию для обновления метаданных, кэшированных в Selena.

ПРИМЕЧАНИЕ

Только пользователи с привилегией ALTER на соответствующую external table могут выполнять эту операцию.

Основные понятия

  • Hive external table: создается и хранится в Selena. Вы можете использовать её для запроса данных Hive.
  • Hudi external table: создается и хранится в Selena. Вы можете использовать её для запроса данных Hudi.
  • Hive table: создается и хранится в Hive.
  • Hudi table: создается и хранится в Hudi.

Синтаксис и параметры

Ниже описаны синтаксис и параметры для различных случаев:

  • External table

    REFRESH EXTERNAL TABLE table_name 
    [PARTITION ('partition_name', ...)]
    ПараметрОбязательныйОписание
    table_nameДаИмя Hive external table или Hudi external table.
    partition_nameНетИмена разделов Hive таблицы или Hudi таблицы. Указание этого параметра обновляет метаданные разделов Hive таблицы и Hudi таблицы, кэшированные в Selena.
  • External catalog

    REFRESH EXTERNAL TABLE [external_catalog.][db_name.]table_name
    [PARTITION ('partition_name', ...)]
    ПараметрОбязательныйОписание
    external_catalogНетИмя external catalog, который поддерживает Hive, Hudi, Delta Lake и MaxCompute (начиная с v3.3) каталоги.
    db_nameНетИмя базы данных, где находится целевая таблица.
    table_nameДаИмя таблицы.
    partition_nameНетИмена разделов. Указание этого параметра обновляет метаданные разделов целевой таблицы, кэшированные в Selena.

Примечания по использованию

Только пользователи с привилегией ALTER_PRIV могут выполнять эту инструкцию для обновления метаданных Hive таблиц и Hudi таблиц, кэшированных в Selena.

Примеры

Примеры использования в различных случаях:

External table

Пример 1: Обновление кэшированных метаданных соответствующей Hive таблицы в Selena путем указания external table hive1.

REFRESH EXTERNAL TABLE hive1;

Пример 2: Обновление кэшированных метаданных разделов соответствующей Hudi таблицы в Selena путем указания external table hudi1 и разделов в этой таблице.

REFRESH EXTERNAL TABLE hudi1
PARTITION ('date=2022-12-20', 'date=2022-12-21');

External catalog

Пример 1: Обновление метаданных hive_table, кэшированных в Selena.

REFRESH EXTERNAL TABLE hive_catalog.hive_db.hive_table;

Или

USE hive_catalog.hive_db;
REFRESH EXTERNAL TABLE hive_table;

Пример 2: Обновление метаданных раздела второго уровня p2 в hive_table, кэшированных в Selena.

USE hive_catalog.hive_db;
REFRESH EXTERNAL TABLE hive_table PARTITION ('p1=${date}/p2=${hour}');

Пример 3: Обновление метаданных разделов hudi_table, кэшированных в Selena.

REFRESH EXTERNAL TABLE hudi_catalog.hudi_db.hudi_table
PARTITION ('date=2022-12-20', 'date=2022-12-21');