Ограничения системы

Содержание раздела
  1. ALTER TABLE ADD COLUMN
    1. Ограничения выполнения
    2. Ограничения имен
    3. Ограничения партиционирования
    4. Другие ограничения
  2. ALTER TABLE ADD RETENTION
    1. Ограничения выполнения
    2. Ограничения партиционирования
    3. Другие ограничения
  3. ALTER TABLE DROP COLUMN
    1. Ограничения выполнения
    2. Ограничения партиционирования
    3. Другие ограничения
  4. ALTER TABLE DROP RETENTION
  5. ALTER TABLE RENAME
    1. Ограничения выполнения
    2. Ограничения имен
    3. Ограничения партиционирования
    4. Другие ограничения
  6. ALTER TABLE RENAME COLUMN
    1. Ограничения выполнения
    2. Ограничения имен
    3. Ограничения партиционирования
    4. Другие ограничения
  7. ALTER VIEW
    1. Ограничения выполнения
    2. Ограничения имен
    3. Ограничения SELECT-подзапроса
  8. BEGIN DELTA
  9. CHECK_DATA
    1. Ограничения сущностей
    2. Ограничения точности
    3. Другие ограничения
  10. CHECK_SUM
    1. Ограничения сущностей
    2. Ограничения точности
    3. Другие ограничения
  11. CHECK_SUM_SNAPSHOT
    1. Ограничения сущностей
    2. Ограничения точности
    3. Другие ограничения
  12. COMMIT DELTA
  13. CREATE DATABASE
  14. CREATE DOWNLOAD EXTERNAL TABLE
  15. CREATE MATERIALIZED VIEW
    1. Ограничения выполнения
    2. Ограничения СУБД
    3. Ограничения имен
    4. Ограничения столбцов
    5. Ограничения SELECT-подзапроса
    6. Другие ограничения
  16. CREATE PROXY TABLE
    1. Ограничения выполнения
    2. Ограничения имен
    3. Другие ограничения
  17. CREATE READABLE EXTERNAL TABLE
  18. CREATE TABLE
    1. Ограничения выполнения
    2. Ограничения имен
    3. Ограничения ключей
    4. Ограничения ключевых слов
    5. Ограничения партиционирования
    6. Другие ограничения
  19. CREATE UPLOAD EXTERNAL TABLE
  20. CREATE VIEW
    1. Ограничения выполнения
    2. Ограничения имен
    3. Ограничения SELECT-подзапроса
    4. Другие ограничения
  21. CREATE WRITABLE EXTERNAL TABLE
  22. DELETE
    1. Ограничения выполнения
    2. Ограничения сущностей
    3. Ограничения ключевых слов
    4. Ограничения партиционирования
    5. Другие ограничения
  23. DENY_CHANGES
  24. DISABLE_DATASOURCE
  25. DISABLE_STATISTICS_ROWS_COUNT
  26. DROP DATABASE
  27. DROP MATERIALIZED VIEW
  28. DROP TABLE
  29. DROP_VIEW
  30. ENABLE_DATASOURCE
  31. ENABLE_STATISTICS_ROWS_COUNT
  32. ERASE DELTA
    1. Ограничения выполнения
    2. Ограничения на другие операции
    3. Ограничения сущностей
    4. Другие ограничения
  33. ERASE_WRITE_OPERATION
  34. GET_CHANGES
  35. GET_ENTITY_STATISTICS
    1. Общие ограничения
    2. Ограничения значений ROWS_COUNT и ROWS_COUNT_DELTA
  36. GET_WRITE_OPERATIONS
  37. INSERT INTO download external table
  38. INSERT SELECT FROM external_table
    1. Ограничения выполнения
    2. Ограничения сущностей
    3. Ограничения ключевых слов
    4. Ограничения партиционирования
    5. Другие ограничения
  39. INSERT SELECT
    1. Ограничения выполнения
    2. Ограничения сущностей
    3. Ограничения партиционирования
    4. Другие ограничения
  40. INSERT VALUES
    1. Ограничения выполнения
    2. Ограничения сущностей
    3. Ограничения партиционирования
    4. Другие ограничения
  41. RECOVER_DATASOURCE
  42. RESET_STATISTICS
  43. RESUME_WRITE_OPERATION
  44. ROLLBACK CRASHED_WRITE_OPERATIONS
  45. ROLLBACK DELTA
  46. SELECT
    1. Ограничения сущностей
    2. Ограничения ключевых слов
    3. Ограничения соединений
    4. Ограничения партиционирования
    5. Другие ограничения
  47. SELECT FROM INFORMATION_SCHEMA
  48. TRUNCATE ACTUAL
    1. Ограничения выполнения
    2. Ограничения сущностей
    3. Ограничения WHERE
    4. Другие ограничения
  49. TRUNCATE_HISTORY
  50. UPDATE
    1. Ограничения выполнения
    2. Ограничения СУБД
    3. Ограничения сущностей
    4. Ограничения партиционирования
    5. Другие ограничения
  51. UPSERT VALUES
    1. Ограничения выполнения
    2. Ограничения СУБД
    3. Ограничения сущностей
    4. Ограничения партиционирования
    5. Другие ограничения

