Предметный указатель I. Ограничения Tantor SE#
Предметный указатель I. Ограничения Tantor SE
Таблица I.1 описывает различные жесткие ограничения Tantor SE. Однако, практические ограничения, такие как ограничения производительности или доступное дисковое пространство, могут применяться до достижения абсолютных жестких ограничений.
Таблица I.1. Ограничения Tantor SE
Пункт | Верхний предел | Комментарий |
---|---|---|
размер базы данных | неограниченный | |
количество баз данных | 4,294,950,911 | |
отношения на базу данных | 1,431,650,303 | |
размер отношения | 32 ТБ | со значением по умолчанию BLCKSZ равным 8192 байтам |
строки на таблицу | ограничены количеством кортежей, которые могут поместиться на 4 294 967 295 страниц | |
столбцы на таблицу | 1600 | дополнительно ограничены размером кортежа, помещающегося на одной странице; см. примечание ниже |
столбцы в наборе результатов | 1664 | |
размер поля | 1 ГБ | |
длина идентификатора | 63 байта | может быть увеличена путем перекомпиляции Tantor SE |
индексы на таблицу | неограниченное количество | ограничено максимальным количеством отношений на базу данных |
количество столбцов на индекс | 32 | может быть увеличено путем перекомпиляции Tantor SE |
ключи раздела | 32 | могут быть увеличены путем повторной компиляции Tantor SE |
Максимальное количество столбцов для таблицы дополнительно сокращается, так как кортеж, который хранится, должен помещаться на одной 8192-байтовой странице кучи. Например, исключая заголовок кортежа, кортеж, состоящий из 1600 столбцов типа int
, занимал бы 6400 байт и мог бы быть сохранен на странице кучи, но кортеж из 1600 столбцов типа bigint
занимал бы 12800 байт и, следовательно, не поместился бы на странице кучи.
Переменной длины поля типов, таких как text
, varchar
, и char
, могут храниться вне строки в таблице TOAST, когда значения достаточно велики, чтобы это потребовалось. Внутри кортежа в куче должен оставаться только указатель размером 18 байт. Для полей переменной длины меньшей длины используется либо 4-байтовый, либо 1-байтовый заголовок поля, и значение хранится внутри кортежа в куче.
Столбцы, которые были удалены из таблицы, также влияют на максимальное ограничение количества столбцов. Кроме того, хотя значения удаленных столбцов для новых созданных кортежей внутренне помечаются как null в битовой карте null кортежа, битовая карта также занимает место.