Параметры конфигурации PostgreSQL

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

Прежние версии:

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

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

Если вы хотите, чтобы большинство классов объектов использовали пространственный тип, отличный от значения по умолчанию, замените параметр GEOMETRY_STORAGE на ключевое слово DEFAULTS. Если вы хотите, чтобы только некоторые классы пространственных объектов использовали другой пространственный тип, создайте пользовательское ключевое слово и включите параметр GEOMETRY_STORAGE в соответствующий пространственный тип, а также параметр UI_TEXT, чтобы это пользовательское ключевое слово стало доступным для пользователей.

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

В базах геоданных, хранящихся в базе данных PostgreSQL, пары «имя параметра – строка конфигурации» используются ArcGIS для выполнения следующих задач:

  • Определение типа данных для пространственных столбцов.
  • Задание характеристик хранения таблиц и индексов. Для правильного использования этих параметров вам нужно понять, как PostgreSQL создает и сохраняет таблицы и индексы. Поэтому, перед изменением этих параметров изучите документацию PostgreSQL на ту версию PostgreSQL, которую будете использовать.
  • Обеспечение доступности ключевых слов для пользователей в интерфейсе ArcGIS.
  • Хранение комментариев, описывающих ключевое слово конфигурации.
  • Задание способа хранения документов XML. Поскольку ArcGIS не использует документы XML напрямую, скорее всего у вас не будет необходимости настраивать эти параметры.

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

Имя параметраОписаниеЗначение

A_INDEX_ROWID

Выражение Storage для индекса столбца ObjectID таблицы добавлений

См. документацию для PostgreSQL (параметры CREATE INDEX).

A_INDEX_STATEID

Выражение Storage для индекса, в столбце sde_state_id таблицы добавлений

См. документацию для PostgreSQL (параметры CREATE INDEX).

А_INDEX_USER

Выражение Storage для пользовательских индексов таблицы добавлений

См. документацию для PostgreSQL (параметры CREATE INDEX).

А_INDEX_XML

Выражение Storage для индекса столбца XML таблицы добавлений

См. документацию для PostgreSQL (параметры CREATE INDEX).

A_STORAGE

Определение способа хранения в таблице добавлений

См. документацию для PostgreSQL (параметры CREATE TABLE).

AUX_INDEX_COMPOSITE

Выражение Storage для столбца составного индекса растровой таблицы AUX

См. документацию для PostgreSQL (параметры CREATE INDEX).

AUX_STORAGE

Определение способа хранения в растровой таблице AUX

См. документацию для PostgreSQL (параметры CREATE TABLE).

B_INDEX_RASTER

Выражение Storage для индекса растрового столбца в бизнес-таблице

См. документацию для PostgreSQL (параметры CREATE INDEX).

B_INDEX_ROWID

Выражение Storage для индексов столбца ObjectID в бизнес-таблице и растрового rowid R<N>_SDE_ROWID_UK

См. документацию для PostgreSQL (параметры CREATE INDEX).

B_INDEX_TO_DATE

Информация о параметре хранения для создания индекса r<registration_id>_sde_todate, который используется при обновлении таблицы истории во время операции архивирования

См. документацию для PostgreSQL (параметры CREATE INDEX).

B_INDEX_USER

Выражение Storage для пользовательских индексов бизнес-таблицы

См. документацию для PostgreSQL (параметры CREATE INDEX).

B_INDEX_XML

Выражение Storage для индекса столбца XML бизнес-таблицы

См. документацию для PostgreSQL (параметры CREATE INDEX).

B_STORAGE

Определение способа хранения для бизнес-таблиц и таблиц атрибутов растров

См. документацию для PostgreSQL (параметры CREATE TABLE).

BLK_INDEX_COMPOSITE

Выражение Storage для столбца составного индекса таблицы Raster BLK

См. документацию для PostgreSQL (параметры CREATE INDEX).

BLK_STORAGE

Определение способа хранения в растровой таблице BLK

См. документацию для PostgreSQL (параметры CREATE TABLE).

ВND_INDEX_COMPOSITE

Выражение Storage для столбца составного индекса растровой таблицы BND

См. документацию для PostgreSQL (параметры CREATE INDEX).

BND_INDEX_ID

Выражение Storage для индекса столбца RID растровой таблицы BND

См. документацию для PostgreSQL (параметры CREATE INDEX).

BND_STORAGE

Определение способа хранения в растровой таблице BND

См. документацию для PostgreSQL (параметры CREATE TABLE).

COMMENT

Строка, используемая для примечаний

Можно добавить любой комментарий длиной не более 2048 символов

D_INDEX_ALL