ALTER TABLE ADD COLUMN

Ограничения выполнения

Ограничения имен

  • Имя столбца должно быть уникально в рамках таблицы и соответствовать требованиям, описанным в разделе Соглашения об именах.

Ограничения партиционирования

  • При добавлении столбца в партиционированную таблицу необходимо добавить соответствующий столбец во все ее партиции.
  • При добавлении столбца в партицию необходимо добавить соответствующий столбец в связанную партиционированную таблицу и другие ее партиции.

Другие ограничения

  • Можно добавить только nullable-столбец.
  • После изменения таблицы запросы к связанным логическим и материализованным представлениям могут стать недоступными. В этом случае нужно пересоздать сбойные представления.
  • Информационная схема обновляется асинхронно, поэтому столбец может не сразу добавиться в информационную схему.

ALTER TABLE ADD RETENTION

Ограничения выполнения

Ограничения партиционирования

  • Retention-правила недоступны для партиционированных таблиц.

Другие ограничения

  • Датасорс-источник и датасорс-приемник в retention-правиле не могут быть разных типов.

ALTER TABLE DROP COLUMN

Ограничения выполнения

Ограничения партиционирования

  • При удалении столбца из партиционированной таблицы необходимо удалить соответствующий столбец изо всех ее партиции.
  • При удалении столбца из партиции необходимо удалить соответствующий столбец из связанной партиционированной таблицы и других ее партиций.

Другие ограничения

  • Недоступно удаление столбца, входящего в первичный ключ или ключ шардирования.
  • После изменения таблицы запросы к связанным логическим и материализованным представлениям могут стать недоступными. В этом случае нужно пересоздать сбойные представления.
  • Информационная схема обновляется асинхронно, поэтому столбец может не сразу удалиться из информационной схемы.

ALTER TABLE DROP RETENTION

ALTER TABLE RENAME

Ограничения выполнения

Ограничения имен

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

Ограничения партиционирования

  • Переименование партиционированной таблицы недоступно, если у нее есть партиции.

Другие ограничения

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

ALTER TABLE RENAME COLUMN

Ограничения выполнения

Ограничения имен

  • Имена столбцов должны быть уникальны в рамках таблицы и соответствовать требованиям,
    описанным в разделе Соглашения об именах.

Ограничения партиционирования

  • При переименовании столбца в партиционированной таблице необходимо переименовать соответствующий столбец во всех ее партициях.
  • При переименовании столбца в партиции необходимо переименовать соответствующий столбец в связанной партиционированной таблице и других ее партициях.

Другие ограничения

  • Недоступно переименование столбца, входящего в первичный ключ или ключ шардирования.
  • После изменения таблицы запросы к связанным логическим и материализованным представлениям могут стать недоступными. В этом случае нужно пересоздать сбойные представления.
  • Информационная схема обновляется асинхронно, поэтому столбец может не сразу обновиться в информационной схеме.

ALTER VIEW

Ограничения выполнения

Ограничения имен

  • Псевдонимы (алиасы) в SELECT-подзапросе должны соответствовать требованиям, описанным в разделе Соглашения об именах.

Ограничения SELECT-подзапроса

BEGIN DELTA

  • Выполнение запроса невозможно при наличии незавершенного запроса на создание, удаление или изменение таблицы или представления.
  • Если в запросе указан номер открываемой дельты, он должен быть равен номеру последней закрытой дельты + 1.

CHECK_DATA

