Ограничения системы
Содержание раздела
- ALTER TABLE ADD COLUMN
- ALTER TABLE ADD RETENTION
- ALTER TABLE DROP COLUMN
- ALTER TABLE DROP RETENTION
- ALTER TABLE RENAME
- ALTER TABLE RENAME COLUMN
- ALTER VIEW
- BEGIN DELTA
- CHECK_DATA
- CHECK_SUM
- CHECK_SUM_SNAPSHOT
- COMMIT DELTA
- CREATE DATABASE
- CREATE DOWNLOAD EXTERNAL TABLE
- CREATE MATERIALIZED VIEW
- CREATE PROXY TABLE
- CREATE READABLE EXTERNAL TABLE
- CREATE TABLE
- CREATE UPLOAD EXTERNAL TABLE
- CREATE VIEW
- CREATE WRITABLE EXTERNAL TABLE
- DELETE
- DENY_CHANGES
- DISABLE_DATASOURCE
- DISABLE_STATISTICS_ROWS_COUNT
- DROP DATABASE
- DROP MATERIALIZED VIEW
- DROP TABLE
- DROP_VIEW
- ENABLE_DATASOURCE
- ENABLE_STATISTICS_ROWS_COUNT
- ERASE DELTA
- ERASE_WRITE_OPERATION
- GET_CHANGES
- GET_ENTITY_STATISTICS
- GET_WRITE_OPERATIONS
- INSERT INTO download external table
- INSERT SELECT FROM external_table
- INSERT SELECT
- INSERT VALUES
- RECOVER_DATASOURCE
- RESET_STATISTICS
- RESUME_WRITE_OPERATION
- ROLLBACK CRASHED_WRITE_OPERATIONS
- ROLLBACK DELTA
- SELECT
- SELECT FROM INFORMATION_SCHEMA
- TRUNCATE ACTUAL
- TRUNCATE_HISTORY
- UPSERT VALUES
ALTER TABLE ADD COLUMN
Ограничения выполнения
- Запрос доступен для СУБД ADB, ADP и ADQM.
- Выполнение запроса недоступно, если есть незавершенная операция записи или установлен запрет на изменение сущностей.
Ограничения имен
- Имя столбца должно быть уникально в рамках таблицы и соответствовать требованиям, описанным в разделе Соглашения об именах.
Ограничения партиционирования
- При добавлении столбца в партиционированную таблицу или партиции необходимо добавить такой же столбец во все связанные логические таблицы (во все партиции таблицы или в связанную партиционированную таблицу и другие ее партиции соответственно), чтобы избежать расхождения в структуре партиций и партиционированных таблиц.
Другие ограничения
- Можно добавить только nullable-столбец.
- После изменения таблицы запросы к связанным логическим и материализованным представлениям могут стать недоступными. В этом случае нужно пересоздать сбойные представления.
- Информационная схема обновляется асинхронно, поэтому столбец может не сразу добавиться в информационную схему.
ALTER TABLE ADD RETENTION
Ограничения выполнения
- Выполнение запроса недоступно, если есть незавершенная операция записи или установлен запрет на изменение сущностей.
- Запрос доступен для СУБД ADB и ADP.
Ограничения партиционирования
- Retention-правила недоступны для партиционированных таблиц.
Другие ограничения
- Датасорс-источник и датасорс-приемник в retention-правиле не могут быть разных типов.
ALTER TABLE DROP COLUMN
Ограничения выполнения
- Запрос доступен для СУБД ADB, ADP и ADQM.
- Выполнение запроса недоступно, если есть незавершенная операция записи или установлен запрет на изменение сущностей.
Ограничения партиционирования
- При удалении столбца из партиционированной таблицы или партиции необходимо удалить соответствующий столбец из всех связанных логических таблиц (из всех партиций таблицы или из связанной партиционированной таблицы и других ее партиции соответственно), чтобы избежать расхождения в структуре партиций и партиционированных таблиц.
Другие ограничения
- Недоступно удаление столбца, входящего в первичный ключ или ключ шардирования.
- После изменения таблицы запросы к связанным логическим и материализованным представлениям могут стать недоступными. В этом случае нужно пересоздать сбойные представления.
- Информационная схема обновляется асинхронно, поэтому столбец может не сразу удалиться из информационной схемы.
ALTER TABLE DROP RETENTION
- Выполнение запроса недоступно, если есть незавершенная операция записи или установлен запрет на изменение сущностей.
- Запрос доступен для СУБД ADB и ADP.
ALTER TABLE RENAME
Ограничения выполнения
- Запрос доступен для СУБД ADB, ADP и ADQM.
- Выполнение запроса недоступно, если есть незавершенная операция записи или установлен запрет на изменение сущностей.
Ограничения имен
- Имя таблицы должно быть уникально в рамках логической базы данных и соответствовать требованиям, описанным в разделе Соглашения об именах.
Ограничения партиционирования
- Переименование партиционированной таблицы недоступно, если у нее есть партиции.
Другие ограничения
- После изменения таблицы запросы к связанным логическим и материализованным представлениям могут стать недоступными. В этом случае нужно пересоздать сбойные представления.
- Информационная схема обновляется асинхронно, поэтому таблица может не сразу переименоваться в информационной схеме.
ALTER TABLE RENAME COLUMN
Ограничения выполнения
- Запрос доступен для СУБД ADB, ADP и ADQM.
- Выполнение запроса недоступно, если есть незавершенная операция записи или установлен запрет на изменение сущностей.
Ограничения имен
- Имена столбцов должны быть уникальны в рамках таблицы и соответствовать требованиям,
описанным в разделе Соглашения об именах.
Ограничения партиционирования
- При переименовании столбца в партиционированной таблице или партиции необходимо переименовать соответствующий столбец во всех связанных логических таблицах (во всех партициях таблицы или в связанной партиционированной таблице и других ее партициях соответственно), чтобы избежать расхождения в структуре партиций и партиционированных таблиц.
Другие ограничения
- Недоступно переименование столбца, входящего в первичный ключ или ключ шардирования.
- После изменения таблицы запросы к связанным логическим и материализованным представлениям могут стать недоступными. В этом случае нужно пересоздать сбойные представления.
- Информационная схема обновляется асинхронно, поэтому столбец может не сразу обновиться в информационной схеме.
ALTER VIEW
Ограничения выполнения
- Выполнение запроса недоступно, если есть незавершенная операция записи или установлен запрет на изменение сущностей.
Ограничения имен
- Псевдонимы (алиасы) в SELECT-подзапросе должны соответствовать требованиям, описанным в разделе Соглашения об именах.
Ограничения SELECT-подзапроса
- SELECT-подзапрос не может содержать:
- логические и материализованные представления,
- системные представления
INFORMATION_SCHEMA
, - ключевое слово FOR SYSTEM_TIME.
- Ключевое слово
DATASOURCE_TYPE
, указанное в 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
Ограничения выполнения
- Выполнение запроса недоступно, если есть незавершенная операция записи или установлен запрет на изменение сущностей.
Ограничения СУБД
- Данные материализованных представлений могут размещаться в СУБД ADP, ADQM и ADG.
- Источником данных для материализованного представления может быть СУБД ADB или ADP.
Ограничения имен
- Имена представления, столбцов и псевдонимов должны соответствовать требованиям, описанным в разделе Соглашения об именах.
- Имена столбцов должны быть уникальны в рамках представления.
Ограничения столбцов
- Порядок столбцов и их типы данных должны совпадать в SELECT-подзапросе и представлении.
- Первичный ключ должен включать все столбцы ключа шардирования.
Ограничения SELECT-подзапроса
- Подзапрос не может содержать:
- логические и материализованные представления,
- системные представления
INFORMATION_SCHEMA
, - ключевое слово FOR SYSTEM_TIME,
- ключевое слово
ORDER BY
, - ключевое слово
LIMIT
.
- Если в подзапросе указана одна логическая таблица и нет группировки и агрегации данных, указанная таблица и материализованное представление должны находиться в одной логической БД.
- Система не проверяет корректность подзапроса при создании представления.
Другие ограничения
- Представления, построенные на соединении логических таблиц с прокси-таблицами или 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-подзапрос не может содержать:
- логические и материализованные представления,
- системные представления
INFORMATION_SCHEMA
, - ключевое слово FOR SYSTEM_TIME.
- Ключевое слово
DATASOURCE_TYPE
, указанное в подзапросеquery
, игнорируется.
Другие ограничения
- Информационная схема обновляется асинхронно, поэтому созданное представление может не сразу появиться в информационной схеме.
CREATE WRITABLE EXTERNAL TABLE
- Имена таблицы и ее столбцов должны соответствовать требованиям, описанным в разделе Соглашения об именах.
- Имена и порядок столбцов должны совпадать во внешней таблице и связанной standalone-таблице.
- Информационная схема обновляется асинхронно, поэтому созданная таблица может не сразу появиться в информационной схеме.
DELETE
Ограничения выполнения
- Выполнение запроса недоступно, если есть незавершенная операция по изменению схемы.
- Выполнение запроса вне дельты недоступно после дельты, закрытой с будущей меткой времени относительно серверного времени.
- Не допускается параллельное выполнение идентичных запросов.
Ограничения сущностей
- Запрос доступен для логических таблиц, прокси-таблиц и standalone-таблиц.
- Удаление записей standalone-таблиц и прокси-таблиц доступно только из СУБД ADB и ADP.
Ограничения ключевых слов
- В условии
WHERE
не допускается использование функций, которые приводят к разным результатам в разных СУБД. Примеры таких функций — это операции над числами с плавающей запятой: сравнение с ними, округление и т.д. - Ключевое слово
RETRY
недоступно в запросах к прокси-таблицам и 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
Ограничения выполнения
- Выполнение запроса недоступно, если есть открытая дельта или незавершенная операция по изменению схемы.
- Выполнение запроса недоступно, если в логической базе данных есть несинхронизированные материализованные представления.
Ограничения на другие операции
- Во время работы запроса недоступно выполнение запросов BEGIN DELTA, изменение логической схемы данных, а также загрузка и обновление данных.
Ограничения сущностей
- Запрос недоступен для логических БД, где есть логические таблицы с retention-правилами, предназначенными для остужения данных.
- Запрос не обновляет материализованные представления, которые связаны с очищаемыми таблицами и находятся в других логических базах данных. Такие представления продолжают хранить данные, удаленные из таблиц.
Другие ограничения
- Удаленные данные невозможно восстановить средствами системы.
ERASE_WRITE_OPERATION
- Запрос не гарантирует отмену всех изменений, внесенных операцией обновления данных.
- При обработке запроса все неактивные датасорсы пропускаются без возврата ошибки. Ошибка возвращается, если не осталось ни одного активного датасорса, подходящего для исполнения запроса.
GET_CHANGES
- Для логических баз данных, созданных и измененных до версии 5.3, возвращается пустой объект ResultSet.
GET_ENTITY_STATISTICS
Общие ограничения
- Статистика сохраняется до рестарта системы, при рестарте все значения, кроме
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
, не соединяются.
Ограничения партиционирования
- Запрос к партиционированной таблице должен содержать условие на основе столбцов ключа партиционирования, однозначно определяющее одну из партиций таблицы. Возможные варианты условия: условие
WHERE
, условиеJOIN
-соединения или комбинация этих двух условий. Обращение к данным нескольких партиций в одном запросе недоступно. - Данные партиции могут соединяться с только с теми данными, которые размещены в том же датасорсе, что и данные партиции.
Другие ограничения
- Запрос без
FOR SYSTEM_TIME
не возвращает данные с метками времени, превышающими текущее время сервера. - Псевдонимы (алиасы) сущностей и столбцов должны начинаться с латинской буквы. После первого символа могут следовать латинские буквы, цифры и символы подчеркивания в любом порядке.
- При обработке запроса все неактивные датасорсы пропускаются без возврата ошибки. Ошибка возвращается, если не осталось ни одного активного датасорса, подходящего для исполнения запроса.
SELECT FROM INFORMATION_SCHEMA
- Не допускается комбинирование подзапросов к
INFORMATION_SCHEMA
с подзапросами к логическим базам данных. - Строковые значения столбцов в условии
WHERE
должны быть указаны в верхнем регистре или с использованием ключевого словаUPPER
.
TRUNCATE ACTUAL
Ограничения выполнения
- Во время работы запроса не допускается выполнение BEGIN DELTA.
Ограничения сущностей
- Запрос недоступен для обычных логических таблиц с retention-правилами, предназначенными для остужения данных, а также для партиционированных таблиц, партиции которых имеют retention-правила для остужения данных.
- Запрос недоступен для несинхронизированных материализованных представлений.
- Когда изменения данных удаляются из таблицы, все связанные с ней материализованные представления остаются в прежнем состоянии и продолжают хранить данные, удаленные из таблицы.
Ограничения WHERE
- Условие
WHERE
не может содержать подзапросы, соединения и другие операции. Поддерживается только простой фильтр. - Выражение в условии
WHERE
может содержать только те столбцы, которые входят в первичный ключ таблицы (или представления).
Другие ограничения
- Удаление данных невозможно отменить.
TRUNCATE_HISTORY
- Условие
WHERE
не может содержать подзапросы, соединения и другие операции. Поддерживается только простой фильтр. - Запрос не поддерживает удаление данных из материализованных представлений.
- Удаление данных невозможно отменить.
UPSERT VALUES
Ограничения выполнения
- Выполнение запроса недоступно, если есть незавершенная операция по изменению схемы.
- Выполнение запроса вне дельты недоступно после дельты, закрытой с будущей меткой времени относительно серверного времени.
- Не допускается параллельное выполнение идентичных запросов.
Ограничения СУБД
- Запрос не поддерживает вставку данных в СУБД ADQM и ADG.
Ограничения сущностей
- Вставка данных в логические и материализованные представления недоступна.
Ограничения партиционирования
- При вставке данных в партиционированную таблицу все записи, для которых нет подходящей партиции, игнорируются.
- Одновременная запись данных (загрузка, вставка и удаление) в партиционированную таблицу и ее партиции недоступна.
Другие ограничения
- Ключевое слово
RETRY
недоступно в запросах к прокси-таблицам и standalone-таблицам. - При обработке запроса все неактивные датасорсы пропускаются без возврата ошибки. Ошибка возвращается, если не осталось ни одного активного датасорса, подходящего для исполнения запроса.