Ограничения системы
Содержание раздела
- ALTER VIEW
- BEGIN DELTA
- CHECK_DATA
- CHECK_SUM
- CHECK_SUM_SNAPSHOT
- COMMIT DELTA
- CREATE DATABASE
- CREATE DOWNLOAD EXTERNAL TABLE
- CREATE MATERIALIZED VIEW
- CREATE READABLE EXTERNAL TABLE
- CREATE TABLE
- CREATE UPLOAD EXTERNAL TABLE
- CREATE VIEW
- CREATE WRITABLE EXTERNAL TABLE
- DELETE
- DENY_CHANGES
- DROP DATABASE
- DROP DOWNLOAD_EXTERNAL_TABLE
- DROP MATERIALIZED VIEW
- DROP READABLE EXTERNAL TABLE
- DROP TABLE
- DROP UPLOAD EXTERNAL TABLE
- DROP_VIEW
- DROP WRITABLE EXTERNAL TABLE
- ERASE DELTA
- GET_CHANGES
- GET_ENTITY_DDL
- GET_ENTITY_STATISTICS
- GET_WRITE_OPERATIONS
- INSERT INTO download external table
- INSERT SELECT FROM upload_external_table
- INSERT SELECT
- INSERT VALUES
- RESUME_WRITE_OPERATION
- ROLLBACK DELTA
- SELECT
- SELECT FROM INFORMATION_SCHEMA
- TRUNCATE ACTUAL
- TRUNCATE_HISTORY
- UPSERT VALUES
ALTER VIEW
Ограничения выполнения
- Выполнение запроса недоступно при наличии любого из факторов:
- горячей дельты,
- запрета на изменение сущностей (см. раздел DENY_CHANGES).
- Запрос не может быть выполнен в сервисной базе данных
INFORMATION_SCHEMA
.
Ограничения SELECT-подзапроса
- SELECT-подзапрос не может содержать:
- логические и материализованные представления,
- системные представления
INFORMATION_SCHEMA
, - ключевое слово FOR SYSTEM_TIME.
- Ключевое слово
DATASOURCE_TYPE
, указанное в SELECT-подзапросе, игнорируется.
BEGIN DELTA
- Выполнение запроса невозможно при наличии незавершенного запроса на создание, удаление или изменение таблицы или представления.
- Если в запросе указан номер открываемой дельты, он должен быть равен номеру последней закрытой дельты + 1.
CHECK_DATA
Ограничения сущностей
- Проверка логических и материализованных представлений недоступна.
- Максимальное количество проверяемых записей в одной сущности ограничено и регулируется коэффициентом нормализации.
Ограничения точности
- Существует вероятность совпадения контрольных сумм для разных наборов записей, поэтому возможен ложноположительный результат проверки.
- Значения типа FLOAT и DOUBLE могут приводить к расхождениям при проверке из-за разницы в точности типов.
CHECK_SUM
Ограничения сущностей
- Контрольная сумма по всей логической базе данных рассчитывается только по данным логических таблиц. Данные логических и материализованных представлений не учитываются.
- Расчет контрольной суммы недоступен для логических представлений, содержащих данные ADQM и (или) ADG.
- Расчет контрольной суммы недоступен для логических представлений, основанных на standalone-таблицах.
- Максимальное количество записей в одной сущности, для которого можно рассчитать контрольную сумму, ограничено и регулируется коэффициентом нормализации.
Ограничения точности
- Существует вероятность совпадения контрольных сумм для разных наборов данных.
- Значения типа FLOAT и DOUBLE могут приводить к расхождениям в контрольных суммах из-за разницы в точности типов.
CHECK_SUM_SNAPSHOT
Ограничения СУБД
- Запрос не поддерживается для ADG.
Ограничения сущностей
- Контрольная сумма логической базы данных рассчитывается только по данным логических таблиц и не учитывает данные логических и материализованных представлений.
- Расчет контрольной суммы недоступен для логических представлений, основанных на standalone-таблицах.
- Количество записей в одной сущности, для которого можно рассчитать контрольную сумму, ограничено и регулируется коэффициентом нормализации.
Ограничения точности
- Существует вероятность совпадения контрольных сумм для разных наборов данных.
- Значения типа FLOAT и DOUBLE могут приводить к расхождениям в контрольных суммах из-за разницы в точности типов.
COMMIT DELTA
- Если в запросе указаны дата и время закрытия дельты, они должны быть больше, чем дата и время последней закрытой дельты логической базы данных.
- Минимально допустимая разница во времени между закрытием дельт — 1 секунда.
- Дельту невозможно закрыть, пока в ней есть незавершенные операции записи.
CREATE DATABASE
- Имя логической базы данных должно начинаться с латинской буквы, после первого символа могут следовать латинские буквы, цифры и символы подчеркивания в любом порядке.
- Имя логической БД не может содержать два и более символа подчеркивания (
_
) подряд, если в инсталляции есть ADG. - Логическая БД не может иметь имя
INFORMATION_SCHEMA
, а также имена, перечисленные в разделе Зарезервированные слова.
CREATE DOWNLOAD EXTERNAL TABLE
- Имена таблицы и ее столбцов должны начинаться с латинской буквы. После первого символа могут следовать латинские буквы, цифры и символы подчеркивания в любом порядке.
- Таблица и ее столбцы не могут иметь имена из числа зарезервированных слов.
- Запрос не может быть выполнен в сервисной базе данных
INFORMATION_SCHEMA
.
CREATE MATERIALIZED VIEW
Ограничения выполнения
- Выполнение запроса недоступно при наличии любого из факторов:
- горячей дельты,
- запрета на изменение сущностей (см. раздел DENY_CHANGES).
- Запрос не может быть выполнен в сервисной базе данных
INFORMATION_SCHEMA
.
Ограничения СУБД
- Данные материализованных представлений не могут размещаться в ADB.
- Источником данных для материализованного представления не могут быть ADQM, ADG и ADP.
Ограничения имен
- Имена представления и его столбцов должны начинаться с латинской буквы. После первого символа могут следовать латинские буквы, цифры и символы подчеркивания в любом порядке.
- Имена представления и его столбцов не могут быть из числа зарезервированных слов.
- Имена столбцов не могут быть равны или начинаться со следующих служебных слов:
sys_op
,sys_from
,sys_to
,sys_close_date
,bucket_id
,sign
. - Имена столбцов должны быть уникальны в рамках представления.
Ограничения столбцов
- Порядок столбцов и их типы данных должны совпадать в SELECT-подзапросе и представлении.
- Первичный ключ должен включать все столбцы ключа шардирования.
Ограничения SELECT-подзапроса
- Подзапрос не может содержать:
- логические и материализованные представления,
- системные представления
INFORMATION_SCHEMA
, - ключевое слово FOR SYSTEM_TIME,
- ключевое слово
ORDER BY
, - ключевое слово
LIMIT
.
- Система не проверяет корректность подзапроса при создании представления.
CREATE READABLE EXTERNAL TABLE
- Имена таблицы и ее столбцов не могут быть из числа зарезервированных слов и должны начинаться с латинской буквы. После первого символа могут следовать латинские буквы, цифры и символы подчеркивания.
- Имена и порядок столбцов должны совпадать во внешней таблице и связанной standalone-таблице.
- Запрос не может быть выполнен в сервисной базе данных
INFORMATION_SCHEMA
.
CREATE TABLE
Ограничения выполнения
- Выполнение запроса недоступно при наличии любого из факторов:
- горячей дельты,
- запрета на изменение сущностей (см. раздел DENY_CHANGES).
- Запрос не может быть выполнен в сервисной базе данных
INFORMATION_SCHEMA
.
Ограничения имен
- Имена таблицы и ее столбцов должны начинаться с латинской буквы. После первого символа могут следовать латинские буквы, цифры и символы подчеркивания в любом порядке.
- Имена таблицы и ее столбцов не могут быть из числа зарезервированных слов.
- Имена столбцов не могут быть равны или начинаться со следующих служебных слов:
sys_op
,sys_from
,sys_to
,sys_close_date
,bucket_id
,sign
. - Имена столбцов должны быть уникальны в рамках логической таблицы.
Ограничения столбцов
- Первичный ключ должен включать все столбцы ключа шардирования.
CREATE UPLOAD EXTERNAL TABLE
- Имена таблицы и ее столбцов должны начинаться с латинской буквы, после первого символа могут следовать латинские буквы, цифры и символы подчеркивания в любом порядке.
- Таблица и ее столбцы не могут иметь имена из числа зарезервированных слов.
- Запрос не может быть выполнен в сервисной базе данных
INFORMATION_SCHEMA
.
CREATE VIEW
Ограничения выполнения
- Выполнение запроса недоступно при наличии любого из факторов:
- горячей дельты,
- запрета на изменение сущностей (см. раздел DENY_CHANGES).
- Запрос не может быть выполнен в сервисной базе данных
INFORMATION_SCHEMA
.
Ограничения имен
- Имена представления и его столбцов должны начинаться с латинской буквы. После первого символа могут следовать латинские буквы, цифры и символы подчеркивания в любом порядке.
- Имена представления и его столбцов не могут быть из числа зарезервированных слов.
Ограничения SELECT-подзапроса
- SELECT-подзапрос не может содержать:
- логические и материализованные представления,
- системные представления
INFORMATION_SCHEMA
, - ключевое слово FOR SYSTEM_TIME.
- Ключевое слово
DATASOURCE_TYPE
, указанное в подзапросеquery
, игнорируется.
CREATE WRITABLE EXTERNAL TABLE
- Имена таблицы и ее столбцов не могут быть из числа зарезервированных слов и должны начинаться с латинской буквы. После первого символа могут следовать латинские буквы, цифры и символы подчеркивания.
- Имена и порядок столбцов должны совпадать во внешней таблице и связанной standalone-таблице.
- Запрос не может быть выполнен в сервисной базе данных
INFORMATION_SCHEMA
.
DELETE
Ограничения выполнения
- Не допускается параллельное выполнение идентичных запросов.
Ограничения сущностей
- Удаление записей из логических таблиц возможно только при наличии открытой дельты (см. BEGIN DELTA).
- Удаление записей логических таблиц из ADG недоступно.
- Удаление записей standalone-таблиц из ADG и ADQM недоступно.
- Удаление записей из логических и материализованных представлений недоступно.
Ограничения ключевых слов
- В условии
WHERE
не допускается использование функций, которые приводят к разным результатам в разных СУБД хранилища. Примеры таких функций — это операции над числами с плавающей запятой: сравнение с ними, округление и т.д. - Ключевое слово
RETRY
недоступно в запросах к standalone-таблицам.
DENY_CHANGES
- Выполнение запроса недоступно при наличии другого запрета изменений или незавершенного запроса на создание, удаление или изменение таблицы или представления.
DROP DATABASE
- Не допускается удаление логической БД, имя которой содержит два и более символа подчеркивания (
_
) подряд, если в инсталляции есть ADG. - Недоступно удаление сервисной базы данных
INFORMATION_SCHEMA
.
DROP DOWNLOAD_EXTERNAL_TABLE
- Запрос не может быть выполнен в сервисной базе данных
INFORMATION_SCHEMA
.
DROP MATERIALIZED VIEW
- Выполнение запроса недоступно при наличии любого из факторов:
- горячей дельты,
- запрета на изменение сущностей (см. раздел DENY_CHANGES).
- Запрос не может быть выполнен в сервисной базе данных
INFORMATION_SCHEMA
.
DROP READABLE EXTERNAL TABLE
- Запрос не может быть выполнен в сервисной базе данных
INFORMATION_SCHEMA
.
DROP TABLE
- Выполнение запроса недоступно при наличии любого из факторов:
- горячей дельты,
- запрета на изменение сущностей (см. раздел DENY_CHANGES).
- Запрос не может быть выполнен в сервисной базе данных
INFORMATION_SCHEMA
.
DROP UPLOAD EXTERNAL TABLE
- Запрос не может быть выполнен в сервисной базе данных
INFORMATION_SCHEMA
.
DROP_VIEW
- Выполнение запроса недоступно при наличии любого из факторов:
- горячей дельты,
- запрета на изменение сущностей (см. раздел DENY_CHANGES).
- Запрос не может быть выполнен в сервисной базе данных
INFORMATION_SCHEMA
.
DROP WRITABLE EXTERNAL TABLE
- Запрос не может быть выполнен в сервисной базе данных
INFORMATION_SCHEMA
.
ERASE DELTA
Ограничения выполнения
- Запрос не может быть выполнен при наличии открытой дельты.
- Запрос не может быть выполнен в логической базе данных, в которой есть несинхронизированные материализованные представления.
- Запрос не может быть выполнен в сервисной базе данных
INFORMATION_SCHEMA
.
Ограничения на другие операции
- Во время работы запроса недоступно выполнение запросов BEGIN DELTA, изменение логической схемы данных, а также загрузка и обновление данных.
Другие ограничения
- Запрос не обновляет материализованные представления, которые связаны с очищаемыми таблицами и находятся в других логических базах данных. Такие представления продолжают хранить данные, удаленные из таблиц.
- Удаление данных происходит вне механизма дельт и не может быть отменено.
GET_CHANGES
- Для логических баз данных, созданных и измененных до версии 5.3, возвращается пустой объект ResultSet.
GET_ENTITY_DDL
- Запрос не возвращает информацию о внешних таблицах.
GET_ENTITY_STATISTICS
- Статистика сохраняется до рестарта системы, при рестарте все значения обнуляются.
- При удалении и замене логической сущности статистика по ней не обнуляется.
- Недоступна статистика по внешним таблицам загрузки и выгрузки.
GET_WRITE_OPERATIONS
- Запрос не возвращает информацию о завершенных операциях записи.
INSERT INTO download external table
- Имена и порядок следования столбцов должны совпадать в SELECT-подзапросе на выгрузку данных и внешней таблице выгрузки.
INSERT SELECT FROM upload_external_table
- Загрузка данных в логическую таблицу возможна только при наличии открытой дельты (см. BEGIN DELTA).
- Загрузка данных в логические и материализованные представления недоступна.
INSERT SELECT
Ограничения выполнения
- Не допускается параллельное выполнение идентичных запросов.
Ограничения СУБД
- Вставка данных в ADG недоступна.
Ограничения сущностей
- Вставка данных в логические и материализованные представления недоступна.
- Вставка данных в логическую таблицу возможна только при наличии открытой дельты (см. BEGIN DELTA).
- Если данные вставляются из standalone-таблицы в логическую таблицу, данные standalone-таблицы должны оставаться неизменными во время работы запроса.
Ограничения столбцов
- Типы вставляемых значений должны соответствовать типам данных столбцов в целевой таблице.
Ограничения ключевых слов
- Ключевое слово
RETRY
недоступно в запросах к standalone-таблицам.
INSERT VALUES
Ограничения выполнения
- Не допускается параллельное выполнение идентичных запросов.
Ограничения СУБД
- Запрос не поддерживает вставку данных в ADG.
Ограничения сущностей
- Вставка данных в логические и материализованные представления недоступна.
- Вставка данных в логическую таблицу возможна только при наличии открытой дельты (см. BEGIN DELTA).
Ограничения ключевых слов
- Ключевое слово
RETRY
недоступно в запросах к standalone-таблицам.
RESUME_WRITE_OPERATION
- Запрос не возобновляет обработку операций со статусом «Выполняется», запущенных запросами обновления данных.
ROLLBACK DELTA
- Дельту невозможно откатить, пока в ней есть незавершенные операции записи.
- Запрос не отменяет незавершенные операции записи, запущенные запросами обновления данных.
- Запрос не гарантирует остановку и отмену всех операций за один вызов.
- После выполнения запроса невозможно закрыть дельту, даже если попытка была неуспешной и запрос вернул исключение.
SELECT
Ограничения сущностей
- В запросе можно обращаться либо к логической БД, либо к сервисной БД (см. SELECT FROM INFORMATION_SCHEMA), но не к обеим одновременно.
- Не поддерживаются запросы к материализованным представлениям, содержащие ключевые слова
FOR SYSTEM_TIME
+DATASOURCE_TYPE
, если в представлении отсутствуют данные за момент времени, заданный с помощьюFOR SYSTEM_TIME
.
Ограничения ключевых слов
- Ключевое слово
LISTAGG
недоступно в запросах к ADQM и ADG. - Ключевое слово
COLLATE
недоступно в запросах к ADB, ADP и ADQM. - Ключевое слово
ESTIMATE_ONLY
не возвращает план выполнения запроса для ADQM и ADG. - Ключевое слово
OFFSET
без ограничения количества строк не поддерживается. FOR SYSTEM_TIME
:- Запросы к standalone-таблицам с выражениями
FOR SYSTEM_TIME STARTED IN
иFOR SYSTEM_TIME FINISHED IN
всегда возвращают пустой результат; другие значенияFOR SYSTEM_TIME
в таких запросах игнорируются. - Выражение
FOR SYSTEM_TIME AS OF LATEST_UNCOMMITTED_DELTA
недоступно в запросах к логическим и материализованным представлениям. - Выражения
FOR SYSTEM_TIME STARTED IN
иFOR SYSTEM_TIME FINISHED IN
недоступны в запросе к логическому представлению, если запрос предназначен для ADQM или в представлении используется ключевое словоORDER BY
.
- Запросы к standalone-таблицам с выражениями
- Ключевое слово
ORDER BY
недоступно в SELECT-подзапросе в составе CREATE MATERIALIZED VIEW.
Ограничения соединений
- Не поддерживается соединение сущностей, данные которых размещены в разных СУБД хранилища без какой-либо общей СУБД.
- Если ключами соединения в запросе выступают поля типа Nullable, то строки, где хотя бы один из ключей имеет значение
NULL
, не соединяются.
SELECT FROM INFORMATION_SCHEMA
- Не допускается комбинирование подзапросов к
INFORMATION_SCHEMA
с подзапросами к логическим базам данных. - Строковые значения столбцов в условии
WHERE
должны быть указаны в верхнем регистре или с использованием ключевого словаUPPER
.
TRUNCATE ACTUAL
Ограничения выполнения
- Во время работы запроса не допускается выполнение запросов BEGIN DELTA.
- Запрос не может быть выполнен в сервисной базе данных
INFORMATION_SCHEMA
.
Ограничения сущностей
- Недоступно удаление данных из несинхронизированного материализованного представления.
- Недоступно удаление данных из логической таблицы, с которой связано несинхронизированное материализованное представление.
- При удалении данных из таблицы все связанные с ней материализованные представления остаются в прежнем состоянии и продолжают хранить данные, удаленные из таблицы.
Другие ограничения
- Запрос не поддерживает удаление данных из ADG.
- Удаление данных происходит вне механизма дельт и не может быть отменено.
- Условие
WHERE
не может содержать подзапросы, соединения и другие операции. Поддерживается только plain-условие. - Выражение в условии
WHERE
может содержать только те столбцы, которые входят в первичный ключ таблицы (представления).
TRUNCATE_HISTORY
- Удаление данных происходит вне механизма дельт и не может быть отменено.
- Условие
WHERE
не может содержать подзапросы, соединения и другие операции. Поддерживается только plain-условие. - Запрос не может быть выполнен в сервисной базе данных
INFORMATION_SCHEMA
. - Запрос не поддерживает удаление данных из материализованных представлений.
UPSERT VALUES
Ограничения выполнения
- Не допускается параллельное выполнение идентичных запросов.
Ограничения СУБД
- Запрос не поддерживает вставку данных в ADQM и ADG.
Ограничения сущностей
- Вставка данных в логические и материализованные представления недоступна.
- Вставка данных в логическую таблицу возможна только при наличии открытой дельты (см. BEGIN DELTA).
Ограничения ключевых слов
- Ключевое слово
RETRY
недоступно в запросах к standalone-таблицам.