Ограничения сущностей

  • Недоступна проверка партиционированных таблиц, а также логических и материализованных представлений.
  • Максимальное количество проверяемых записей в одной сущности ограничено и регулируется коэффициентом нормализации.

Ограничения точности

  • Есть небольшая вероятность, что контрольные суммы совпадут для разных наборов данных, поэтому возможен ложноположительный результат проверки.
  • Значения типа FLOAT и DOUBLE могут приводить к расхождениям при проверке из-за разницы в точности типов.

Другие ограничения

  • Недоступна проверка изменений, внесенных операциями записи после последней закрытой дельты.
  • При обработке запроса все неактивные датасорсы пропускаются без возврата ошибки. Ошибка возвращается, если не осталось ни одного активного датасорса, подходящего для исполнения запроса.

CHECK_SUM

Ограничения сущностей

  • Контрольная сумма по всей логической базе данных рассчитывается только по данным логических таблиц. Данные логических и материализованных представлений не учитываются.
  • Расчет контрольной суммы недоступен:
    • для логических представлений, основанных на данных СУБД ADQM;
    • для логических представлений, основанных на прокси-таблицах и (или) standalone-таблицах;
    • для партиционированных таблиц.
  • Максимальное количество записей в одной сущности, по которым можно рассчитать контрольную сумму, ограничено и регулируется коэффициентом нормализации.

Ограничения точности

  • Есть небольшая вероятность, что контрольные суммы совпадут для разных наборов данных.
  • Значения типа FLOAT и DOUBLE могут приводить к расхождениям в контрольных суммах из-за разницы в точности типов.

Другие ограничения

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

CHECK_SUM_SNAPSHOT

Ограничения сущностей

  • Контрольная сумма логической базы данных рассчитывается только по данным логических таблиц и прокси-таблиц, без учета данных логических и материализованных представлений.
  • Расчет контрольной суммы недоступен:
    • для логических представлений, основанных на standalone-таблицах;
    • для партиционированных таблиц.
  • Количество записей в одной сущности, по которым можно рассчитать контрольную сумму, ограничено и регулируется коэффициентом нормализации.

Ограничения точности

  • Есть небольшая вероятность, что контрольные суммы совпадут для разных наборов данных.
  • Значения типа FLOAT и DOUBLE могут приводить к расхождениям в контрольных суммах из-за разницы в точности типов.

Другие ограничения

  • Расчет контрольной суммы в открытой дельте доступен только для логических таблиц.
  • При обработке запроса все неактивные датасорсы пропускаются без возврата ошибки. Ошибка возвращается, если не осталось ни одного активного датасорса, подходящего для исполнения запроса.

COMMIT DELTA

  • Если в запросе указаны дата и время закрытия дельты, они должны быть больше, чем дата и время последней закрытой дельты в логической базе данных.
  • Минимально допустимая разница во времени между закрытием дельт — 1 секунда.
  • Закрытие дельты без ключевого слова IMMEDIATE доступно, только если все операции записи в логической БД завершены.

CREATE DATABASE

  • Имя логической БД должно быть уникально в рамках окружения и соответствовать требованиям,
    описанным в разделе Соглашения об именах.
  • Логическая БД не может иметь имя INFORMATION_SCHEMA.
  • Не рекомендуется включать в имя логической БД более одного символа подчеркивания (_) подряд, если в хранилище есть СУБД ADG.

CREATE DOWNLOAD EXTERNAL TABLE

  • Имена таблицы и ее столбцов должны соответствовать требованиям, описанным в разделе Соглашения об именах.

CREATE MATERIALIZED VIEW

Ограничения выполнения

Ограничения СУБД

  • Источником данных для материализованного представления может быть СУБД ADB или ADP.

Ограничения имен

  • Имена представления, столбцов и псевдонимов должны соответствовать требованиям, описанным в разделе Соглашения об именах.
  • Имена столбцов должны быть уникальны в рамках представления.

Ограничения столбцов

  • Порядок столбцов и их типы данных должны совпадать в SELECT-подзапросе и представлении.
  • Первичный ключ должен включать все столбцы ключа шардирования.

Ограничения SELECT-подзапроса

  • Подзапрос не может содержать:
  • Если в подзапросе указана одна логическая таблица и нет группировки и агрегации данных, указанная таблица и материализованное представление должны находиться в одной логической БД.
  • Система не проверяет корректность подзапроса при создании представления.

