CREATE DOWNLOAD EXTERNAL TABLE
Запрос позволяет создать внешнюю таблицу выгрузки в логической базе данных.
В ответе возвращается:
- пустой объект ResultSet при успешном выполнении запроса;
- исключение при неуспешном выполнении запроса.
После успешного выполнения запроса можно выполнять запросы INSERT INTO download_external_table на выгрузку данных. Подробнее о порядке выполнения действий для выгрузки данных см. в разделе Выгрузка данных.
Примечание: изменение внешней таблицы недоступно. Для замены внешней таблицы необходимо удалить ее и создать новую.
Синтаксис
CREATE DOWNLOAD EXTERNAL TABLE [db_name.]ext_table_name(
column_name_1 datatype_1,
column_name_2 datatype_2,
column_name_3 datatype_3
)
LOCATION receiver_URI
FORMAT 'AVRO'
[CHUNK_SIZE records_per_message]
Параметры
db_name
— имя логической базы данных, в которой создается внешняя таблица. Указывается опционально, если выбрана логическая БД, используемая по умолчанию;ext_table_name
— имя создаваемой внешней таблицы выгрузки. Для удобства различения таблиц выгрузки и таблиц загрузки рекомендуется задавать имя таблицы, указывающее на ее тип, напримерsales_ext_download
;column_name_N
— имя столбца таблицы;datatype_N
— тип данных столбцаcolumn_name_N
. Возможные значения см. в разделе Логические типы данных;receiver_URI
— путь к топику Kafka (см. Формат пути к внешнему приемнику данных);records_per_message
— максимальное количество записей, выгружаемых из хранилища в одном сообщении топика Каfka.
Пример
CREATE DOWNLOAD EXTERNAL TABLE sales.sales_ext_download (
id INT,
transaction_date TIMESTAMP,
product_code VARCHAR(256),
product_units INT,
store_id INT,
description VARCHAR(256)
)
LOCATION 'kafka://zk1:2181,zk2:2181,zk3:2181/sales_out'
FORMAT 'AVRO'
CHUNK_SIZE 1000