Имя столбца должно быть уникально в рамках логической таблицы и соответствовать требованиям, описанным в разделе Соглашения об именах.
Ограничения партиционирования
При добавлении столбца в партиционированную таблицу или партиции необходимо добавить такой же столбец во все связанные логические таблицы (во все партиции таблицы или в связанную партиционированную таблицу и другие ее партиции соответственно), чтобы избежать расхождения в структуре партиций и партиционированных таблиц.
Другие ограничения
Можно добавить только nullable-столбец.
После изменения таблицы запросы к связанным логическим и материализованным представлениям могут стать недоступными. В этом случае нужно пересоздать сбойные представления.
Информационная схема обновляется асинхронно, поэтому добавленный столбец может не сразу появиться в информационной схеме.
Выполнение запроса недоступно, если есть незавершенная операция записи или установлен запрет на изменение сущностей.
Ограничения партиционирования
При удалении столбца из партиционированной таблицы или партиции необходимо удалить соответствующий столбец из всех связанных логических таблиц (из всех партиций таблицы или из связанной партиционированной таблицы и других ее партиции соответственно), чтобы избежать расхождения в структуре партиций и партиционированных таблиц.
Другие ограничения
Недоступно удаление столбца, входящего в первичный ключ или ключ шардирования.
После изменения таблицы запросы к связанным логическим и материализованным представлениям могут стать недоступными. В этом случае нужно пересоздать сбойные представления.
Информационная схема обновляется асинхронно, поэтому добавленный столбец может не сразу появиться в информационной схеме.
Выполнение запроса недоступно, если есть незавершенная операция записи или установлен запрет на изменение сущностей.
Ограничения имен
Имя таблицы должно быть уникально в рамках логической базы данных и соответствовать требованиям, описанным в разделе Соглашения об именах.
Ограничения партиционирования
Переименование партиционированной таблицы недоступно, если у нее есть партиции.
Другие ограничения
После изменения таблицы запросы к связанным логическим и материализованным представлениям могут стать недоступными. В этом случае нужно пересоздать сбойные представления.
Информационная схема обновляется асинхронно, поэтому таблица может не сразу переименоваться в информационной схеме.
Выполнение запроса недоступно, если есть незавершенная операция записи или установлен запрет на изменение сущностей.
Ограничения имен
Имена столбцов должны быть уникальны в рамках логической таблицы и соответствовать требованиям, описанным в разделе Соглашения об именах.
Ограничения партиционирования
При переименовании столбца в партиционированной таблице или партиции необходимо переименовать соответствующий столбец во всех связанных логических таблицах (во всех партициях таблицы или в связанной партиционированной таблице и других ее партициях соответственно), чтобы избежать расхождения в структуре партиций и партиционированных таблиц.
Другие ограничения
Недоступно переименование столбца, входящего в первичный ключ или ключ шардирования.
После изменения таблицы запросы к связанным логическим и материализованным представлениям могут стать недоступными. В этом случае нужно пересоздать сбойные представления.
Информационная схема обновляется асинхронно, поэтому добавленный столбец может не сразу появиться в информационной схеме.
Недоступна проверка партиционированных таблиц, а также логических и материализованных представлений.
Максимальное количество проверяемых записей в одной сущности ограничено и регулируется коэффициентом нормализации.
Ограничения точности
Есть небольшая вероятность, что контрольные суммы совпадут для разных наборов данных, поэтому возможен ложноположительный результат проверки.
Значения типа FLOAT и DOUBLE могут приводить к расхождениям при проверке из-за разницы в точности типов.
Другие ограничения
Недоступна проверка изменений, внесенных операциями записи после последней закрытой дельты.
При обработке запроса все неактивные датасорсы пропускаются без возврата ошибки. Ошибка возвращается, если не осталось ни одного активного датасорса, подходящего для исполнения запроса.
Контрольная сумма по всей логической базе данных рассчитывается только по данным логических таблиц. Данные логических и материализованных представлений не учитываются.
Расчет контрольной суммы недоступен:
для логических представлений, основанных на данных СУБД ADQM;
Максимальное количество записей в одной сущности, по которым можно рассчитать контрольную сумму, ограничено и регулируется коэффициентом нормализации.
Ограничения точности
Есть небольшая вероятность, что контрольные суммы совпадут для разных наборов данных.
Значения типа FLOAT и DOUBLE могут приводить к расхождениям в контрольных суммах из-за разницы в точности типов.
Другие ограничения
Расчет контрольной суммы в горячей дельте доступен только для логических таблиц.
Изменения, совершенные после последней закрытой дельты, учитываются в расчете только при запросе по горячей дельте. Если горячей дельты нет, контрольную сумму таких изменений рассчитать невозможно.
При обработке запроса все неактивные датасорсы пропускаются без возврата ошибки. Ошибка возвращается, если не осталось ни одного активного датасорса, подходящего для исполнения запроса.
Контрольная сумма логической базы данных рассчитывается только по данным логических таблиц и не учитывает данные логических и материализованных представлений.
Расчет контрольной суммы недоступен:
для логических представлений, основанных на standalone-таблицах;
для партиционированных таблиц.
Количество записей в одной сущности, по которым можно рассчитать контрольную сумму, ограничено и регулируется коэффициентом нормализации.
Ограничения точности
Есть небольшая вероятность, что контрольные суммы совпадут для разных наборов данных.
Значения типа FLOAT и DOUBLE могут приводить к расхождениям в контрольных суммах из-за разницы в точности типов.
Другие ограничения
Расчет контрольной суммы в горячей дельте доступен только для логических таблиц.
Запрос не учитывает данные, добавленные после дельты, по состоянию на которую рассчитывается контрольная сумма.
При обработке запроса все неактивные датасорсы пропускаются без возврата ошибки. Ошибка возвращается, если не осталось ни одного активного датасорса, подходящего для исполнения запроса.
Если в подзапросе указана одна логическая таблица и нет группировки и агрегации данных, указанная таблица и материализованное представление должны находиться в одной логической БД.
Система не проверяет корректность подзапроса при создании представления.
Другие ограничения
Представления, построенные на соединении логических таблиц и standalone-таблиц, могут содержать не все изменения standalone-таблиц из-за того, что такие таблицы не поддерживают версионирование данных.
Информационная схема обновляется асинхронно, поэтому созданное представление может не сразу появиться в информационной схеме.
Имена таблицы и ее столбцов должны соответствовать требованиям, описанным в разделе Соглашения об именах.
Имена и порядок столбцов должны совпадать во внешней таблице и связанной standalone-таблице.
В readable-таблице, предназначенной для загрузки данных из Kafka, последним должен быть указан столбец sys_op с типом BIGINT. Столбец используется в служебных целях; без него данные не загрузятся.
Информационная схема обновляется асинхронно, поэтому созданная таблица может не сразу появиться в информационной схеме.
Выполнение запроса недоступно, если есть незавершенная операция записи или установлен запрет на изменение сущностей.
Ограничения имен
Имена таблицы и ее столбцов должны соответствовать требованиям, описанным в разделе Соглашения об именах.
Имена столбцов должны быть уникальны в рамках логической таблицы.
Ограничения ключей
Первичный ключ должен включать все столбцы ключа шардирования и все столбцы ключа партиционирования.
Ограничения ключевых слов
Ключевое слово RETENTION доступно для СУБД ADB и ADP.
Выражение с ключевым словом RETENTION не может содержать датасорс-источник и датасорс-приемник разных типов.
Ограничения партиционирования
Создание партиционированных таблиц и партиций доступно только в СУБД ADP.
Диапазоны партиционирования в партиции должны быть заданы от меньшего значения к большему, а также без пересечения и без примыкания диапазонов друг к другу.
Диапазоны партиционирования в партициях, относящихся к одной партиционированной таблице, должны быть заданы без пересечения значений и должны покрывать все возможные значения ключа партиционирования партиционированной таблицы.
Партиционированная таблица и все ее партиции должны находиться в одной логической БД и иметь одинаковую структуру.
Для партиционированной таблицы недоступны retention-правила.
Вложенное партиционирование недоступно: партиция не может быть иметь свои партиции.
Другие ограничения
Информационная схема обновляется асинхронно, поэтому созданная таблица может не сразу появиться в информационной схеме.
Выполнение запроса недоступно, если есть незавершенная операция по изменению схемы.
Не допускается параллельное выполнение идентичных запросов.
Ограничения сущностей
Запрос доступен только для логических таблиц и standalone-таблиц.
Удаление записей из standalone-таблиц доступно для СУБД ADB и ADP.
Ограничения ключевых слов
В условии WHERE не допускается использование функций, которые приводят к разным результатам в разных СУБД. Примеры таких функций — это операции над числами с плавающей запятой: сравнение с ними, округление и т.д.
Ключевое слово RETRY недоступно в запросах к standalone-таблицам.
Ограничения партиционирования
Запрос на удаление данных из партиционированной таблицы должен содержать условие WHERE на основе столбцов ключа партиционирования, однозначно определяющее одну из партиций таблицы. Удаление данных из нескольких партиций одним запросом недоступно. Это поведение может быть изменено в следующих версиях.
Другие ограничения
Запрос не удаляет данные без метки времени, а также данные с меткой времени, превышающей текущее время сервера.
SELECT-подзапрос, если он указан в условии, должен быть доступен для исполнения во всех датасорсах, где размещены удаляемые данные таблицы.
При обработке запроса все неактивные датасорсы пропускаются без возврата ошибки. Ошибка возвращается, если не осталось ни одного активного датасорса, подходящего для исполнения запроса.
Выполнение запроса недоступно при наличии другого запрета изменений или незавершенного запроса на создание, удаление или изменение таблицы или представления.
Запрос недоступен для логических БД, где есть логические таблицы с retention-правилами, предназначенными для остужения данных.
Запрос не обновляет материализованные представления, которые связаны с очищаемыми таблицами и находятся в других логических базах данных. Такие представления продолжают хранить данные, удаленные из таблиц.
Другие ограничения
Удаленные данные невозможно восстановить средствами системы.
Запрос не гарантирует отмену всех изменений, внесенных операцией обновления данных.
При обработке запроса все неактивные датасорсы пропускаются без возврата ошибки. Ошибка возвращается, если не осталось ни одного активного датасорса, подходящего для исполнения запроса.
Статистика сохраняется до рестарта системы, при рестарте все значения, кроме ROWS_COUNT и ROWS_COUNT_DELTA, обнуляются.
При удалении логической сущности или логической БД ее статистика не обнуляется.
Статистика не ведется по внешним таблицам загрузки и выгрузки, а также системным представлениям.
Ограничения значений ROWS_COUNT и ROWS_COUNT_DELTA
Значения рассчитываются для следующих сущностей, данные которых размещены в СУБД ADB, ADP и (или) ADQM: для обычных логических таблиц, партиций, логических представлений и материализованных представлений.
Значения обновляются только при закрытии дельты с номером ROWS_COUNT_DELTA+1.
После обнуления статистики значения остаются равными null до момента закрытия ближайшей дельты.
Значения для материализованного представления рассчитывается по исходному запросу представления, а не его текущему состоянию. Поэтому значения могут отличаться от фактических, если представление не успело синхронизироваться с источником.
Имена и порядок следования столбцов должны совпадать в SELECT-подзапросе на выгрузку данных и во внешней таблице выгрузки.
При обработке запроса все неактивные датасорсы пропускаются без возврата ошибки. Ошибка возвращается, если не осталось ни одного активного датасорса, подходящего для исполнения запроса.
Выполнение запроса недоступно, если есть незавершенная операция по изменению схемы.
Ограничения сущностей
Недоступна загрузка данных в логические и материализованные представления.
Ограничения партиционирования
При загрузке данных в партиционированную таблицу все записи, для которых нет подходящей партиции, игнорируются.
Другие ограничения
Недоступна одновременная загрузка данных из одного топика Kafka в разные таблицы ADG.
Загрузка данных с помощью readable-таблиц доступна только в датасорсы типа ADP и только при наличии установленного коннектора Kafka Jet writer.
При обработке запроса все неактивные датасорсы пропускаются без возврата ошибки. Ошибка возвращается, если не осталось ни одного активного датасорса, подходящего для исполнения запроса.
Выполнение запроса недоступно, если есть незавершенная операция по изменению схемы.
Не допускается параллельное выполнение идентичных запросов.
Ограничения сущностей
Вставка данных в логические и материализованные представления недоступна.
Если данные вставляются из standalone-таблицы в логическую таблицу, данные standalone-таблицы должны оставаться неизменными во время работы запроса.
Ограничения партиционирования
При вставке данных в партиционированную таблицу все записи, для которых нет подходящей партиции, игнорируются.
Другие ограничения
Типы вставляемых значений должны соответствовать типам данных столбцов в таблице-приемнике.
Ключевое слово RETRY недоступно в запросах к standalone-таблицам.
При обработке запроса все неактивные датасорсы пропускаются без возврата ошибки. Ошибка возвращается, если не осталось ни одного активного датасорса, подходящего для исполнения запроса.
Выполнение запроса недоступно, если есть незавершенная операция по изменению схемы.
Не допускается параллельное выполнение идентичных запросов.
Ограничения сущностей
Вставка данных в логические и материализованные представления недоступна.
Ограничения партиционирования
При вставке данных в партиционированную таблицу все записи, для которых нет подходящей партиции, игнорируются.
Другие ограничения
Ключевое слово RETRY недоступно в запросах к standalone-таблицам.
При обработке запроса все неактивные датасорсы пропускаются без возврата ошибки. Ошибка возвращается, если не осталось ни одного активного датасорса, подходящего для исполнения запроса.
Запрос не возобновляет обработку операций со статусом «Выполняется», запущенных запросами обновления данных.
При обработке запроса все неактивные датасорсы пропускаются без возврата ошибки. Ошибка возвращается, если не осталось ни одного активного датасорса, подходящего для исполнения запроса.
При обработке запроса все неактивные датасорсы пропускаются без возврата ошибки. Ошибка возвращается, если не осталось ни одного активного датасорса, подходящего для исполнения запроса.
Выполнение запроса недоступно, если есть незавершенные операции записи или другой незавершенный запрос ROLLBACKDELTA.
После запуска запроса дельту невозможно закрыть, даже если запрос вернул ошибку.
Запрос не отменяет незавершенные операции записи, запущенные запросами обновления данных, и операции записи, выполненные до дельты.
При обработке запроса все неактивные датасорсы пропускаются без возврата ошибки. Ошибка возвращается, если не осталось ни одного активного датасорса, подходящего для исполнения запроса.
В запросе можно обращаться либо к логической БД, либо к сервисной БД (см. SELECT FROM INFORMATION_SCHEMA), но не к обеим одновременно.
Не поддерживаются запросы к материализованным представлениям, содержащие ключевые слова FORSYSTEM_TIME + DATASOURCE_TYPE, если в представлении отсутствуют данные за момент времени, указанный с помощью FORSYSTEM_TIME.
Не поддерживаются запросы к внешним readable-таблицам, связанным с топиками Kafka.
Ограничения ключевых слов
Ключевое слово LISTAGG доступно для СУБД ADB и ADP.
Ключевое слово ESTIMATE_ONLY возвращает план выполнения запроса только для СУБД ADB и ADP.
Ключевое слово OFFSET без ограничения количества строк не поддерживается.
FORSYSTEM_TIME:
Ключевое слово недоступно в SELECT-подзапросах в составе запросов на создание и изменение логических и материализованных представлений, а также в запросах и подзапросах к обобщенным табличным выражениям.
Запросы к standalone-таблицам с выражениями FORSYSTEM_TIMESTARTEDIN и FORSYSTEM_TIMEFINISHEDIN всегда возвращают пустой результат; другие значения FORSYSTEM_TIME в таких запросах игнорируются.
Выражение FORSYSTEM_TIMEASOFLATEST_UNCOMMITTED_DELTA недоступно в запросах к логическим и материализованным представлениям.
Выражения FORSYSTEM_TIMESTARTEDIN и FORSYSTEM_TIMEFINISHEDIN недоступны в запросе к логическому представлению, если запрос предназначен для СУБД ADQM или в представлении используется ключевое слово ORDERBY.
Недоступны рекурсивные и материализованные табличные выражения.
В табличных выражениях не поддерживаются операторы, изменяющих данные (INSERT, UPSERT и DELETE), и ключевое слово DATASOURCE_TYPE.
Ограничения соединений
Не поддерживается соединение сущностей, данные которых размещены в разных датасорсах без какого-либо общего датасорса.
Если ключами соединения в запросе выступают поля типа Nullable, то строки, где хотя бы один из ключей имеет значение NULL, не соединяются.
Ограничения партиционирования
Запрос к партиционированной таблице должен содержать условие на основе столбцов ключа партиционирования, однозначно определяющее одну из партиций таблицы. Возможные варианты условия: условие WHERE, условие JOIN-соединения или комбинация этих двух условий. Обращение к данным нескольких партиций в одном запросе недоступно.
Данные партиции могут соединяться с только с теми данными, которые размещены в том же датасорсе, что и данные партиции.
Другие ограничения
Запрос без FORSYSTEM_TIME не возвращает данные, которые не имеют метки времени или имеют метку времени, превышающую текущее время сервера.
Псевдонимы (алиасы) сущностей и столбцов должны начинаться с латинской буквы. После первого символа могут следовать латинские буквы, цифры и символы подчеркивания в любом порядке.
При обработке запроса все неактивные датасорсы пропускаются без возврата ошибки. Ошибка возвращается, если не осталось ни одного активного датасорса, подходящего для исполнения запроса.
Во время работы запроса не допускается выполнение BEGIN DELTA.
Ограничения сущностей
Запрос недоступен для обычных логических таблиц с retention-правилами, предназначенными для остужения данных, а также для партиционированных таблиц, партиции которых имеют retention-правила для остужения данных.
Запрос недоступен для несинхронизированных материализованных представлений.
Когда изменения данных удаляются из таблицы, все связанные с ней материализованные представления остаются в прежнем состоянии и продолжают хранить данные, удаленные из таблицы.
Ограничения WHERE
Условие WHERE не может содержать подзапросы, соединения и другие операции. Поддерживается только простой фильтр.
Выражение в условии WHERE может содержать только те столбцы, которые входят в первичный ключ таблицы (или представления).
Выполнение запроса недоступно, если есть незавершенная операция по изменению схемы.
Не допускается параллельное выполнение идентичных запросов.
Ограничения СУБД
Запрос не поддерживает вставку данных в СУБД ADQM и ADG.
Ограничения сущностей
Вставка данных в логические и материализованные представления недоступна.
Ограничения партиционирования
При вставке данных в партиционированную таблицу все записи, для которых нет подходящей партиции, игнорируются.
Другие ограничения
Ключевое слово RETRY недоступно в запросах к standalone-таблицам.
При обработке запроса все неактивные датасорсы пропускаются без возврата ошибки. Ошибка возвращается, если не осталось ни одного активного датасорса, подходящего для исполнения запроса.