Другие ограничения

  • Представления, построенные на соединении логических таблиц с прокси-таблицами или standalone-таблицами, могут содержать не все изменения прокси-таблиц и standalone-таблиц из-за того, что такие таблицы не поддерживают версионирование данных.
  • Информационная схема обновляется асинхронно, поэтому созданное представление может не сразу появиться в информационной схеме.

CREATE PROXY TABLE

Ограничения выполнения

Ограничения имен

  • Имена таблицы и ее столбцов должны соответствовать требованиям, описанным в разделе Соглашения об именах.
  • Имена столбцов должны быть уникальны в рамках прокси-таблицы.

Другие ограничения

  • Первичный ключ, если он указан, должен включать все столбцы ключа шардирования.
  • Информационная схема обновляется асинхронно, поэтому созданная таблица может не сразу появиться в информационной схеме.

CREATE READABLE EXTERNAL TABLE

  • Имена таблицы и ее столбцов должны соответствовать требованиям, описанным в разделе Соглашения об именах.
  • Имена и порядок столбцов должны совпадать во внешней таблице и связанной standalone-таблице.
  • В readable-таблице, предназначенной для загрузки данных из Kafka, последним должен быть указан столбец sys_op с типом BIGINT. Столбец используется в служебных целях; без него данные не загрузятся.
  • Информационная схема обновляется асинхронно, поэтому созданная таблица может не сразу появиться в информационной схеме.

CREATE TABLE

Ограничения выполнения

Ограничения имен

  • Имена таблицы и ее столбцов должны соответствовать требованиям, описанным в разделе Соглашения об именах.
  • Имена столбцов должны быть уникальны в рамках таблицы.

Ограничения ключей

  • Первичный ключ должен включать все столбцы ключа шардирования и все столбцы ключа партиционирования.

Ограничения ключевых слов

  • Ключевое слово RETENTION доступно для СУБД ADB и ADP.
  • Выражение с ключевым словом RETENTION не может содержать датасорс-источник и датасорс-приемник разных типов.

Ограничения партиционирования

  • Создание партиционированных таблиц и партиций доступно только в СУБД ADP.
  • Диапазоны партиционирования в партиции должны быть заданы от меньшего значения к большему, а также без пересечения и без примыкания диапазонов друг к другу.
  • Диапазоны партиционирования в партициях, относящихся к одной партиционированной таблице, должны быть заданы без пересечения значений и должны покрывать все возможные значения ключа партиционирования партиционированной таблицы.
  • Партиционированная таблица и все ее партиции должны находиться в одной логической БД и иметь одинаковую структуру.
  • Для партиционированной таблицы недоступны retention-правила.
  • Вложенное партиционирование недоступно: партиция не может быть иметь свои партиции.

Другие ограничения

  • Информационная схема обновляется асинхронно, поэтому созданная таблица может не сразу появиться в информационной схеме.

CREATE UPLOAD EXTERNAL TABLE

  • Имена таблицы и ее столбцов должны соответствовать требованиям, описанным в разделе Соглашения об именах.

CREATE VIEW

Ограничения выполнения

Ограничения имен

  • Имена представления, столбцов и псевдонимов должны соответствовать требованиям, описанным в разделе Соглашения об именах.

Ограничения SELECT-подзапроса

  • SELECT-подзапрос не может содержать:
  • Ключевое слово DATASOURCE_TYPE, указанное в подзапросе query, игнорируется.

Другие ограничения

  • Информационная схема обновляется асинхронно, поэтому созданное представление может не сразу появиться в информационной схеме.

CREATE WRITABLE EXTERNAL TABLE

  • Имена таблицы и ее столбцов должны соответствовать требованиям, описанным в разделе Соглашения об именах.
  • Имена и порядок столбцов должны совпадать во внешней таблице и связанной standalone-таблице.
  • Информационная схема обновляется асинхронно, поэтому созданная таблица может не сразу появиться в информационной схеме.

DELETE

Ограничения выполнения

  • Выполнение запроса к логической таблице недоступно, если она участвует в незавершенной операции по изменению схемы.
  • Выполнение запроса вне дельты недоступно после дельты, закрытой с будущей меткой времени относительно серверного времени.
  • Не допускается параллельное выполнение идентичных запросов.