Задает фактор заполнения для индексов столбцов sde_states_id, sde_deletes_row_id и deleted_at columns

См. документацию для PostgreSQL (параметры CREATE INDEX).

D_INDEX_DELETED_AT

Выражение Storage для индекса, в столбце sde_deleted_at таблицы Deletes

См. документацию для PostgreSQL (параметры CREATE INDEX).

D_STORAGE

Определение способа хранения в таблице Deletes

См. документацию для PostgreSQL (параметры CREATE TABLE).

GEOMETRY_STORAGE

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

ST_GEOMETRY, PG_GEOMETRY или PG_GEOGRAPHY

LD_INDEX_ALL

Задает первичный ключ для временной таблицы sde_logfile_data

См. документацию для PostgreSQL (параметры CREATE INDEX).

LD_STORAGE

Задает хранение для временной таблицы sde_logfile_data

См. документацию для PostgreSQL (параметры CREATE TABLE).

LF_INDEX_ID

Задает первичный ключ хранения индекса для временной таблицы sde_logfiles

См. документацию для PostgreSQL (параметры CREATE INDEX).

LF_INDEX_NAME

Выражение Storage для уникального индекса, созданного во временной таблице sde_logfiles

См. документацию для PostgreSQL (параметры CREATE INDEX).

LF_STORAGE

Задает хранение для временной таблицы sde_logfiles

См. документацию для PostgreSQL (параметры CREATE TABLE).

MVTABLES_MODIFIED_INDEX

Выражение Storage для индекса mvtables_modified

См. документацию для PostgreSQL (параметры CREATE INDEX).

MVTABLES_MODIFIED_TABLE

Задает способ хранения для таблицы mvtables_modified

См. документацию для PostgreSQL (параметры CREATE TABLE).

RAS_INDEX_ID

Выражение Storage для индекса RID растровой таблицы RAS

См. документацию для PostgreSQL (параметры CREATE INDEX).

RAS_STORAGE

Определение способа хранения в растровой таблице RAS

См. документацию для PostgreSQL (параметры CREATE TABLE).

RASTER_STORAGE

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

binary

SESSION_INDEX

Выражение Storage для индекса таблиц сеансового файла журнала

Этот параметр имеется, но не используется в PostgreSQL.

SESSION_STORAGE

Задает тип хранения для таблиц сеансового файла журнала

Этот параметр имеется, но не используется в PostgreSQL.

SESSION_TEMP_TABLE

Определяет, создаются ли файлы журнала в tempdb или нет

1 или 0

Этот параметр имеется, но не используется в PostgreSQL.

STATES_INDEX

Выражение Storage для индекса таблицы States

См. документацию для PostgreSQL (параметры CREATE INDEX).

STATES_LINEAGES_INDEX

Определяет способ хранения индекса первичного ключа таблицы sde_state_lineages

См. документацию для PostgreSQL (параметры CREATE INDEX).

STATES_LINEAGES_TABLE

Задает тип хранения для таблицы sde_state_lineages

См. документацию для PostgreSQL (параметры CREATE TABLE).

STATES_TABLE

Задает тип хранения для таблицы sde_states

См. документацию для PostgreSQL (параметры CREATE TABLE).

UI_NETWORK_TEXT

Требуется связанное ключевое слово конфигурации, которое отображается в пользовательском интерфейсе ArcGIS; содержит описание конфигурации сети

Описание – до 2048 символов

UI_TERRAIN_TEXT

Требуется связанное ключевое слово конфигурации, которое отображается в пользовательском интерфейсе ArcGIS; содержит описание конфигурации terrain

Описание – до 2048 символов

UI_TEXT

Требуется связанное ключевое слово конфигурации, которое отображается в пользовательском интерфейсе ArcGIS; содержит описание связанного несоставного ключевого слова конфигурации

Описание – до 2048 символов

UI_TOPOLOGY_TEXT

Требуется связанное ключевое слово конфигурации, которое отображается в пользовательском интерфейсе ArcGIS; содержит описание конфигурации топологии

Описание – до 2048 символов

VERSIONS_INDEX

Выражение Storage для индекса таблицы sde_versions

См. документацию для PostgreSQL (параметры CREATE INDEX).

VERSIONS_TABLE

Задает тип хранения для таблицы sde_versions

См. документацию для PostgreSQL (параметры CREATE TABLE).

XML_COLUMN_STORAGE

Указывает тип столбцов XML, которые нужно создать: собственный DBMS XML или ArcSDE XML

DB_XML или SDE_XML

XML_DOC_INDEX

Условие хранения для индексов xmldoc<n>_pk и xml_doc<n>_ix в таблице sde_xml_doc<n>

