В соответствии со стандартными рекомендациями ГИС по хранению файлы журналов и индексов предпочтительно хранить отдельно от векторных и табличных бизнес-таблиц. В целях повышения производительности предпочтительней располагать бизнес-таблицы, таблицы объектов и пространственного индекса раздельно, а файлы данных табличного пространства – в соответствии с шаблоном их применения. В мультиверсионных базах геоданных с высокой активностью работы файлы баз данных табличного пространства VERSIONS могут быть разделены и рассредоточены по доступным дискам, что позволяет уменьшить риски возникновения конфликтов на входе/выходе.
Создайте новые табличные пространства для хранения классов пространственных объектов и таблиц рабочей области .
В следующей таблице перечислены табличные пространства, которые будут созданы в примере SQL.
tablespace | CONFIGURATION KEYWORD_PARAMETER |
---|---|
NIS_BDATA | Business table |
NIS_BINDEX | Business table index |
NIS_SDATA | Spatial Index table |
NIS_SINDEX | Spatial Index table index |
NIS_ADATA | Adds table (versioned) |
NIS_AINDEX | Adds table index |
NIS_DDATA | Deletes table (versioned) |
NIS_DINDEX | Deletes table index |
NIS_XMLDOC | XML documents |
NIS_XMLIDX | XML documents indexes |
NIS_SDEDICT | Data dictionary (if implementing user-schema geodatabase) |
NIS_SDEDICTINDEX | Data dictionary index (if implementing user-schema geodatabase) |
The following script can be used to create tablespaces using Oracle SQL*Plus or Oracle SQL Developer.
ALTER SYSTEM SET WALLET OPEN IDENTIFIED BY "nisadmin";
CREATE SMALLFILE TABLESPACE "NIS_BDATA"
DATAFILE 'D:\ORACLE\ORADATA\NISDB\NIS_BDATA01.dbf'SIZE 10M AUTOEXTEND ON NEXT 1M MAXSIZE 400M
LOGGING EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K
SEGMENT SPACE MANAGEMENT AUTO
DEFAULT COMPRESS FOR OLTP STORAGE ( ENCRYPT ) ENCRYPTION USING 'AES256';
CREATE SMALLFILE TABLESPACE "NIS_BINDEX"
DATAFILE 'D:\ORACLE\ORADATA\NISDB\NIS_BINDEX01.dbf' SIZE 10M AUTOEXTEND ON NEXT 1M MAXSIZE 400M
LOGGING EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K
SEGMENT SPACE MANAGEMENT AUTO
DEFAULT COMPRESS FOR OLTP STORAGE ( ENCRYPT ) ENCRYPTION USING 'AES256';
CREATE SMALLFILE TABLESPACE "NIS_FDATA"
DATAFILE 'D:\ORACLE\ORADATA\NISDB\NIS_FDATA01.dbf' SIZE 10M AUTOEXTEND ON NEXT 1M MAXSIZE 400M
LOGGING EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K
SEGMENT SPACE MANAGEMENT AUTO
DEFAULT COMPRESS FOR OLTP STORAGE ( ENCRYPT ) ENCRYPTION USING 'AES256';
CREATE SMALLFILE TABLESPACE "NIS_FINDEX"
DATAFILE 'D:\ORACLE\ORADATA\NISDB\NIS_FINDEX01.dbf' SIZE 10M AUTOEXTEND ON NEXT 1M MAXSIZE 400M
LOGGING EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K
SEGMENT SPACE MANAGEMENT AUTO
DEFAULT COMPRESS FOR OLTP STORAGE ( ENCRYPT ) ENCRYPTION USING 'AES256';
CREATE SMALLFILE TABLESPACE "NIS_SDATA"
DATAFILE 'D:\ORACLE\ORADATA\NISDB\NIS_SDATA01.dbf'SIZE 10M AUTOEXTEND ON NEXT 1M MAXSIZE 400M
LOGGING EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K
SEGMENT SPACE MANAGEMENT AUTO
DEFAULT COMPRESS FOR OLTP STORAGE ( ENCRYPT ) ENCRYPTION USING 'AES256';
CREATE SMALLFILE TABLESPACE "NIS_SINDEX"
DATAFILE 'D:\ORACLE\ORADATA\NISDB\NIS_SINDEX01.dbf' SIZE 10M AUTOEXTEND ON NEXT 1M MAXSIZE 400M
LOGGING EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K
SEGMENT SPACE MANAGEMENT AUTO
DEFAULT COMPRESS FOR OLTP STORAGE ( ENCRYPT ) ENCRYPTION USING 'AES256';
CREATE SMALLFILE TABLESPACE "NIS_ADATA"
DATAFILE 'D:\ORACLE\ORADATA\NISDB\NIS_ADATA01.dbf' SIZE 10M AUTOEXTEND ON NEXT 1M MAXSIZE 400M
LOGGING EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K
SEGMENT SPACE MANAGEMENT AUTO
DEFAULT COMPRESS FOR OLTP STORAGE ( ENCRYPT ) ENCRYPTION USING 'AES256';
CREATE SMALLFILE TABLESPACE "NIS_AINDEX"
DATAFILE 'D:\ORACLE\ORADATA\NISDB\NIS_AINDEX01.dbf' SIZE 10M AUTOEXTEND ON NEXT 1M MAXSIZE 400M
LOGGING EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K
SEGMENT SPACE MANAGEMENT AUTO
DEFAULT COMPRESS FOR OLTP STORAGE ( ENCRYPT ) ENCRYPTION USING 'AES256';
CREATE SMALLFILE TABLESPACE "NIS_DDATA"
DATAFILE 'D:\ORACLE\ORADATA\NISDB\NIS_DDATA01.dbf' SIZE 10M AUTOEXTEND ON NEXT 1M MAXSIZE 400M
LOGGING EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K
SEGMENT SPACE MANAGEMENT AUTO
DEFAULT COMPRESS FOR OLTP STORAGE ( ENCRYPT ) ENCRYPTION USING 'AES256';
CREATE SMALLFILE TABLESPACE "NIS_DINDEX"
DATAFILE 'D:\ORACLE\ORADATA\NISDB\NIS_DINDEX01.dbf' SIZE 10M AUTOEXTEND ON NEXT 1M MAXSIZE 400M
LOGGING EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K
SEGMENT SPACE MANAGEMENT AUTO
DEFAULT COMPRESS FOR OLTP STORAGE ( ENCRYPT ) ENCRYPTION USING 'AES256';
CREATE SMALLFILE TABLESPACE "NIS_XMLDOC"
DATAFILE 'D:\ORACLE\ORADATA\NISDB\NIS_XMLDOC01.dbf' SIZE 10M AUTOEXTEND ON NEXT 1M MAXSIZE 400M
LOGGING EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K
SEGMENT SPACE MANAGEMENT AUTO
DEFAULT COMPRESS FOR OLTP STORAGE ( ENCRYPT ) ENCRYPTION USING 'AES256';
CREATE SMALLFILE TABLESPACE "NIS_XMLINDEX"
DATAFILE 'D:\ORACLE\ORADATA\NISDB\NIS_XMLINDEX01.dbf' SIZE 10M AUTOEXTEND ON NEXT 1M MAXSIZE 400M
LOGGING EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K
SEGMENT SPACE MANAGEMENT AUTO
DEFAULT COMPRESS FOR OLTP STORAGE ( ENCRYPT ) ENCRYPTION USING 'AES256';
CREATE SMALLFILE TABLESPACE "NIS_SDEDICT"
DATAFILE D:\ORACLE\ORADATA\NISDB\NIS_SDEDICT01.dbf' SIZE 10M AUTOEXTEND ON NEXT 1M MAXSIZE 400M
LOGGING EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K
SEGMENT SPACE MANAGEMENT AUTO
DEFAULT COMPRESS FOR OLTP STORAGE ( ENCRYPT ) ENCRYPTION USING 'AES256';
CREATE SMALLFILE TABLESPACE "NIS_SDEDICTINDEX"
DATAFILE D:\ORACLE\ORADATA\NISDB\NIS_SDEDICTINDEX01.dbf' SIZE 10M AUTOEXTEND ON NEXT 1M MAXSIZE 400M
LOGGING EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K
SEGMENT SPACE MANAGEMENT AUTO
DEFAULT COMPRESS FOR OLTP STORAGE ( ENCRYPT ) ENCRYPTION USING 'AES256';
Установите начальный размер файлов данных в 10 МБ, чтобы табличные области создавались бы без задержек. Затем можно изменить размер файлов данных во избежание фрагментации.
ALTER DATABASE DATAFILE 'D:\ORACLE\ORADATA\NISDB\nis_Bdata01.dbf' RESIZE 400M;
ALTER DATABASE DATAFILE 'D:\ORACLE\ORADATA\NISDB\nis_Bindex01.dbf' RESIZE 400M;
ALTER DATABASE DATAFILE 'D:\ORACLE\ORADATA\NISDB\nis_Fdata01.dbf' RESIZE 400M;
ALTER DATABASE DATAFILE 'D:\ORACLE\ORADATA\NISDB\nis_Findex01.dbf' RESIZE 400M;
ALTER DATABASE DATAFILE 'D:\ORACLE\ORADATA\NISDB\nis_Sdata01.dbf' RESIZE 400M;
ALTER DATABASE DATAFILE 'D:\ORACLE\ORADATA\NISDB\nis_Sindex01.dbf' RESIZE 400M;
ALTER DATABASE DATAFILE 'D:\ORACLE\ORADATA\NISDB\nis_Adata01.dbf' RESIZE 400M;
ALTER DATABASE DATAFILE 'D:\ORACLE\ORADATA\NISDB\nis_Aindex01.dbf' RESIZE 400M;
ALTER DATABASE DATAFILE 'D:\ORACLE\ORADATA\NISDB\nis_Ddata01.dbf' RESIZE 400M;
ALTER DATABASE DATAFILE 'D:\ORACLE\ORADATA\NISDB\nis_Dindex01.dbf' RESIZE 400M;
ALTER DATABASE DATAFILE 'D:\ORACLE\ORADATA\NISDB\nis_Xmldoc01.dbf' RESIZE 400M;
ALTER DATABASE DATAFILE 'D:\ORACLE\ORADATA\NISDB\nis_Xmlindex01.dbf' RESIZE 400M;
ALTER DATABASE DATAFILE 'D:\ORACLE\ORADATA\NISDB\nis_Sdedict01.dbf' RESIZE 400M;
ALTER DATABASE DATAFILE 'D:\ORACLE\ORADATA\NISDB\nis_Sdedictindex01.dbf' RESIZE 400M;