Ограничения сущностей

  • Запрос доступен для логических таблиц, прокси-таблиц и standalone-таблиц.
  • Удаление записей standalone-таблиц и прокси-таблиц доступно только из СУБД ADB и ADP.

Ограничения ключевых слов

  • В условии WHERE не допускается использование функций, которые приводят к разным результатам в разных СУБД. Примеры таких функций — это операции над числами с плавающей запятой: сравнение с ними, округление и т.д.
  • Ключевое слово RETRY недоступно в запросах к прокси-таблицам и standalone-таблицам.

Ограничения партиционирования

  • Условие в запросе на удаление данных из партиционированной таблицы должно быть вычисляемо в каждом из датасорсов, где расположены данные партиций, из которых удаляются записи.
  • Одновременная запись данных (загрузка, вставка и удаление) в партиционированную таблицу и ее партиции недоступна.

Другие ограничения

  • Запрос не удаляет данные с меткой времени, превышающей текущее время сервера.
  • SELECT-подзапрос, если он указан в условии, должен быть доступен для исполнения во всех датасорсах, где размещена таблица, из которой удаляются данные. В частности, это означает, что запрос на удаление данных из прокси-таблицы или standalone-таблицы не будет исполнен, если SELECT-подзапрос обращается к данным датасорсов, в которых нет этой целевой таблицы.
  • При обработке запроса все неактивные датасорсы пропускаются без возврата ошибки. Ошибка возвращается, если не осталось ни одного активного датасорса, подходящего для исполнения запроса.

DENY_CHANGES

  • Выполнение запроса недоступно при наличии другого запрета изменений или незавершенного запроса на создание, удаление или изменение логической таблицы, прокси-таблицы или представления.

DISABLE_DATASOURCE

  • Запрос доступен только для СУБД ADB и ADP.

DISABLE_STATISTICS_ROWS_COUNT

  • Запрос доступен только для обычных логических таблиц, партиций, логических представлений и материализованных представлений.

DROP DATABASE

  • Не рекомендуется удалять логическую БД, имя которой содержит более одного символа подчеркивания (_) подряд, если в инсталляции есть СУБД ADG.
  • Недоступно удаление сервисной базы данных INFORMATION_SCHEMA.

DROP MATERIALIZED VIEW

DROP TABLE

  • Выполнение запроса к логической таблице недоступно, если она участвует в незавершенной операции записи.
  • Выполнение запроса недоступно, если установлен запрет на изменение сущностей.
  • Удаление партиционированной таблицы недоступно, если у нее есть партиции.

DROP_VIEW

ENABLE_DATASOURCE

  • Запрос доступен только для СУБД ADB и ADP.

ENABLE_STATISTICS_ROWS_COUNT

  • Запрос доступен только для обычных логических таблиц, партиций, логических представлений и материализованных представлений.

ERASE DELTA

Ограничения выполнения

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

Ограничения на другие операции

Ограничения сущностей

  • Запрос недоступен для логических БД, где есть логические таблицы с retention-правилами, предназначенными для остужения данных.
  • Запрос не обновляет материализованные представления, которые связаны с очищаемыми таблицами и находятся в других логических базах данных. Такие представления продолжают хранить данные, удаленные из таблиц.

Другие ограничения

  • Удаленные данные невозможно восстановить средствами системы.

ERASE_WRITE_OPERATION

  • Запрос не гарантирует отмену всех изменений, внесенных операцией обновления данных.
  • При обработке запроса все неактивные датасорсы пропускаются без возврата ошибки. Ошибка возвращается, если не осталось ни одного активного датасорса, подходящего для исполнения запроса.

GET_CHANGES

  • Для логических баз данных, созданных и измененных до версии 5.3, возвращается пустой объект ResultSet.

GET_ENTITY_STATISTICS

Общие ограничения

  • При рестарте ноды все значения статистики, кроме ROWS_COUNT и ROWS_COUNT_DELTA, обнуляются.
  • При удалении логической сущности обнуляется только значения ROWS_COUNT и ROWS_COUNT_DELTA сущности, остальные значения статистики остаются без изменений.
  • Статистика не ведется по внешним таблицам загрузки и выгрузки, а также системным представлениям.