См. документацию для PostgreSQL (параметры CREATE INDEX).

XML_DOC_STORAGE

Условие хранения таблицы sde_xml_doc<n>

См. документацию для PostgreSQL (параметры CREATE TABLE).

XML_DOC_UNCOMPRESSED_TYPE

Задает формат хранения документов XML

BINARY или TEXT

XML_IDX_FULLTEXT_UPDATE_METHOD

Определяет, как изменения, внесенные в столбец xml_doc_val в таблице sde_xml_doc<n> (таблице XML-документа) и столбец text_tag таблицы sde_xml_idx<n> (индексной таблицы столбца XML), передаются в полнотекстовый индекс.

MANUAL или AUTOMATIC

XML_IDX_INDEX_DOUBLE

Условие хранения для индекса xmlix<n>_db столбца double_tag таблицы sde_xml_idx<n>

См. документацию для PostgreSQL (параметры CREATE INDEX).

XML_IDX_INDEX_ID

Условие хранения для индекса xmlix<n>_id столбца ID таблицы xml_idx<n>

См. документацию для PostgreSQL (параметры CREATE INDEX).

XML_IDX_INDEX_PK

Условие хранения для индекса xmlix<n>_pk столбца идентичности xml_key_column таблицы sde_xml_idx<n>

См. документацию для PostgreSQL (параметры CREATE INDEX).

XML_IDX_INDEX_STRING

Условие хранения для индекса xmlix<n>_st столбца string_tag таблицы sde_xml_idx<n>

См. документацию для PostgreSQL (параметры CREATE INDEX).

XML_IDX_INDEX_TAG

Условие хранения для индекса xmlix<n>_tg столбца tag_id таблицы sde_xml_idx<n>

См. документацию для PostgreSQL (параметры CREATE INDEX).

XML_IDX_STORAGE

Условие хранения для таблицы sde_xml_idx<n> (индексной таблицы столбца XML)

См. документацию для PostgreSQL (параметры CREATE TABLE).

Краткое описание параметров конфигурации

Для параметров XML <n> обращается к xml_column_id, связанным с определенным XML-столбцом.

Описания функций параметров

По умолчанию PostgreSQL сохраняет таблицы и индексы в табличном пространстве по умолчанию базы данных. Для хранения таблиц и индексов в других табличных пространствах, postgres superuser должен создать дополнительные табличные пространства и предоставить права CREATE для пользователей, который будут создавать в них объекты. Можно использовать команду psql meta-command \db+ для получения списка табличных пространств и прав доступа к ним.

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

Примечание:

Табличные пространства в PostgreSQL используют символьные ссылки; поэтому, пользовательские табличные пространства могут использоваться только на системах с поддержкой символьных ссылок.

Параметры хранения для бизнес-таблицы и индекса

Бизнес-таблица – это таблица атрибутов класса пространственных объектов или таблица непространственных данных. Используйте параметр B_STORAGE для определения конфигурации хранения бизнес-таблицы.

Для поддержки создания индексов бизнес-таблицы существуют пять параметров хранения индексов:

  • Параметр B_INDEX_USER содержит конфигурацию хранения пользовательских индексов.
  • Параметр B_INDEX_ROWID содержит конфигурацию хранения индекса, который ArcGIS создает по зарегистрированного столбцу ObjectID таблицы, как правило, называющийся ROWID или OBJECTID.
  • Параметр B_INDEX_RASTER содержит конфигурацию информацию коэффициента заполнения индекса растрового столбца, созданного ArcGIS при добавлении растрового столбца в бизнес-таблицу. ArcGIS создает этот индекс в классах пространственных объектов с растровым столбцом.
  • Параметр B_INDEX_TO_DATE определяет коэффициент заполнения для индекса R<ид_регистрации>_sde_todate. Этот индекс создается при включении архивации бизнес-таблицы и используется при обновлении таблицы истории во время архивации.
  • Параметр B_INDEX_XML задает коэффициент заполнения индекса столбца XML бизнес-таблицы (также см. следующий раздел "Параметры типов XML").

Параметры хранения таблиц добавлений и удалений

Регистрация бизнес-таблицы или класса пространственных объектов как версионных позволяет нескольким пользователям обслуживать и изменять объект. Для каждой таблицы, зарегистрированной как версионной, ArcGIS создает две таблицы: таблицу добавлений и таблицу удалений.

Через необходимые интервалы времени пользователи объединяют свои изменения с изменениями, внесенными другими пользователями, и разрешают конфликты, которые возникают при изменении один и тех же объектов.

Параметры таблицы добавлений

