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

MYSQL LOAD

Описание​

Используйте клиент MySQL для загрузки локальных файлов данных в Doris. MySQL Load представляет собой синхронный способ загрузки, который возвращает результат сразу после выполнения. Успешность загрузки можно определить по результату выполнения оператора LOAD DATA. MySQL Load обеспечивает атомарность группы задач загрузки: либо все задачи завершаются успешно, либо все завершаются с ошибкой.

Синтаксис​

LOAD DATA
[ LOCAL ]
INFILE "<file_name>"
INTO TABLE "<tbl_name>"
[ PARTITION (<partition_name> [, ... ]) ]
[ COLUMNS TERMINATED BY "<column_separator>" ]
[ LINES TERMINATED BY "<line_delimiter>" ]
[ IGNORE <number> {LINES | ROWS} ]
[ (<col_name_or_user_var> [, ... ] ) ]
[ SET (col_name={<expr> | DEFAULT} [, col_name={<expr> | DEFAULT}] ...) ]
[ PROPERTIES ("<key>" = "<value>" [ , ... ]) ]

Обязательные параметры​

1. <file_name>

Укажите путь к локальному файлу. Путь может быть относительным или абсолютным. В настоящее время поддерживается загрузка только одного файла, загрузка нескольких файлов не поддерживается.

2. <tbl_name>

Имя таблицы может включать имя базы данных, как показано в примерах. Если имя базы данных не указано, используется база данных текущего пользователя.

Необязательные параметры​

1. LOCAL

Указание LOCAL означает чтение файлов на стороне клиента. Если этот параметр опущен, файлы читаются из локального хранилища сервера FE. Загрузка файлов с сервера FE по умолчанию отключена. Чтобы включить эту возможность, необходимо задать параметр mysql_load_server_secure_path на узле FE, указав безопасный путь.

2. <partition_name>

Для загрузки можно указать несколько разделов через запятую.

3. <column_separator>

Укажите разделитель столбцов.

4. <line_delimiter>

Укажите разделитель строк.

5. IGNORE <number> { LINES | ROWS }

Пользователи могут пропустить заголовок файла CSV или произвольное количество строк. Этот синтаксис также можно заменить на IGNORE num ROWS.

6. <col_name_or_user_var>

Синтаксис сопоставления столбцов. Подробные сведения о параметрах см. в разделе о сопоставлении столбцов документа Преобразование данных при загрузке.

7. properties ("<key>"="<value>",...)

ПараметрОписание параметра
max_filter_ratioМаксимально допустимая доля отфильтрованных данных, например из-за некорректного формата. По умолчанию допустимая доля равна нулю.
timeoutУкажите время ожидания завершения загрузки в секундах. Значение по умолчанию составляет 600 секунд, допустимый диапазон: от 1 секунды до 259,200 секунд.
strict_modeПользователи могут указать, следует ли включить строгий режим для этой загрузки. По умолчанию он отключён.
timezoneУкажите часовой пояс для этой загрузки. По умолчанию используется текущий часовой пояс кластера. Этот параметр влияет на результаты всех функций, связанных с часовыми поясами и используемых при загрузке.
exec_mem_limitОграничение памяти для загрузки, задаваемое в байтах. По умолчанию составляет 2GB.
trim_double_quotesПараметр логического типа со значением по умолчанию false. Если установлено значение true, внешние двойные кавычки удаляются из каждого поля загружаемого файла.
encloseСимвол обрамления. Если поле данных CSV содержит разделитель строк или столбцов, для защиты от случайного разбиения можно указать однобайтовый символ обрамления. Например, если разделитель столбцов равен ",", символ обрамления равен "'", а данные имеют вид "a,'b,c'", то "b,c" будет распознано как одно поле. Примечание: если для enclose установлено значение "", для trim_double_quotes необходимо установить значение true.
escapeСимвол экранирования. Используется для экранирования символов в поле CSV, совпадающих с символом обрамления. Например, если данные имеют вид "a,'b,'c'", символ обрамления равен "'" и требуется распознать "b,'c" как одно поле, необходимо указать однобайтовый символ экранирования, например "", а затем изменить данные на "a,'b,'c'".

Требования к правам доступа​

Пользователи, выполняющие эту команду SQL, должны иметь как минимум следующие права:

ПравоОбъектПримечания
LOAD_PRIVТаблицаПрава на загрузку данных в указанную таблицу базы данных.

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

  • Оператор MySQL Load начинается с LOAD DATA и не требует указания LABEL.

Примеры​

Полные примеры загрузки локальных файлов, выбора разделов, сопоставления столбцов, использования строгого режима и других возможностей см. в разделе MySQL Load руководства по загрузке данных.