Ограничения значений ROWS_COUNT и ROWS_COUNT_DELTA

  • Значения рассчитываются для следующих сущностей, данные которых размещены в СУБД ADB, ADP и (или) ADQM: для обычных логических таблиц, партиций, логических представлений и материализованных представлений.
  • После обнуления статистики значения остаются равными null до момента закрытия ближайшей дельты.
  • Значения для материализованного представления рассчитывается по исходному запросу представления, а не его текущему состоянию. Поэтому значения могут отличаться от фактических, если представление не успело синхронизироваться с источником.

GET_WRITE_OPERATIONS

  • Запрос не возвращает информацию о завершенных операциях записи.

INSERT INTO download external table

  • Имена и порядок следования столбцов должны совпадать в SELECT-подзапросе на выгрузку данных и во внешней таблице выгрузки.
  • При обработке запроса все неактивные датасорсы пропускаются без возврата ошибки. Ошибка возвращается, если не осталось ни одного активного датасорса, подходящего для исполнения запроса.

INSERT SELECT FROM external_table

Ограничения выполнения

  • Выполнение запроса к логической таблице недоступно, если она участвует в незавершенной операции по изменению схемы.
  • Выполнение запроса вне дельты недоступно после дельты, закрытой с будущей меткой времени относительно серверного времени.

Ограничения сущностей

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

Ограничения ключевых слов

  • Частичная загрузка данных с указанием WHERE, LIMIT и OFFSET доступна только при загрузке с помощью внешних readable-таблиц.
  • Ключевое слово RETRY недоступно в запросах к прокси-таблицам и standalone-таблицам.

Ограничения партиционирования

  • При загрузке данных в партиционированную таблицу все записи, для которых нет подходящей партиции, игнорируются.
  • Одновременная запись данных (загрузка, вставка и удаление) в партиционированную таблицу и ее партиции недоступна.

Другие ограничения

  • Недоступна одновременная загрузка данных из одного топика Kafka в разные таблицы ADG.
  • Загрузка данных с помощью readable-таблиц доступна только в датасорсы типа ADP и только при наличии установленного коннектора Kafka Jet writer.
  • При обработке запроса все неактивные датасорсы пропускаются без возврата ошибки. Ошибка возвращается, если не осталось ни одного активного датасорса, подходящего для исполнения запроса.

INSERT SELECT

Ограничения выполнения

  • Выполнение запроса к логической таблице недоступно, если она участвует в незавершенной операции по изменению схемы.
  • Выполнение запроса вне дельты недоступно после дельты, закрытой с будущей меткой времени относительно серверного времени.
  • Не допускается параллельное выполнение идентичных запросов.

Ограничения сущностей

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

Ограничения партиционирования

  • При вставке данных в партиционированную таблицу все записи, для которых нет подходящей партиции, игнорируются.
  • Одновременная запись данных (загрузка, вставка и удаление) в партиционированную таблицу и ее партиции недоступна.

Другие ограничения

  • Типы вставляемых значений должны соответствовать типам данных столбцов в таблице-приемнике.
  • Ключевое слово RETRY недоступно в запросах к прокси-таблицам и standalone-таблицам.
  • При обработке запроса все неактивные датасорсы пропускаются без возврата ошибки. Ошибка возвращается, если не осталось ни одного активного датасорса, подходящего для исполнения запроса.

INSERT VALUES

Ограничения выполнения

  • Выполнение запроса к логической таблице недоступно, если она участвует в незавершенной операции по изменению схемы.
  • Выполнение запроса вне дельты недоступно после дельты, закрытой с будущей меткой времени относительно серверного времени.
  • Не допускается параллельное выполнение идентичных запросов.

Ограничения сущностей

  • Вставка данных в логические и материализованные представления недоступна.

Ограничения партиционирования

  • При вставке данных в партиционированную таблицу все записи, для которых нет подходящей партиции, игнорируются.
  • Одновременная запись данных (загрузка, вставка и удаление) в партиционированную таблицу и ее партиции недоступна.

Другие ограничения

  • Ключевое слово RETRY недоступно в запросах к прокси-таблицам и standalone-таблицам.
  • При обработке запроса все неактивные датасорсы пропускаются без возврата ошибки. Ошибка возвращается, если не осталось ни одного активного датасорса, подходящего для исполнения запроса.

