配置参数用于标识要存储在数据库中的对象(如表格、索引和列)。其对应值用于标识在数据库中存储对象的方式。这些参数及其配置字符串按照配置关键字进行分组。
在存储于 IBM DB2 数据库的地理数据库内,ArcGIS 使用“参数名称-配置字符串对”执行以下操作:
- 建立表和索引的存储特征。
- 定义 XML 文档的存储方式。
- 使用户可以在 ArcGIS 界面中使用关键字。
- 提供描述配置关键字的注释。
应在创建地理数据库之前修改的参数(按关键字分组)包括:
配置关键字 | 参数 |
---|---|
DATA_DICTIONARY | B_STORAGE MVTABLES_MODIFIED_TABLE STATE_LINEAGES_TABLE STATES_TABLE VERSIONS_TABLE |
DEFAULTS | A_STORAGE AUX_STORAGE B_STORAGE BLK_STORAGE BND_STORAGE D_STORAGE MAX_CACHED_CURSORS RAS_STORAGE |
LOGFILE_DEFAULTS | LD_STORAGE LF_STORAGE SESSION_INDEX SESSION_STORAGE |
NETWORK_DEFAULTS | A_STORAGE B_STORAGE D_STORAGE |
NETWORK_DEFAULTS::DESC | A_STORAGE B_STORAGE D_STORAGE |
TOPOLOGY_DEFAULTS | A_STORAGE B_STORAGE D_STORAGE |
TOPOLOGY_DEFAULTS::DIRTYAREAS | A_STORAGE B_STORAGE D_STORAGE |
TERRAIN_DEFAULTS | A_STORAGE B_STORAGE D_STORAGE |
TERRAIN_DEFAULTS::EMBEDDED | A_STORAGE B_STORAGE D_STORAGE |
有关更改参数值的说明,请参阅更改配置关键字。
下表按字母顺序列出了所有可在 DB2 地理数据库中使用的配置参数。之后是对参数的详细解释(按其功能分组)。
粗体的值为默认值。
参数名称 | 说明 | 值 | 备注 |
---|---|---|---|
A_INDEX_ROWID | 增加表(即 A 表)中对象 ID 列索引的存储方式定义 | 有关 CREATE INDEX 参数的信息,请参阅 DB2 文档。 | |
A_INDEX_SHAPE | 增加表(即 A 表)中空间列索引的存储方式定义 | 有关 CREATE INDEX 参数的信息,请参阅 DB2 文档。 | 不适用于 DB2 for z/OS |
A_INDEX_STATEID | 增加表(即 A 表)中 sde_state_id 列索引的存储方式定义 | 有关 CREATE INDEX 参数的信息,请参阅 DB2 文档。 | |
A_INDEX_USER | 增加表(即 A 表)中索引的存储方式定义 | 有关 CREATE INDEX 参数的信息,请参阅 DB2 文档。 | |
A_STORAGE | 增加表(即 A 表)的存储方式定义 | 有关 CREATE TABLE 参数的信息,请参阅 DB2 文档。 | |
AUX_INDEX_COMPOSITE | 栅格 AUX 表复合列索引的存储定义 | 有关 CREATE INDEX 参数的信息,请参阅 DB2 文档。 | |
AUX_STORAGE | 栅格 AUX 表的存储定义 | 有关 CREATE TABLE 参数的信息,请参阅 DB2 文档。 | |
B_INDEX_ROWID | 业务表对象 ID 列索引和栅格行 ID 索引 R<N>_SDE_ROWID_UK 的存储方式定义 | 有关 CREATE INDEX 参数的信息,请参阅 DB2 文档。 | |
B_INDEX_SHAPE | 业务表中空间列索引的存储方式定义 | 有关 CREATE INDEX 参数的信息,请参阅 DB2 文档。 | 不适用于 DB2 for z/OS |
B_INDEX_TO_DATE | 用于创建索引 R<registration_id>_sde_todate 的存储参数信息,在存档操作期间更新历史记录表时使用该信息 | 有关 CREATE INDEX 参数的信息,请参阅 DB2 文档。 | |
B_INDEX_USER | 业务表用户索引的存储定义 | 有关 CREATE INDEX 参数的信息,请参阅 DB2 文档。 | |
B_RUNSTATS | RUNSTATS 的默认值 | YES(Linux、UNIX 和 Windows 上的 DB2 的默认值)或 NO(z/OS 上 DB2 的默认值) | |
B_STORAGE | 业务表和栅格属性表的存储定义 | 有关 CREATE TABLE 参数的信息,请参阅 DB2 文档。 | |
BLK_BLOB_OPTION | 栅格 BLK 表中 BLOB 列的存储配置属性 | LOGGED NOT COMPACT(Linux、UNIX 和 Windows 上的 DB2 的默认值)、LOGGED COMPACT、NOT LOGGED COMPACT 或 NOT LOGGED NOT COMPACT | DB2 for z/OS 中的这一参数的默认值为空,应将其保留为空。对于 DB2 for Linux、DB2 for UNIX 或 DB2 for Windows,应将默认值设为 NOT LOGGED COMPACT. 加载栅格数据时,将该参数设置为可以占用更多表空间的任何其他值。 |
BLK_INDEX_COMPOSITE | 栅格 BLK 表复合列索引的存储定义 | 有关 CREATE INDEX 参数的信息,请参阅 DB2 文档。 | |
BLK_STORAGE | 栅格 BLK 表的存储定义 | 有关 CREATE TABLE 参数的信息,请参阅 DB2 文档。 | |
BLOB_OPTION | BLOB 列的存储配置属性 | LOGGED NOT COMPACT(Linux、UNIX 和 Windows 上的 DB2 的默认值)、LOGGED COMPACT、NOT LOGGED COMPACT 或 NOT LOGGED NOT COMPACT 您还可以指定带有 BLOB_OPTION 的 INLINE LENGTH 参数。 有关 BLOB 列存储参数的信息,请参阅 DB2 文档。 | DB2 for z/OS 中的这一参数的默认值为空,应将其保留为空。 |
BLOB_SIZE | BLOB 列的大小 | > 0 且 < 2GB 1MB 为默认值。 如果将 BLOB_OPTION 设置为 LOGGED,则 BLOB 列的大小不能大于 1G。(DB2 建议已记录的 BLOB 列的大小不大于 10M。) | |
BND_INDEX_COMPOSITE | 栅格 BND 表复合列索引的存储定义 | 有关 CREATE INDEX 参数的信息,请参阅 DB2 文档。 | |
BND_INDEX_ID | 栅格 BND 表 RID 列索引的存储定义 | 有关 CREATE INDEX 参数的信息,请参阅 DB2 文档。 | |
BND_STORAGE | 栅格 BND 表的存储定义 | 有关 CREATE TABLE 参数的信息,请参阅 DB2 文档。 | |
CLOB_OPTION | CLOB 列的存储配置属性 | LOGGED NOT COMPACT(Linux、UNIX 和 Windows 上的 DB2 的默认值)、LOGGED COMPACT、NOT LOGGED COMPACT 或 NOT LOGGED NOT COMPACT | DB2 for z/OS 中的这一参数的默认值为空,应将其保留为空。 |
CLOB_SIZE | CLOB 列的大小 | > 0 且 < 2GB 默认值为 32KB。 如果将 CLOB_OPTION 设置为 LOGGED,则 CLOB 列的大小不能大于 1G。(DB2 建议已记录的 LOB 列的大小不大于 10M。) | |
COMMENT | 用于添加注释的行 | 最多可容纳 2048 个字符长的注释 | |
D_INDEX_DELETED_AT | 删除表(即 D 表)sde_deleted_at 列索引的存储定义 | 有关 CREATE INDEX 参数的信息,请参阅 DB2 文档。 | |
D_INDEX_ STATE_ROWID | 删除表 sde_states_id 和 sde_deletes_row_id 列索引的存储定义 | 有关 CREATE INDEX 参数的信息,请参阅 DB2 文档。 | |
D_STORAGE | 删除表的存储方式定义 | 有关 CREATE TABLE 参数的信息,请参阅 DB2 文档。 | |
LD_INDEX_DATA_ID | SDE_logfile_data 索引的存储定义 | 有关 CREATE INDEX 参数的信息,请参阅 DB2 文档。 | |
LD_INDEX_ROWID | SDE_logfile_data 表的 SDE_ROWID 列索引的存储方式定义 | 有关 CREATE INDEX 参数的信息,请参阅 DB2 文档。 | |
LD_STORAGE | SDE_logfile_data 表的存储方式定义 | 有关 CREATE TABLE 参数的信息,请参阅 DB2 文档。 | |
LF_INDEXES | SDE_logfiles 表列索引的存储方式定义 | 有关 CREATE INDEX 参数的信息,请参阅 DB2 文档。 | |
LF_STORAGE | SDE_logfiles 表的存储方式定义 | 有关 CREATE TABLE 参数的信息,请参阅 DB2 文档。 | |
MAX_CACHED_CURSORS | 最大缓存光标数 | 0 或更高 0 = 不可用 默认值为 80。 | |
MVTABLES_MODIFIED_INDEX | Mvtables_modified 索引的存储定义 | 有关 CREATE INDEX 参数的信息,请参阅 DB2 文档。 | |
MVTABLES_MODIFIED_TABLE | Mvtables_modified 表的存储定义 | 有关 CREATE TABLE 参数的信息,请参阅 DB2 文档。 | |
RAS_INDEX_ID | 栅格 RAS 表 RID 索引的存储定义 | 有关 CREATE INDEX 参数的信息,请参阅 DB2 文档。 | |
RAS_STORAGE | 栅格 RAS 表的存储定义 | 有关 CREATE TABLE 参数的信息,请参阅 DB2 文档。 | |
SESSION_INDEX | 基于会话的日志文件索引的存储方式定义 | 有关 CREATE INDEX 参数的信息,请参阅 DB2 文档。 | |
SESSION_STORAGE | 基于会话的日志文件表的存储方式定义 | 有关 CREATE TABLE 参数的信息,请参阅 DB2 文档。 | |
SESSION_TEMP_TABLE | DB2 中的地理数据库不使用 | 1 或 0 | |
ST_GEOM_STORAGE_INLINE | 对 ST_Geometry 列的内容是存储在行内还是行外加以定义 | INLINE LENGTH <以字节为单位的大小> 有关 INLINE LENGTH 参数的信息及其在创建表时的用法,请参阅 DB2 文档。 | |
STATE_LINEAGES_TABLE | State_lineages 表的存储定义 | 有关 CREATE TABLE 参数的信息,请参阅 DB2 文档。 | |
STATES_INDEX | 状态表索引的存储定义 | 有关 CREATE INDEX 参数的信息,请参阅 DB2 文档。 | |
STATES_TABLE | 状态表的存储方式定义 | 有关 CREATE TABLE 参数的信息,请参阅 DB2 文档。 | |
UI_NETWORK_TEXT | 用户界面参数,用于指示将在 ArcGIS 用户界面中显示的相关配置关键字;包括网络配置的描述 | 描述不能超过 2,048 个字符 | |
UI_TERRAIN_TEXT | 用户界面参数,用于指示将在 ArcGIS 用户界面中显示的相关配置关键字;包括 terrain 配置的描述 | 描述不能超过 2,048 个字符 | |
UI_TEXT | 用户界面参数,用于指示将在 ArcGIS 用户界面中显示的相关配置关键字;包含相关的非复合配置关键字的描述 | 描述不能超过 2,048 个字符 | |
UI_TOPOLOGY_TEXT | 用户界面参数,用于指示将在 ArcGIS 用户界面中显示的相关配置关键字;包括拓扑配置的描述 | 描述不能超过 2,048 个字符 | |
VERSIONS_INDEX | 版本表索引的存储方式定义 | 有关 CREATE INDEX 参数的信息,请参阅 DB2 文档。 | |
VERSIONS_TABLE | 版本表的存储方式定义 | 有关 CREATE TABLE 参数的信息,请参阅 DB2 文档。 | |
XML_COLUMN_STORAGE | 指定要创建的 XML 列的类型:ArcSDE XML 或原生 DBMS XML | DB_XML 或 SDE_XML 在 DEFAULTS 关键字下,默认值为 DB_XML。在 IMS_GAZETTEER 关键字下,默认值为 SDE_XML。 | 不适用于 DB2 for z/OS |
XML_DOC_LOB_SIZE | 定义 sde_xml_docn<n> 表的 xml_doc 列中的 XML 文档的大小 | 1 M | 不适用于 DB2 for z/OS |
XML_DOC_STORAGE | sde_xml_doc<n> 表的存储子句 | 有关 CREATE TABLE 参数的信息,请参阅 DB2 文档。 | 不适用于 DB2 for z/OS |
XML_DOC_UNCOMPRESSED_TYPE | XML_DOC_MODE 参数设置为 UNCOMPRESSED 后,XML_DOC_UNCOMPRESSED_TYPE 参数可确定 XML 文档的存储格式。 | 因为 XML_DOC_MODE 默认设置为 COMPRESSED,因此默认情况下 XML_DOC_UNCOMPRESSED_TYPE 参数不存在。如果添加 XML_DOC_UNCOMPRESSED 参数,则可能的值为 BLOB、CLOB 或 NCLOB。 | 不适用于 DB2 for z/OS |
XML_DOC_VAL_LOB_SIZE | 定义 sde_xml_docn<n> 表的 xml_doc_val 列中的 XML 文档的大小 | 1 M | 不适用于 DB2 for z/OS |
XML_IDX_FULLTEXT_CCSID | 文本索引编码字符集标识符 (CCSID);如果以二进制形式存储文本文档,必须指定文档的 CCSID | 有关有效的 CCSID 值,请参阅 DB2 文档。 | 不适用于 DB2 for z/OS |
XML_IDX_FULLTEXT_IDXDIRECTORY | 文本索引目录的路径 | 值取决于目录 | 不适用于 DB2 for z/OS |
XML_IDX_FULLTEXT_LANGUAGE | 对 sde_xml_doc<n> 表中 xml_doc_val 列的内容和 sde_xml_idx<n> 表中 text_tag 列的内容构建文本索引时,用于语言分析的语言 | 此参数没有默认值。有关有效的语言设置,请参阅 DB2 文档。 | 不适用于 DB2 for z/OS |
XML_IDX_FULLTEXT_UPD_FREQUENCY | 索引更新频率 | 更新周期(天数和小时数) 此参数没有默认值。 | 不适用于 DB2 for z/OS |
XML_IDX_FULLTEXT_UPD_MINIMUM | 在更新整个全文索引之前新文档或已编辑文档的最小数目 | 此参数没有默认值。 如果将该值留空,则会在更新期间将所有新增/已编辑文档更新到索引中。 | 不适用于 DB2 for z/OS |
XML_IDX_FULLTEXT_WKDIRECTORY | 文本索引工作目录的路径 | 值取决于目录 | 不适用于 DB2 for z/OS |
XML_IDX_INDEX_DOUBLE | sde_xml_idx<n> 表中 double_tag 列的 xmlix<n>_db 索引的存储子句 | 有关 CREATE INDEX 参数的信息,请参阅 DB2 文档。 | 不适用于 DB2 for z/OS |
XML_IDX_INDEX_ID | xml_idx<n> 表中 ID 列的 xmlix<n>_id 索引的存储子句 | 有关 CREATE INDEX 参数的信息,请参阅 DB2 文档。 | 不适用于 DB2 for z/OS |
XML_IDX_INDEX_STRING | sde_xml_idx<n> 表中 string_tag 列的 xmlix<n>_st 索引的存储子句 | 有关 CREATE INDEX 参数的信息,请参阅 DB2 文档。 | 不适用于 DB2 for z/OS |
XML_IDX_INDEX_TAG | sde_xml_idx<n> 表中 tag_id 列的 xmlix<n>_tg 索引的存储子句 | 有关 CREATE INDEX 参数的信息,请参阅 DB2 文档。 | 不适用于 DB2 for z/OS |
XML_IDX_STORAGE | sde_xml_idx<n> 表(XML 列的索引表)的存储子句 | 有关 CREATE INDEX 参数的信息,请参阅 DB2 文档。 | 不适用于 DB2 for z/OS |
XML_INDEX_TAGS_INDEX | sde_xml_indexes 表的 xml_indextags_pk 索引的存储子句 | 有关 CREATE INDEX 参数的信息,请参阅 DB2 文档。 | 不适用于 DB2 for z/OS |
XML_INDEX_TAGS_TABLE | sde_xml_index_tags 表的存储子句,以及 tag_name 列和 tag_alias 列中相应的 xml_indextags_ix1 和 xml_indextags_ix2 索引的存储子句 | 有关 CREATE TABLE 参数的信息,请参阅 DB2 文档。 | 不适用于 DB2 for z/OS |
XMLDB_DOC_COMPRESSED | 指定是否以压缩形式存储 XML 文档 | YES 或 NO | |
XMLDB_DOC_STORAGE_INLINE | 指定 PureXML 列使用的 XML 存储类型 | XML 存储对象或 INLINE LENGTH <# in bytes> | |
XMLDB_DOC_STORAGE_TABLESPACE | 指定将要在其中存储 XML 文档的表空间 | LONG IN <表空间> | |
XMLDB_IDX_TAG_INVALID_VALUES | 指定是否应该拒绝无效 XML 标记 | IGNORE INVALID VALUES 或 REJECT INVALID VALUES | |
XMLDB_INDEX_FULLTEXT | 指定在创建 XML 列后是否对 XML 列创建“文本搜索”索引 | YES 或 NO | |
XMLDB_INDEX_TAG | 指定在创建 XML 列后是否应对该 XML 列创建 XML 索引 | YES 或 NO |
参数的功能描述
业务表和索引存储参数
业务表是由 ArcGIS 客户端创建的任意 DB2 表。使用 B_STORAGE 参数可定义业务表的存储配置。
用于创建业务表索引的索引存储参数有四个:
- B_INDEX_USER 参数保存通过 C API 函数 SE_table_create_index 和 sdetable 命令的 create_index 操作创建的用户定义之索引的存储配置。
- B_INDEX_ROWID 参数用于保存 ArcGIS 在注册表的 ObjectID 列(也称为行 ID 列)上创建的索引的存储配置。
- B_INDEX_SHAPE 参数仅适用于 DB2 for Linux、DB2 for UNIX 和 DB2 for Windows,用于保存向业务表添加空间列时 ArcGIS 创建的空间列索引的存储配置。创建要素类时,ArcGIS 将创建此索引。
- B_INDEX_TO_DATE 参数用于指定索引 R<registration_id>_sde_todate 的存储方式。此索引是在对业务表启用存档时创建的,并且在执行存档操作期间更新历史记录表时使用。
A 表和 D 表存储参数
将业务表注册为版本可让多个用户维护和编辑同一个对象。每过一段适当的时间间隔,每位用户就会合并其所做的更改和其他用户所做的更改,并协调修改相同行时产生的所有冲突。ArcGIS 会为每个注册为版本的业务表创建两个表:添加表和删除表。
添加表名为 A<n>,删除表名为 D<n>,其中 <n> 是在 TABLE_REGISTRY 系统表中列出的业务表的注册 ID。例如,如果业务表 ROADS 使用注册 ID 10 列出,则 ArcGIS 将创建名为 A10 的添加表和名为 D10 的删除表。
A 表参数
本主题中的 A_STORAGE 用于维护添加表的存储配置。另外,还有四个存储参数,用于保存添加表的索引的存储配置。
本主题中的 A_INDEX_ROWID 用于保存 ArcGIS 在版本化对象 ID 列(也称为行 ID)上创建的索引的存储配置。添加表的行 ID 索引名为 A<n>_ROWID_IX1,其中 <n> 是业务表的注册 ID,业务表使用该 ID 与添加表建立关联。
本主题中的 A_INDEX_STATEID 用于保存 ArcGIS 在添加表的 SDE_STATE_ID 列上创建的索引的存储配置。称为 SDE_STATE_ID 列索引 A<n>_STATE_IX2,其中 <n> 是业务表的注册 ID,业务表使用该 ID 与添加表建立关联。
本主题中的 A_INDEX_SHAPE 仅用于 Linux、UNIX 和 Windows 中的 DB2,可保存 ArcGIS 在添加表的空间列上创建的索引的存储配置。如果业务表中包含空间列,则会在 A 表中复制空间列及其索引。A 表的空间列索引称为 A<n>_IX1_A,其中 <n> 是在 LAYERS 表中列出的要素类的图层 ID。
本主题中的 A_INDEX_USER 用于保存 ArcGIS 为添加表创建的用户定义索引的存储配置。业务表中用户定义的索引在 A 表中可重复。
D 表参数
D_STORAGE 参数保存 D 表的存储配置。
另外,还有两个存储参数用于保存 ArcGIS 为 D 表创建的索引的存储方式配置。D_INDEX_STATE_ROWID 参数用于保存 ArcGIS 为删除表中的 SDE_STATE_ID 和 SDE_DELETES_ROW_ID 列创建的 D<n>_IDX1 索引的存储配置。D_INDEX_DELETED_AT 参数用于保存 ArcGIS 为删除表的 SDE_DELETED_AT 列创建的 D<n>_IDX2 索引的存储配置。
栅格表和索引存储参数
每个栅格表都有一个表存储参数。每个参数都用于保存其关联栅格表的 DB2 CREATE TABLE 存储配置。参数和表如下:
参数 | 表 |
---|---|
RAS_STORAGE | SDE_RAS_<raster_column_ID> |
BND_STORAGE | SDE_BND_<raster_column_ID> |
AUX_STORAGE | SDE_AUX_<raster_column_ID> |
BLK_STORAGE | SDE_BLK_<raster_column_ID> |
每个表也都具有索引。控制这些索引的存储的参数如下:
- RAS_INDEX_ID 存储参数用于保存 RAS 表索引的 DB2 CREATE INDEX 存储配置。
- BND_INDEX_COMPOSITE 存储参数用于保存 BND 表的复合列索引的 DB2 CREATE INDEX 存储配置。
- BND_INDEX_ID 存储参数用于保存 BND 表的 ID 列索引的 DB2 CREATE INDEX 存储配置。
- AUX_INDEX_COMPOSITE 存储参数用于保存 AUX 表索引的 DB2 CREATE INDEX 存储配置。
- BLK_INDEX_COMPOSITE 存储参数用于保存 BLK 表索引的 DB2 CREATE TABLE 存储配置。
- BLK_BLOB_OPTION 存储参数用于存储栅格 BLK 表中的 BLOB 列的配置属性。对于 Linux、UNIX 和 Windows 上的 DB2,建议您将 BLK_BLOB_OPTION 设置为 NOT LOGGED COMPACT。加载栅格数据时,将该参数设置为可以占用更多表空间的任何其他值。
要了解有关栅格属性表的详细信息,请参阅栅格数据集属性表。
XML 参数
DB2 XML 参数包括:
- XML_COLUMN_STORAGE
- XMLDB_DOC_COMPRESSED
- XMLDB_DOC_STORAGE_INLINE
- XMLDB_DOC_STORAGE_TABLESPACE
- XMLDB_IDX_TAG_INVALID_VALUES
- XMLDB_INDEX_FULLTEXT
- XMLDB_INDEX_TAG
- XML_INDEX_TAGS_TABLE
- XML_INDEX_TAGS_INDEX
- XML_DOC_STORAGE
- XML_DOC_LOB_SIZE
- XML_DOC_VAL_LOB_SIZE
- XML_DOC_MODE(默认情况下不出现在 DBTUNE 中)
- XML_DOC_UNCOMPRESSED_TYPE
- XML_IDX_STORAGE
- XML_IDX_INDEX_ID
- XML_IDX_INDEX_TAG
- XML_IDX_INDEX_DOUBLE
- XML_IDX_INDEX_STRING
- XML_IDX_FULLTEXT_UPD_FREQUENCY
- XML_IDX_FULLTEXT_UPD_MINIMUM
- XML_IDX_FULLTEXT_IDXDIRECTORY
- XML_IDX_FULLTEXT_WKDIRECTORY
- XML_IDX_FULLTEXT_LANGUAGE
- XML_IDX_FULLTEXT_CCSID
XML_COLUMN_STORAGE 参数用于确定是以 ArcSDE XML (SDE_XML) 类型,还是以本机 DB2 PureXML (DB_XML) 类型创建 XML 列。默认行为是使用 DB2 PureXML。
接下来的六个 XML 参数(XMLDB_DOC_COMPRESSED、XMLDB_DOC_STORAGE_INLINE、XMLDB_DOC_STORAGE_TABLESPACE、XMLDB_IDX_TAG_INVALID_VALUES、XMLDB_INDEX_FULLTEXT 和 XMLDB_INDEX_TAG)适用于 DB2 PureXML 列。如果使用默认值为 DB_XML 的 XML_COLUMN_STORAGE,这些参数就是您用于控制 XML 文档存储的参数。
XMLDB_DOC_COMPRESSED 用于指示是否将要以压缩形式存储在行内存储的 XML 文档。默认行为是存储未压缩的 XML 文档。以压缩形式存储文档可以在每个页面上放置更多记录。但是,如果压缩了数据,则必须在每次查询时对其进行解压缩。因此,在大多数情况下,优先采用未压缩的 XML 文档。
XMLDB_DOC_STORAGE_INLINE 用于指定是将 XML 文档存储为单独的 XML 存储对象(默认设置)还是存储在页面中的行内。如果存储在页面中,INLINE LENGTH <字节数> 用于定义该存储占用的空间大小(以字节为单位)。最大值限制仅次于页面大小。例如,如果使用 4 KB 的默认页面大小,则行内数据的最大大小仅次于 4 KB。有关计算行内 XML 文档的最大大小的信息,请参阅 DB2 文档。
对于小 XML 文档(小于为数据库设置的页面大小),行内存储可以提供更好的性能,原因在于插入、更新和删除内容所需的输入/输出更少。XMLDB_DOC_STORAGE_TABLESPACE 参数可用于指定在其中存储 XML 存储对象的其他表空间。默认情况下,存储 XML 存储对象的表空间与业务表相同。您可以使用该参数指定其他表空间。如果您使用行内存储,则不能使用该参数。
XMLDB_IDX_TAG_INVALID_VALUES 实际上用于启用或禁用 XML 标记的验证。默认值 IGNORE INVALID VALUES 不能强制要求 XML 标记的有效性。将该参数设置为 REJECT INVALID VALUES 将导致拒绝使用标记值建立索引,如果标记不正确,DB2 将返回错误。
XMLDB_INDEX_FULLTEXT 和 XMLDB_INDEX_TAG 参数可用于设置在创建 XML 列时自动创建索引的过程。XMLDB_INDEX_FULLTEXT 的值为默认值时,不会在创建 XML 列时在该 XML 列上创建全文索引。创建 XML 列时,如果 XMLDB_INDEX_TAG 为默认值,则可以在该列创建 XML 索引。
上一组 XML 参数仅适用于 ArcSDE XML 列。
XML_INDEX_TAGS_TABLE 和 XML_INDEX_TAGS_INDEX 可在 DATA_DICTIONARY 关键字参数列表中找到。XML_INDEX_TAGS_TABLE 参数用于指定将要在其中创建 SDE_XML_INDEX_TAGS 系统表及其索引 xml_indextags_ix1 和 xml_indextags_ix2 的表空间。如果想要为这些对象指定单独的表空间,必须取消 XML_INDEX_TAGS_TABLE 参数的注释,并在创建地理数据库之前提供现有表空间名称。同样,指定 SDE_XML_INDEXES 的 xml_indexes_pk 索引的存储方式的 XML_INDEX_TAGS_INDEX 参数的值也必须在创建地理数据库之前修改。
XML_DOC_STORAGE、XML_DOC_LOB_SIZE 和 XML_DOC_VAL_LOB_SIZE 参数用于指定 SDE_XML_DOC<n> 表的存储。XML_DOC_STORAGE 用于定义表本身的存储,XML_DOC_LOB_SIZE 用于指定表的 xml_doc 列中的 XML 文档大小,XML_DOC_VAL_LOB_SIZE 用于定义 xml_doc_val 列中的 XML 文档大小。
如果想要以未压缩状态存储 XML 文档,您需要向 DBTUNE 表添加 XML_DOC_MODE 参数并将该参数设置为 UNCOMPRESSED。如果想要在大多数情况下以未压缩状态存储 XML 文档,则将该参数及其值添加到 DEFAULTS 关键字列表中。如果仅想以未压缩格式存储部分 XML 文档,可创建自定义配置关键字,然后向该关键字中添加 XML_DOC_MODE 参数并将该参数设置为 UNCOMPRESSED。在某些情况下,即使是在压缩状态下,XML 文档也可能非常大(4 MB 或更大);因此,通常不需要在 DEFAULT 关键字参数列表中将 XML_DOC_MODE 参数设置为 UNCOMPRESSED。
将 XML_DOC_MODE 参数与 XML_DOC_UNCOMPRESSED_TYPE 参数配合使用。如果在任意关键字参数列表中将 XML_DOC_MODE 设置为 UNCOMPRESSED,您还必须在同一关键字中设置 XML_DOC_UNCOMPRESSED_TYPE 参数。XML_DOC_UNCOMPRESSED_TYPE 参数用于定义未压缩 XML 文档使用的存储格式。
XML_IDX_STORAGE 用于指定 XML 列的索引表(sde_xml_idx<n> 表)的存储。
参数 XML_IDX_INDEX_ID、XML_IDX_INDEX_TAG、XML_IDX_INDEX_DOUBLE 和 XML_IDX_INDEX_STRING 用于定义 sde_xml_idx<n> 表中的列上的不同索引的存储。XML_IDX_INDEX_ID 用于指定 ID 列上的 xmlix<n>_id 索引的存储,XML_IDX_INDEX_TAG 用于指定 tag_id 列上的 xmlix<n>_tg 索引的存储,XML_IDX_INDEX_DOUBLE 用于定义 double_tag 列上的 xmlix<n>_db 索引的存储,XML_IDX_INDEX_STRING 用于定义 string_tag 列上的 xmlix<n>_st 索引的存储。
XML_IDX_FULLTEXT_UPD_FREQUENCY 和 XML_IDX_FULLTEXT_UPD_MINIMUM 参数用于定义更新全文索引的时间。XML_IDX_FULLTEXT_UPD_FREQUENCY 用于指定全文索引更新周期(天数和小时数)。XML_IDX_FULLTEXT_UPD_MINIMUM 用于指示在更新全文索引之前可以添加到全文索引的新文档或已编辑文档的最小数目。
XML_IDX_FULLTEXT_IDXDIRECTORY 参数用于指示包含文本索引的目录的路径。XML_IDX_FULLTEXT_WKDIRECTORY 用于指定文本索引的工作目录的路径。XML_IDX_FULLTEXT_LANGUAGE 参数指定对 sde_xml_doc<n> 表中 xml_doc_val 列的内容和 sde_xml_idx<n> 表中 text_tag 列的内容构建文本索引时用于语言分析的语言。
如果以二进制格式存储文本文档,您应设置指定文档的 CCSID 的 XML_IDX_FULLTEXT_CCSID 参数。
日志文件表参数
日志文件表供 ArcGIS 使用,用于维护所选记录的集合。日志文件参数将对日志文件数据表和索引产生影响。它们以字母 L 或单词 SESSION 开头。参数如下:
- LD_INDEX_DATA_ID 用于配置为 SDE_LOGFILE_DATA 表创建 LOGFILE_DATA_idx2 索引的过程以及为 SDE_LOGPOOL_<SDE_ID> 表创建 LOGPOOL_<SDE_ID>_idx1 索引的过程。
- LD_INDEX_ROWID 用于配置为 SDE_LOGFILE_DATA 表创建 LOGFILE_DATA_idx1 索引的过程以及为 SDE_LOGPOOL_<SDE_ID> 表创建 LOGPOOL_<SDE_ID>_idx1 索引的过程。
- LD_STORAGE* 定义 SDE_LOGFILE_DATA 和 SDE_LOGPOOL_<SDE_ID> 表的配置。
- LF_STORAGE* 定义 SDE_LOGFILES 表的配置。
- SESSION_STORAGE* 用于定义基于会话的日志文件表的存储方式。
- SESSION_INDEX* 用于定义在基于会话的日志文件表上创建的索引的存储方式。
- SESSION_TEMP_TABLE 仅适用于 Linux、UNIX 和 Windows 上的 DB2 中的地理数据库,用于指定是否应在临时表空间中创建表。
*已在默认 dbtune.sde 文件注释掉这些参数;您必须取消这些参数的注释并在用户连接到地理数据库之前为这些参数的存储指定表名称。
用户界面参数
用户界面参数以 UI 开头,用于指示其关联配置关键字在 ArcGIS 用户界面和 ArcObjects 中是否可用。UI_TEXT 用于非复合配置关键字。UI_TOPOLOGY_TEXT 用于拓扑关键字。UI_TERRAIN_TEXT 用于 terrain 关键字。UI_NETWORK_TEXT 用于网络关键字。需要 UI 参数的默认配置关键字已具备 UI 参数。仅在创建您自己的自定义关键字时才需要添加这些参数的其中之一。
其他参数
以下参数不属于任何特定类别:
- BLOB 参数
DB2 需要容量来容纳要创建的 BLOB 列。
如果要创建 BLOB 列,此列的容量大于 2 GB,则会忽略这一容量并使用默认值为 1 MB 的参数 LOB_SIZE。这样,数据库管理员 (DBA) 能够细致设置数据库参数。
另外,您可以使用 BLOB_OPTION 参数指定应在行内存储的 BLOB 列的数量。在下面的简单示例中,表是使用指定行内长度为 200(536,000,000 字节)的 BLOB 列创建的;其余内容存储在行外:
CREATE TABLE btab (col1 BLOB INLINE LENGTH 220)
对于 Linux、UNIX 和 Windows 上的 DB2,BLOB_OPTION 参数的默认设置为 LOGGED NOT COMPACT。您也可以改为指定 LOGGED COMPACT、NOT LOGGED COMPACT 或 NOT LOGGED NOT COMPACT。对于 DB2 for z/OS,将 BLOB_OPTION 参数留空。
- CLOB 参数
DB2 需要容量来容纳要创建的 CLOB 列。如果要创建 CLOB 列,此列的容量大于 2 GB,则会忽略这一容量并使用默认值为 32 KB 的参数 CLOB_SIZE。这样,DBA 能够细致设置数据库参数。对于 Linux、UNIX 和 Windows 上的 DB2,BLOB_OPTION 参数的默认设置和推荐设置为 LOGGED NOT COMPACT。对于 DB2 for z/OS,将 CLOB_OPTION 参数留空。
- MAX_CACHED_CURSORS 参数
应该对每个用户分配给缓存的光标数进行一些控制。存在一些与最大光标数相关的数据库调整参数(对于 DB2,参数为 SQL_MAX_CONCURRENT_ACTIVITIES),这些参数是限制使用的,或者通常未进行设置,仅由可用资源和已执行查询的复杂性进行有效限制。仅应用默认最大光标值可能会导致系统负荷过重。为了更好地控制这一问题或完全禁用缓存,已将 DBTUNE 参数 MAX_CACHED_CURSORS 添加到 DEFAULTS 关键字参数列表中。当前默认值为 80。要禁用缓存,请将其设置为 0。
- B_RUNSTATS 参数
该参数适用于业务表,并在插入所有记录且已经准备将图层置于 normal_io 模式中之后,于数据加载末尾使用该参数。切换到 normal_io 模式的最后部分是检查 B_RUNSTATS。如果 DBTUNE 表的 DEFAULTS 关键字中没有 B_RUNSTATS 参数,则 YES 为默认值。
B_RUNSTATS 仅适用于业务表。如果 B_RUNSTATS 的值为 YES (yes),则会自动在表上收集所有统计信息。如果将 B_RUNSTATS 设置为任何其他内容,则不会收集统计信息。绝大多数用户都希望在表上收集所有统计信息。
对于由于某种原因想要使用该参数执行特殊操作(如仅建立索引)的用户,他们可以将 B_RUNSTATS 设置为 NO,然后使用选择的任何选项执行手动 RUNSTATS 命令。
在存储于 DB2 for z/OS 中的地理数据库内,将 B_RUNSTATS 参数设置为 NO。
- ST_GEOM_STORAGE_INLINE
该参数定义了要素类空间列中的数据是以 VARCHAR FOR BIT DATA 类型存储于行内,还是以 LOB 类型存储于行外。
在要素类创建过程中,如果空间列的二进制内容大小小于 ST_GEOM_STORAGE_INLINE 参数指定的值(字节),则该内容以 VARCHAR FOR BIT DATA 类型存储于行内。以行内方式读取列,其中业务表的行以异步且完全缓冲的模式通过数据库的 I/O 操作提取并读入数据库进程。
在以下示例中,对 dbtune 文件进行编辑,以将长度设置为 3,000 字节。这意味着,将在行内存储小于 3,000 字节的所有内容。
ST_GEOM_STORAGE_INLINE "INLINE LENGTH 3000"
在要素类创建过程中,如果空间列的二进制内容大小大于 ST_GEOM_STORAGE_INLINE 参数指定的值,则二进制内容作为 LOB 存储于行外。以行外方式读取列,其中业务表的行以同步且非缓冲的模式通过数据库的 I/O 操作提取并读入数据库进程。
默认情况下,该参数的值为空。因此,在以行内 LOB 方式存储 659 个字节时使用默认的 DB2 值。要在行内存储更多的字节,需要更改 DBTUNE 表中 ST_GEOM_STORAGE_INLINE 参数的值。
虽然该参数也存在于 z/OS 平台上的 DB2 中,但是目前它还不适用于此平台上的 DB2;它仅适用于 Linux、UNIX 和 Windows 平台上的 DB2。