DLI предоставляет SQL editor для выполнения операций запросов данных с использованием SQL statements.
В этом разделе описывается, как создать и отправить SQL job с помощью DLI SQL editor.
При выполнении задания система получает доступ к job bucket, используя идентификационные данные пользователя, отправившего задание. Если прав недостаточно, это приводит к ошибке сохранения или получения результатов задания.
Подробную информацию см. в How Do I Check if Job Result Saving to a DLI Job Bucket Is Enabled for a SQL Queue?
На SQL Editor странице система предлагает создать временный DLI data Бакет для хранения временных данных, генерируемых DLI. Для получения подробной информации о том, как настроить job bucket, см. Configuring a DLI Job Bucket.
Button & Drop-Down List | Description |
|---|---|
Queues | Очередь ресурсов, используемая для выполнения SQL‑задач. Очередь определяет вычислительные ресурсы, доступные задаче во время её работы в эластичном пуле ресурсов. Каждая очередь выделяется с конкретными ресурсами, известными как CUs, конфигурация которых существенно влияет на производительность и эффективность выполнения задачи. Перед отправкой задачи оцените её потребности в ресурсах и выберите подходящую очередь. SQL‑задачи могут выполняться только в SQL‑очередях. Если доступных очередей нет, вы можете создать очередь или использовать очередь default.
|
Databases | Выберите базу данных из раскрывающегося списка. Если база данных недоступна, отображается default база данных. Чтобы создать базу данных, см. Creating a Data Catalog, Database, and Table on the DLI Console. Если в SQL‑операторах указана база данных, в которой находятся таблицы, выбранная здесь база данных не применяется. |
Settings | Добавьте параметры и теги. Parameter Settings: Установите параметры в формате key/value для SQL jobs. Tags: Присвойте пары ключ‑значение в виде тегов SQL job. |
Создайте их заранее, обратившись к Creating a Data Catalog, Database, and Table on the DLI Console. Например, создайте таблицу с именем qw.
1SELECT * FROM qw.qw LIMIT 10;
В качестве альтернативы можно дважды щёлкнуть имя таблицы qw. Запрос автоматически вводится в окно редактирования SQL‑задачи.
DLI предоставляет набор SQL‑шаблонов с примерами использования, примерами кода и руководствами. Вы также можете использовать эти шаблоны для быстрой реализации логики сервиса. Для получения дополнительной информации о шаблонах см. Creating a SQL Job Template.
После успешного выполнения вы можете проверить результат выполнения на вкладке View Result ниже окна редактирования SQL job editing window.
На вкладке View Result нажмите
, чтобы отобразить результаты выполнения в виде диаграммы. Нажмите
, чтобы переключиться обратно к табличному представлению.
Вы можете просмотреть максимум 1 000 записей данных на этой вкладке View Result. Чтобы просмотреть больше или все данные, нажмите
для экспорта данных в OBS.
Нажмите Settings в правом верхнем углу страницы SQL Editor. Вы можете задать параметры и теги для SQL job.
Parameter | Default Value | Description |
|---|---|---|
spark.sql.files.maxRecordsPerFile | 0 | Максимальное количество записей, которые будут записаны в один файл. Если значение равно нулю или отрицательное, ограничений нет. |
spark.sql.autoBroadcastJoinThreshold | 209715200 | Максимальный размер в байтах таблицы, отображающей все рабочие узлы при выполнении соединения. Вы можете установить этот параметр в -1, чтобы отключить отображение. ПРИМЕЧАНИЕ: В настоящее время поддерживаются только конфигурационные единицы, которые хранят таблицы, проанализированные с помощью команды ANALYZE TABLE COMPUTE statistics noscan, и таблицы источников данных на основе файлов, которые вычисляют статистику непосредственно из файлов данных. |
spark.sql.shuffle.partitions | 200 | Количество разделов по умолчанию, используемых для фильтрации данных при соединении или агрегации. |
spark.sql.dynamicPartitionOverwrite.enabled | false | Если параметр установлен в false, DLI удалит все разделы, соответствующие условиям, перед их перезаписью. Например, если в таблице с разделами существует раздел с именем 2021-01 и вы используете оператор INSERT OVERWRITE для записи данных в раздел 2021-02, данные в разделе 2021-01 также будут перезаписаны. Если параметр установлен в true, DLI не будет удалять разделы заранее, а будет перезаписывать их данными, записанными во время выполнения. |
spark.sql.files.maxPartitionBytes | 134217728 | Максимальное количество байтов, упаковываемых в один раздел при чтении файла. |
spark.sql.badRecordsPath | - | Путь к ошибочным записям. |
dli.sql.sqlasync.enabled | true | Выполняются ли DDL и DCL операторы асинхронно. Значение true указывает, что асинхронное выполнение включено. |
dli.sql.job.timeout | - | Интервал тайм‑аута выполнения задания в секундах. Если время выполнения задания истекает, оно будет отменено. |
SQL editor позволяет переключаться на SparkUI для просмотра процесса выполнения SQL‑оператора.
При выполнении задания в созданной очереди кластер перезапускается. Это занимает около 10 минут. Если вы нажмёте SparkUI до создания кластера, будет закеширован пустой projectID. Страница SparkUI не может быть отображена. Рекомендуется использовать выделенную очередь, чтобы кластер не освобождался. Либо подождите некоторое время после отправки задания (кластер будет создан), а затем проверьте SparkUI.
На вкладке Executed Queries (Last Day) страницы SQL Editor нажмите More и выберите View Log в столбце Operation задания SQL. Система автоматически переключается на путь OBS, где хранятся журналы. При необходимости можно загрузить журналы.
The View Log button is not available for synchronization jobs and jobs running on the default queue.
Сочетание | Описание |
|---|---|
Ctrl+Enter | Выполнить SQL‑операторы. Вы можете выполнить SQL‑операторы, нажав Ctrl+R или Ctrl + Enter на клавиатуре. |
Ctrl+F | Поиск SQL‑операторов. Вы можете нажать Ctrl+F для поиска необходимого SQL‑оператора. |
Shift+Alt+F | Форматировать SQL‑операторы. Вы можете нажать Shift + Alt + F для форматирования SQL‑оператора. |
Ctrl+Q | Проверка синтаксиса. Вы можете нажать Ctrl + Q для проверки синтаксиса SQL‑операторов. |
F11 | Полный экран. Вы можете нажать F11, чтобы отобразить окно SQL Job Editor в полноэкранном режиме. Нажмите F11 ещё раз, чтобы выйти из полноэкранного режима. |