Параметр A_STORAGE обслуживает конфигурацию хранения для таблицы добавлений. Таблица добавлений названа А<n>, где <n> – идентификатор регистрации, содержащийся в системной таблице базы геоданных sde_table_registry. Например, если бизнес-таблица ROADS имеет идентификатор регистрации 10, ArcGIS создает таблицу добавлений с именем А10.

Другие пять параметров хранения содержат конфигурацию хранения индексов таблицы добавлений. Параметр A_INDEX_ROWID задает коэффициент заполнения индекса, который ArcGIS создает по версионному столбцу ObjectID, также называющемуся ROWID. Индекс ROWID таблицы добавлений называется A<n>_ROWID_IX1, где <n> – это идентификатор регистрации бизнес-таблицы, с которой связана таблица добавлений.

Параметр A_INDEX_STATEID содержит конфигурацию фактора заполнения, который ArcGIS создает по столбцу SDE_STATE_ID таблицы добавлений. Индекс столбца SDE_STATE_ID называется A<n>_STATE_IX2, где <n> – это идентификатор регистрации бизнес-таблицы, с которой связана таблица добавлений.

Параметр хранения A_INDEX_USER содержит конфигурацию фактора заполнения пользовательских индексов, которую создает ArcGIS для таблицы добавлений. Пользовательские индексы бизнес-таблиц дублируются в таблице добавлений. Параметр A_INDEX_RASTER задает фактор заполнения индекса, который создается по индексу растрового столбца таблицы добавлений.

Параметр A_INDEX_XML задает коэффициент заполнения индекса столбца XML таблицы добавлений (также см. следующий раздел "Параметры типов XML").

Параметры таблицы удалений

Параметр D_STORAGE содержит конфигурацию хранения для таблицы удалений. Таблица добавлений названа D<n>, где <n> – это идентификатор регистрации, содержащийся в системной таблице sde_table_registry. Например, если бизнес-таблица ROADS имеет идентификатор регистрации 10, ArcGIS создает таблицу удалений с именем D10.

Другие два параметра хранения содержат конфигурацию хранения индексов, которые ArcGIS создает для таблицы удалений:

  • Параметр D_INDEX_ALL содержит фактор заполнения индекса D<n>_IDX1, который ArcGIS создает по столбцам SDE_STATE_ID и SDE_DELETES_ROW_ID в таблице удалений.
  • Параметр D_INDEX_DELETED_AT содержит фактор заполнения индекса D<n>_IDX2, который ArcGIS создает по столбцу SDE_DELETED_AT таблицы удалений.

Параметры таблицы растровых данных

Когда вы задаете ключевое слово с RASTER_STORAGE, имеющим значение binary, при создании набора растровых данных или набора данных мозаики, растровый столбец, добавляемый в бизнес-таблицу, является фактически ссылкой внешнего ключа на данные растра, хранящиеся в схеме, состоящей из поддерживаемых таблиц и индексов. Если для RASTER_STORAGE задано rasterblob (по умолчанию), столбец bytea добавляется в бизнес-таблицу, а поддерживаемая информация растра хранится в дополнительных таблицах.

Ниже приведено описание параметров таблицы растра, которые задают конфигурацию поддерживаемых растровых таблиц и индексов:

Параметр RAS_STORAGE содержит конфигурацию хранения PostgreSQL CREATE_TABLE таблицы RAS.

Параметр RAS_INDEX_ID определяет коэффициент заполнения индекса таблицы RAS. Параметр BND_STORAGE содержит конфигурацию хранения PostgreSQL CREATE_TABLE таблицы BND.

Параметр хранения BND_INDEX_COMPOSITE задает фактор заполнения столбца композитного индекса таблицы BND.

Параметр хранения BND_INDEX_ID задает фактор заполнения индекса столбца ID строки (RID) таблицы BND.

Параметр AUX_STORAGE содержит конфигурацию хранения PostgreSQL CREATE_TABLE таблицы AUX.

Параметр AUX_INDEX_COMPOSITE определяет коэффициент заполнения для индекса AUX.

Параметр BND_STORAGE содержит конфигурацию хранения PostgreSQL CREATE_TABLE таблицы BLK.

Параметр BLK_INDEX_COMPOSITE определяет коэффициент заполнения для индекса таблицы BLK.

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

Параметр B_STORAGE определяет место хранения для таблиц атрибутов растров. Эта таблица (или таблицы; их может быть несколько) хранит значения атрибутов по значениям ячеек растра. Если вы захотите сохранить эти таблицы в каком-либо другом месте, а не в бизнес-таблицах пространственных объектов, создайте ключевое слово растров, которое бы которое задало другую информацию о хранилище для таблиц атрибутов растров. Инструктируйте создателей данных использовать это ключевое слово при создании растровых наборов данных.