RECOVER_DATASOURCE

  • Запрос доступен только для СУБД ADB и ADP.
  • Запрос не исполняется, если в целевой логической БД есть открытая дельта или незавершенные операции записи, и ожидает закрытия дельты и завершения операций.
  • Холодные данные не восстанавливаются.

RESET_STATISTICS

  • Недоступно обнуление статистики по внешним таблицам загрузки и выгрузки, так как по таким таблицам статистика не ведется.

RESUME_WRITE_OPERATION

  • Запрос не перезапускает обработку операций со статусом «Выполняется», запущенных запросами обновления данных.
  • Операция загрузки данных со статусом «Выполняется» отменяется, а не перезапускается, если отсутствует внешняя таблица, использовавшаяся в этой операции.
    • При обработке запроса все неактивные датасорсы пропускаются без возврата ошибки. Ошибка возвращается, если не осталось ни одного активного датасорса, подходящего для исполнения запроса.

ROLLBACK CRASHED_WRITE_OPERATIONS

  • При обработке запроса все неактивные датасорсы пропускаются без возврата ошибки. Ошибка возвращается, если не осталось ни одного активного датасорса, подходящего для исполнения запроса.

ROLLBACK DELTA

  • Выполнение запроса недоступно, если есть другой незавершенный запрос ROLLBACK DELTA или незавершенные операции записи, начатые в откатываемой дельте.
  • После запуска запроса дельту невозможно закрыть, даже если запрос вернул ошибку.
  • Пока запрос выполняется, система блокирует возможность запуска новых операций записи в логической БД.
  • Запрос не отменяет незавершенные операции записи, запущенные запросами обновления данных, и любые операции записи, выполненные до дельты.
  • При обработке запроса все неактивные датасорсы пропускаются без возврата ошибки. Ошибка возвращается, если не осталось ни одного активного датасорса, подходящего для исполнения запроса.

SELECT

Ограничения сущностей

  • В запросе можно обращаться либо к логической БД, либо к сервисной БД (см. SELECT FROM INFORMATION_SCHEMA), но не к обеим одновременно.
  • Не поддерживаются запросы к материализованным представлениям, содержащие ключевые слова FOR SYSTEM_TIME + DATASOURCE_TYPE, если в представлении отсутствуют данные за момент времени, указанный с помощью FOR SYSTEM_TIME.
  • Не поддерживаются запросы к внешним readable-таблицам, связанным с топиками Kafka.

Ограничения ключевых слов

  • Ключевое слово LISTAGG доступно для СУБД ADB и ADP.
  • Ключевое слово ESTIMATE_ONLY возвращает план выполнения запроса только для СУБД ADB и ADP.
  • Ключевое слово OFFSET без ограничения количества строк не поддерживается.
  • FOR SYSTEM_TIME:
    • Ключевое слово недоступно в SELECT-подзапросах в составе запросов на создание и изменение логических и материализованных представлений, а также в запросах и подзапросах к обобщенным табличным выражениям.
    • Запросы к прокси-таблицам и standalone-таблицам с выражениями FOR SYSTEM_TIME STARTED IN/CN/TS и FOR SYSTEM_TIME FINISHED IN/CN/TS всегда возвращают пустой результат; другие значения FOR SYSTEM_TIME в таких запросах игнорируются.
    • Выражение FOR SYSTEM_TIME AS OF LATEST_UNCOMMITTED_DELTA недоступно в запросах к логическим и материализованным представлениям.
    • Выражения FOR SYSTEM_TIME STARTED IN и FOR SYSTEM_TIME FINISHED IN недоступны в запросе к логическому представлению, если запрос предназначен для СУБД ADQM или в представлении используется ключевое слово ORDER BY.
  • Ключевое слово ORDER BY недоступно в SELECT-подзапросе в составе CREATE MATERIALIZED VIEW.
  • WITH (табличные выражения):
    • Табличные выражения доступны для СУБД ADB и ADP.
    • Недоступны рекурсивные и материализованные табличные выражения.
    • В табличных выражениях не поддерживаются операторы, изменяющих данные (INSERT, UPSERT и DELETE), и ключевое слово DATASOURCE_TYPE.

Ограничения соединений

  • Не поддерживается соединение сущностей, данные которых размещены в разных датасорсах без какого-либо общего датасорса.
  • Если ключами соединения в запросе выступают поля типа Nullable, то строки, где хотя бы один из ключей имеет значение NULL, не соединяются.