Параметры хранения геометрии

В используемых в PostgreSQL базах геоданных должен присутствовать тип геометрии Esri ST_Geometry. Но после создания вы можете использовать три формата хранения пространственных данных в базах геоданных в PostgreSQL: ST_Geometry, PostGIS Geometry или PostGIS Geography. Параметр GEOMETRY_STORAGE обозначает метод хранения геометрии. Он имеет следующие значения: ST_GEOMETRY, PG_GEOMETRY или PG_GEOGRAPHY.

Примечание:

Для использования значений PG_GEOMETRY или PG_GEOGRAPHY необходимо установить PostGIS и включить базу данных для использования PostGIS.

Параметры log-файла

Таблицы log-файла используются ArcGIS для обслуживания наборов выбранных записей. Параметры файла журнала не используется в базах геоданных в PostgreSQL.

Параметры пользовательского интерфейса

Параметры пользовательского интерфейса начинаются с UI и указывают, что соответствующее ключевое слово конфигурации будет доступно в пользовательском интерфейсе ArcGIS и ArcObjects. UI_TEXT используется для несоставных ключевых слов конфигурации. UI_TOPOLOGY_TEXT используется для ключевых слов топологии. UI_NETWORK_TEXT используется для ключевых слов сети. Ключевые слова конфигурации по умолчанию, для которых требуются параметры пользовательского интерфейса, уже их имеют. Если бы вы создали свои собственные пользовательские ключевые слова, то вы бы добавили только один из этих параметров.

Параметры типа XML

Примечание:

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

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

Параметр XML_COLUMN_STORAGE определяет, будут ли столбцы XML создаваться как XML ArcSDE или как собственные PostgreSQL XML. По умолчанию используется собственный PostgreSQL XML (DB_XML).

Параметр XML_INDEX_TAGS_INDEX ключевого слова DATA_DICTIONARY задает фактор заполнения индекса, который создается по таблице sde_xml_indexes.

Параметр XML_INDEX_TAGS_TABLE ключевого слова DATA_DICTIONARY задает хранение системных таблиц базы геоданных sde_xml_index_tags. Если вы хотите задать собственное хранение с помощью эти двух параметров, необходимо значения до создания базы геоданных, поскольку они управляют хранением системных таблиц базы геоданных.

Параметр хранения A_INDEX_XML задает фактор заполнения индекса столбца XML в таблице добавлений версионного класса объектов.

Параметр B_INDEX_XML задает фактор заполнения индекса столбца XML бизнес-таблицы.

XML_IDX_FULLTEXT_UPDATE_METHOD определяет, как изменения, внесенные в столбец xml_doc_val в таблице XML-документа (sde_xml_doc<n>) и в столбец text_tag индексной таблицы столбца XML (sde_xml_idx<n>), передаются в полнотекстовый индекс. Опции этого параметра: AUTOMATIC или MANUAL. Если задано AUTOMATIC, триггер, созданный в дополнительных таблицах XML, обновляет индексы при вставке строк. Если значение XML_IDX_FULLTEXT_UPDATE_METHOD не AUTOMATIC, предполагается, что это MANUAL.

Параметр XML_DOC_STORAGE задает хранение таблицы sde_xml_doc<n>.

Параметр конфигурации XML_DOC_INDEX задает фактор заполнения индексов xmldoc<n>_pk and xml_doc<n>_ix таблицы sde_xml_doc<n>.

Параметр конфигурации XML_DOC_UNCOMPRESSED_TYPE определяет способ хранения XML-документов. Опции: BINARY или TEXT. Если используется BINARY, данные хранятся в типе bytea. Если используется TEXT, данные хранятся в виде Юникод или ASCII, в зависимости от поддержки данных Юникод (UTF-8) в базе данных.

Параметр конфигурации XML_IDX_STORAGE задает хранение таблицы sde_xml_idx<n>, которая является индексной таблицей столбца XML. Следующие параметры задают хранение индексов столбцов в самой таблице sde_xml_idx<n>:

  • XML_IDX_INDEX_DOUBLE – задает хранение индекса xmlix<n>_db столбца double_tag
  • XML_IDX_INDEX_ID – задает хранение индекса xmlix<n>_id столбца ID
  • XML_IDX_INDEX_PK – задает хранение индекса xmlix<n>_pk столбца xml_key_column
  • XML_IDX_INDEX_STRING – задает хранение индекса xmlix<n>_st столбца string_tag
  • XML_IDX_INDEX_TAG – задает хранение индекса xmlix<n>_tg столбца tag_id