Ограничения партиционирования

  • JOIN-соединение партиционированных таблиц между собой и с другими данными возможно только в пределах единого датасорса.

Другие ограничения

  • Запрос без FOR SYSTEM_TIME не возвращает данные с метками времени, превышающими текущее время сервера.
  • Псевдонимы (алиасы) сущностей и столбцов должны начинаться с латинской буквы. После первого символа могут следовать латинские буквы, цифры и символы подчеркивания в любом порядке.
  • При обработке запроса все неактивные датасорсы пропускаются без возврата ошибки. Ошибка возвращается, если не осталось ни одного активного датасорса, подходящего для исполнения запроса.

SELECT FROM INFORMATION_SCHEMA

  • Не допускается комбинирование подзапросов к INFORMATION_SCHEMA с подзапросами к логическим базам данных.
  • Строковые значения столбцов в условии WHERE должны быть указаны в верхнем регистре или с использованием ключевого слова UPPER.

TRUNCATE ACTUAL

Ограничения выполнения

  • Во время работы запроса не допускается выполнение BEGIN DELTA.

Ограничения сущностей

  • Запрос недоступен для обычных логических таблиц с retention-правилами, предназначенными для остужения данных, а также для партиционированных таблиц, партиции которых имеют retention-правила для остужения данных.
  • Запрос недоступен для несинхронизированных материализованных представлений.
  • Когда изменения данных удаляются из таблицы, все связанные с ней материализованные представления остаются в прежнем состоянии и продолжают хранить данные, удаленные из таблицы.

Ограничения WHERE

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

Другие ограничения

  • Удаление данных невозможно отменить.

TRUNCATE_HISTORY

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

UPDATE

Ограничения выполнения

  • Выполнение запроса к логической таблице недоступно, если она участвует в незавершенной операции по изменению схемы.
  • Выполнение запроса вне дельты недоступно после дельты, закрытой с будущей меткой времени относительно серверного времени.
  • Не допускается параллельное выполнение идентичных запросов.

Ограничения СУБД

  • Запрос доступен для логических таблиц, размещенных в любых СУБД из числа поддерживаемых, и для прокси-таблиц и standalone-таблиц, размещенных в СУБД ADB и ADP.

Ограничения сущностей

  • Недоступно обновление значений столбцов логической таблицы, входящих в первичный ключ.
  • Недоступно обновление столбцов материализованного представления.

Ограничения партиционирования

  • Одновременная запись данных (загрузка, вставка и удаление) в партиционированную таблицу и ее партиции недоступна.

Другие ограничения

  • Все сущности, указанные в запросе на обновление столбцов прокси- или standalone-таблицы, должны размещаться в том же датасорсе, что и целевая таблица.
  • Ключевое слово SET, указанное в запросе на обновление столбцов логической таблицы, не может содержать SELECT-подзапрос.
  • Ключевое слово RETRY недоступно в запросах к прокси-таблицам и standalone-таблицам.
    • При обработке запроса все неактивные датасорсы пропускаются без возврата ошибки. Ошибка возвращается, если не осталось ни одного активного датасорса, подходящего для исполнения запроса.

UPSERT VALUES

Ограничения выполнения

  • Выполнение запроса к логической таблице недоступно, если она участвует в незавершенной операции по изменению схемы.
  • Выполнение запроса вне дельты недоступно после дельты, закрытой с будущей меткой времени относительно серверного времени.
  • Не допускается параллельное выполнение идентичных запросов.

Ограничения СУБД

  • Запрос не поддерживает вставку данных в СУБД ADQM и ADG.

Ограничения сущностей

  • Вставка данных в логические и материализованные представления недоступна.

Ограничения партиционирования

  • При вставке данных в партиционированную таблицу все записи, для которых нет подходящей партиции, игнорируются.
  • Одновременная запись данных (загрузка, вставка и удаление) в партиционированную таблицу и ее партиции недоступна.

Другие ограничения

  • Ключевое слово RETRY недоступно в запросах к прокси-таблицам и standalone-таблицам.
  • При обработке запроса все неактивные датасорсы пропускаются без возврата ошибки. Ошибка возвращается, если не осталось ни одного активного датасорса, подходящего для исполнения запроса.