diff --git a/Manuals/Altibase_7.3/eng/Spatial SQL Reference.md b/Manuals/Altibase_7.3/eng/Spatial SQL Reference.md index e559fb520..d535c1582 100644 --- a/Manuals/Altibase_7.3/eng/Spatial SQL Reference.md +++ b/Manuals/Altibase_7.3/eng/Spatial SQL Reference.md @@ -867,7 +867,7 @@ INSERT INTO test1 VALUES (6, GEOMCOLLFROMTEXT('GEOMETRYCOLLECTION EMPTY')); In Altibase, the GEOMETRY data type can be represented using any of the three ways described below: -- WKT (Well-Known Text): A text format in which a spatial object is represented using letters and numbers. This allows it to be processed directly within SQL applications or other similar applications. The WKT format was designed using simple gramar for easy readability. +- WKT (Well-Known Text): A text format in which a spatial object is represented using letters and numbers. This allows it to be processed directly within SQL applications or other similar applications. The WKT format was designed using simple grammar for easy readability. - WKB (Well-Known Binary): A format in which a spatial object is represented in binary form. It was designed for the purpose of efficiently transferring and performing operations on GEOMETRY type data. - EWKT(Extended Well-Known Text) format: A text format in which Spatial Reference Identifier (SRID) information representing spatial objects has been added to the WKT format. - EWKB(Extended Well-Known Binary) format: A text format in which Spatial Reference Identifier (SRID) information representing spatial objects is added to the WKB format @@ -1192,9 +1192,8 @@ AThe spatial functions that are available in Altibase can be broadly classified - Spatial Analysis Functions These functions are used to perform various analytical tasks on GEOMETRY type data. - Spatial Object Creationg Functions - These functions are used to create spatial objects in WKT or WKB format, rather than in the internal storage format of Altibase. - +- Spatial Object Creation Functions + These functions are used to create spatial objects in WKT, WKB, EWKT, or EWKB format, rather than in the internal storage format of Altibase. ### Basic Spatial Functions @@ -3012,7 +3011,7 @@ F1 SRID(F2) ##### Syntax ``` -GEOMFROMTEXT( WKT) +GEOMFROMTEXT( WKT[, srid]) ``` ##### Description @@ -3023,7 +3022,7 @@ This function accepts a description of a spatial object in WKT (Well-known Text) The input can be any type of spatial object that can be described using WKT. If the syntax of the input WKT is not valid, this function outputs an error. -The SIRD of the created object is 0. +Users can specify SRID when using this function. If SRID is not specified, the SRID of the generated geometry object is 0. ##### Return Value @@ -3048,6 +3047,12 @@ GEOMETRYCOLLECTION( POINT(10 10) , POINT(30 30) , LINESTRING(15 15, 20 20) ) iSQL> INSERT INTO TB3 VALUES (102, GEOMFROMTEXT('POLYGON((10 10, 10 20, 20 20, 20 15, 10))')); [ERR-A101A : Parsing error of well-known-text] + +iSQL> SELECT ASEWKT(GEOMFROMTEXT('POINT(1 1)', 100)) AS OBJ FROM DUAL; +OBJ +------------------------------------- +SRID=100;POINT(1 1) +1 row selected. ``` #### POINTFROMTEXT @@ -3055,7 +3060,7 @@ iSQL> INSERT INTO TB3 VALUES (102, GEOMFROMTEXT('POLYGON((10 10, 10 20, 20 20, 2 ##### Syntax ``` -POINTFROMTEXT( WKT) +POINTFROMTEXT( WKT[, srid] ) ``` ##### Description @@ -3066,7 +3071,7 @@ If the syntax of the input WKT is not valid, or if the WKT describes a GEOMETRY This function returns NULL if the value of the WKT argument is NULL. -The SIRD of the created object is 0. +Users can specify SRID when using this function. If SRID is not specified, the SRID of the generated geometry object is 0. ##### Return Type @@ -3090,6 +3095,12 @@ POINT(10 10) iSQL> INSERT INTO TB3 VALUES (103, POINTFROMTEXT('GEOMETRYCOLLECTION( POINT(10 10), POINT(30 30), LINESTRING(15 15, 20 20))')); [ERR-A1019 : Not applicable object type] + +iSQL> SELECT ASEWKT(POINTFROMTEXT('POINT(1 1)', 100)) AS OBJ FROM DUAL; +OBJ +------------------------------------- +SRID=100;POINT(1 1) +1 row selected. ``` #### LINEFROMTEXT @@ -3097,7 +3108,7 @@ iSQL> INSERT INTO TB3 VALUES (103, POINTFROMTEXT('GEOMETRYCOLLECTION( POINT(10 1 ##### Syntax ``` -LINEFROMTEXT( WKT ) +LINEFROMTEXT( WKT[, srid] ) ``` ##### Description @@ -3108,7 +3119,7 @@ If the syntax of the input WKT is not valid, or if the WKT describes a GEOMETRY This function returns NULL if the value of the WKT argument is NULL. -The SIRD of the created object is 0. +Users can specify SRID when using this function. If SRID is not specified, the SRID of the generated geometry object is 0. ##### Return Type @@ -3132,6 +3143,12 @@ LINESTRING(10 10, 20 20, 30 40) iSQL> INSERT INTO TB3 VALUES (104, LINEFROMTEXT('MULTIPOLYGON(((10 10, 10 20, 20 20, 20 15, 10 10)), ((60 60, 70 70, 80 60, 60 60)))')); [ERR-A1019 : Not applicable object type] + +iSQL> SELECT ASEWKT(LINEFROMTEXT('LINESTRING(10 10, 20 20, 30 40)', 100) ) FROM DUAL; +OBJ +------------------------------------- +SRID=100;LINESTRING(10 10, 20 20, 30 40) +1 row selected. ``` #### POLYFROMTEXT @@ -3150,7 +3167,7 @@ If the syntax of the input WKT is not valid, or if the WKT describes a GEOMETRY This function returns NULL if the value of the WKT argument is NULL. -The SRID of a created object is 0. +Users can specify SRID when using this function. If SRID is not specified, the SRID of the generated geometry object is 0. ##### Return Type @@ -3185,6 +3202,11 @@ ID ASEWKT(OBJ) 120 SRID=100;POLYGON((10 10, 10 20, 20 20, 20 15, 10 10)) 2 rows selected. +iSQL> SELECT ASEWKT(POLYFROMTEXT('POLYGON((10 10, 10 20, 20 20, 20 15, 10 10))', 100)) AS OBJ FROM DUAL; +OBJ +------------------------------------- +SRID=100;POLYGON((10 10, 10 20, 20 20, 20 15, 10 10)) +1 row selected. ``` #### ST_POLYGONFROMTEXT @@ -3240,7 +3262,7 @@ ID ASEWKT(OBJ) ##### Syntax ``` -MPOINTFROMTEXT( WKT ) +MPOINTFROMTEXT( WKT[, srid] ) ``` ##### Description @@ -3251,7 +3273,7 @@ If the syntax of the input WKT is not valid, or if the WKT describes a GEOMETRY This function returns NULL if the value of the WKT argument is NULL. -The SRID of a created object is 0. +Users can specify SRID when using this function. If SRID is not specified, the SRID of the generated geometry object is 0. ##### Return Type @@ -3275,6 +3297,13 @@ MULTIPOINT(10 10, 20 20) iSQL> INSERT INTO TB3 VALUES (106, MPOINTFROMTEXT('LINESTRING(10 10, 20 20, 30 40)')); [ERR-A1019 : Not applicable object type] + + +iSQL> SELECT ASEWKT( MPOINTFROMTEXT('MULTIPOINT(10 10, 20 20)', 100) ) AS OBJ FROM DUAL; +OBJ +------------------------------------- +SRID=100;MULTIPOINT(10 10, 20 20) +1 row selected. ``` #### MLINEFROMTEXT @@ -3282,7 +3311,7 @@ iSQL> INSERT INTO TB3 VALUES (106, MPOINTFROMTEXT('LINESTRING(10 10, 20 20, 30 4 ##### Syntax ``` -MLINEFROMTEXT( WKT ) +MLINEFROMTEXT( WKT[, srid] ) ``` ##### Description @@ -3293,7 +3322,7 @@ This function accepts a spatial object in WKT (Well-known Text) format as input This function returns NULL if the value of the WKT argument is NULL. -The SRID of a created object is 0. +Users can specify SRID when using this function. If SRID is not specified, the SRID of the generated geometry object is 0. ##### Return Type @@ -3316,6 +3345,13 @@ MULTILINESTRING((10 10, 20 20), (15 15, 30 15)) 1 row selected. iSQL> INSERT INTO TB3 VALUES (107, MLINEFROMTEXT('POINT(10 10)')); [ERR-A1019 : Not applicable object type] + + +iSQL> SELECT ASEWKT(MLINEFROMTEXT('MULTILINESTRING((10 10, 20 20), (15 15, 30 15))', 100))AS OBJ FROM DUAL; +OBJ +------------------------------------- +SRID=100;MULTILINESTRING((10 10, 20 20), (15 15, 30 15)) +1 row selected. ``` #### MPOLYFROMTEXT @@ -3323,7 +3359,7 @@ iSQL> INSERT INTO TB3 VALUES (107, MLINEFROMTEXT('POINT(10 10)')); ##### Syntax ``` -MPOLYFROMTEXT( WKT ) +MPOLYFROMTEXT( WKT[, srid] ) ``` ##### Description @@ -3334,6 +3370,8 @@ If the syntax of the input WKT is not valid, or if the WKT describes a GEOMETRY This function returns NULL if the value of the WKT argument is NULL. +Users can specify SRID when using this function. If SRID is not specified, the SRID of the generated geometry object is 0. + ##### Return Type ``` @@ -3356,6 +3394,13 @@ MULTIPOLYGON(((10 10, 10 20, 20 20, 20 15, 10 10)), ((60 60, 70 70, 80 60, 60 60 iSQL> INSERT INTO TB3 VALUES (108, MPOLYFROMTEXT('MULTIPOINT(10 10, 20 20)')); [ERR-A1019 : Not applicable object type] + + +iSQL> SELECT ASEWKT(MPOLYFROMTEXT('MULTIPOLYGON(((10 10, 10 20, 20 20, 20 15, 10 10)), ((60 60, 70 70, 80 60, 60 60)))',100)) AS OBJ FROM DUAL; +OBJ +------------------------------------- +SRID=100;MULTIPOLYGON(((10 10, 10 20, 20 20, 20 15, 10 10)), ((60 60, 70 70, 80 60, 60 60))) +1 row selected. ``` #### GEOMCOLLFROMTEXT @@ -3363,7 +3408,7 @@ iSQL> INSERT INTO TB3 VALUES (108, MPOLYFROMTEXT('MULTIPOINT(10 10, 20 20)')); ##### Syntax ``` -GEOMCOLLFROMTEXT( WKT ) +GEOMCOLLFROMTEXT( WKT[, srid] ) ``` ##### Description @@ -3374,6 +3419,8 @@ If the syntax of the input WKT is not valid, or if the WKT describes a GEOMETRY This function returns NULL if the value of the WKT argument is NULL. +Users can specify SRID when using this function. If SRID is not specified, the SRID of the generated geometry object is 0. + ##### Return Type ``` @@ -3398,6 +3445,12 @@ GEOMETRYCOLLECTION( POINT(10 10) , POINT(30 30) , LINESTRING(15 15, 20 20) ) iSQL> INSERT INTO TB3 VALUES (109, GEOMCOLLFROMTEXT('POLYGON((10 10, 10 20, 20 20, 20 15, 10 10))')); [ERR-A1019 : Not applicable object type] + +iSQL> SELECT ASEWKT(GEOMCOLLFROMTEXT('GEOMETRYCOLLECTION(POINT(10 10), POINT(30 30), LINESTRING(15 15, 20 20))',100)) AS OBJ FROM DUAL; +OBJ +--------------------------------------------- +SRID=100;GEOMETRYCOLLECTION( POINT(10 10) , POINT(30 30) , LINESTRING(15 15, 20 20) ) +1 row selected. ``` #### ST_GEOMETRY @@ -6837,7 +6890,27 @@ else ``` -# Appendix A. Limitations on the Use of Spatial Data in Altiabase +# 4. Spatial Data Migration + +This section describes how to migrate spatial data between Altibase servers or Altibase and the other vendor database. + +### Spatial Data Migration Between Altibase Products + +Altibase Meta version 8.8.1 introduced a change in the spatial data storage format from WKB to EWKB. This alteration divides the scenarios for spatial data migration among Altibase products into four categories. + +For products with a meta version below 8.8.1, which cannot recognize EWKB format spatial data, **there may be a need to export EWKB format data into WKB format** in certain situations. Altibase provides functionality for exporting data in WKB format using the ILOADER_GEOM property in aexport and the '-geom WKB' option in iLoader. For detailed information on this feature, please refer to the respective manuals for aexport and iLoader. + +| Scenario | Data Migration Process Change | +| -------------------------------------- | ------------------------------------------------------------ | +| All meta versions are below 8.8.1 | None | +| All meta versions are 8.8.1 or above | None | +| Meta version 8.8.1 below → 8.8.1 above | None (WKB format spatial data is automatically converted to EWKB format.) | +| Meta version 8.8.1 above → 8.8.1 below | Add the property statement ILOADER_GEOM = WKB to the aexport.properties file and then proceed as usual.
If users want to migrate only specific tables, use the '-geom WKB' option in iLoader. | + +> [!TIP] +> Users can check the Altibase Meta version using the 'altibase -v' command. + +# Appendix A. Limitations on the Use of Spatial Data in Altibase With the expansion of Altibase into the realm of spatial data, inevitably some of Altibase's extensive functionality lacks support for use with spatial data. The current limitations are explained in detail in this Appendix. diff --git a/Manuals/Altibase_7.3/eng/Utilities Manual.md b/Manuals/Altibase_7.3/eng/Utilities Manual.md index d06f70a88..4b890f95a 100644 --- a/Manuals/Altibase_7.3/eng/Utilities Manual.md +++ b/Manuals/Altibase_7.3/eng/Utilities Manual.md @@ -815,11 +815,8 @@ When Altibase is installed, the \$ALTIBASE_HOME/conf directory does not actually - ILOADER_PARTITION This property determines whether the iLoader scripts are generated for each partition when there is a partitioned table in the source database. ILOADER\_ PARTITION = ON/OFF - When this property is set to ON, scripts for extracting form files and data for each partition are generated in run_il_out.sh. Similarly, scripts for loading data for each partition are generated in run_il_in.sh. - When this property is set to OFF, scripts for handling partitioned tables are generated to use a single data file for extraction and loading, similar to non-partitioned tables. - For more detailed information, please refer to the *iLoader User's Manual.* - ILOADER_ERRORS @@ -847,6 +844,10 @@ When Altibase is installed, the \$ALTIBASE_HOME/conf directory does not actually SSL_ENABLE = ON/OFF If this property is set to ON, SSL-related options are enabled for iSQL and iLoader commands in the shell scripts (run_is.sh and run_il_in.sh) to be executed on the target database. SSL-related options can be enabled with the SSL_CA, SSL_CAPATH, SSL_CERT, SSL_KEY, SSL_CIPHER, SSL_VERIFY properties. For further information about these properties, please refer to Parameters. + +- ILOADER_GEOM + ILOADER_GEOM = WKB + This property exports the spatial data in Well-Known Binary (WKB) format. The '-geom WKB' option is added to the run_il_out.sh file after adding 'ILOADER_GEOM = WKB' in aexport.properties and execution. diff --git a/Manuals/Altibase_7.3/eng/iLoader User's Manual.md b/Manuals/Altibase_7.3/eng/iLoader User's Manual.md index 9c4d77730..72297e3e8 100644 --- a/Manuals/Altibase_7.3/eng/iLoader User's Manual.md +++ b/Manuals/Altibase_7.3/eng/iLoader User's Manual.md @@ -463,8 +463,11 @@ iLoader is run with the following options. Where applicable, default values are | \-split *n* | Specifies the number of records to copy to each file (only meaningful when used with the -out option). After the command is executed, multiple backup files, each storing a number of records equal to n and having the names datefile.dat0, datafile.dat1, etc... will have been created. | | \-errors *count* | This specifies the maximum number of allowable errors when iLoader is executed with the -in option. If the number of errors exceeds the number specified here, execution terminates. If this option is omitted, the default is 50. If this value is set to 0, execution continues regardless of the number of errors. The number of errors occurring during the uploading operation may exceed the number specified here. When this option is used in conjunction with the -parallel option, if the number of errors exceeds the specified value for one of multiple threads executing in parallel, all threads are terminated. | | \-partition | If the table specified using the -T option is a partitioned table, a number of FORM files equal to the number of partitions in the table will be generated. The name of each FORM file will have this structure: [formfile_name.partition_name]. If the specified table is not a partitioned table, one FORM file, named formfile_name, will be generated. | +| -extra_col_delimiter | This is used to recognize the end of a record when column and record delimiters are consecutively positioned after the last column in a record.
For example, if a data file has a column delimiter '^' and a record delimiter '\n', and it has the following format, the -extra_col_delimiter option is required:
Kim^1077^RD^\n
Lee^1099^CS^\n
This can be used in conjunction with the -rule csv or -t option. | +| -geom [WKB] | During the execution of the out mode, this option is used to output spatial data in Well-Known Binary (WKB) format.
It is utilized to migrate spatial data in Altibase, which supports the Extended Well-Known Binary (EWKB) format, to a lower version that uses the WKB format. If this option is not used, it follows Altibase's spatial object support format. | | -verbose | In case of an upload error, the [position of the column(COLUMN_ORDER)](https://github.com/ALTIBASE/Documents/blob/master/Manuals/Altibase_7.3/eng/General%20Reference-2.The%20Data%20Dictionary.md#sys_columns_) where the error occurred is recorded in the log file specified by the -log option. However, if the position cannot be determined, it is not recorded.
To use this option, the -log option must be set. | + - If the -S, -U and -P command-line options are omitted, the user will be prompted to enter the values of these options manually at the time of execution. ``` @@ -714,16 +717,17 @@ The following options can realize considerable performance gains when running iL | Factor | Description | | ------------------------------------------ | ------------------------------------------------------------ | -| \-array *array_size* | To increase the speed of a data uploading (“in”) operation, data read from a file are first organized into an array before being sent to the server.
Performance is increased because the number of times that communication with the server must be established is decreased. However, if this value is set excessively high, it can have the opposite effect. If a LOB column exists, -array is ignored. | +| \-array *array_size* | To increase the speed of a data uploading (“in”) operation, data read from a file are first organized into an array before being sent to the server.
Performance is increased because the number of times that communication with the server must be established is decreased. However, if this value is set excessively high, it can have the opposite effect. | | \-commit *commit_unit* | When uploading data, this option determines how many records are committed at one time after being inserted. By default, 1000 records are committed after being inserted.
If commit_unit is set to 0, the application runs in NONAUTOCOMMIT mode, in which the commit operation takes place only after all data have been inserted.
If commit_unit is set to 1, the application runs in AUTOCOMMIT mode, in which a commit operation takes place for every record at the time that it is inserted.
When this option is used together with the array option, the commit operation takes place after a number of records equal to array_size * commit_unit have been inserted. | -| \-atomic | This option is set to use the Atomic Array INSERT option. Atomic Array INSERT realizes better performance than Array Insert because Atomic Array INSERT handles a number of Insert statements (up to the size of the array) as a single transaction. This option must be used together with the -array option. Additionally, tables that contain LOB type columns cannot be handled using this option. Furthermore, this option is useful only when uploading data. | -| \-direct [log\|nolog] (Direct-Path INSERT) | This option is for use with the Direct-Path INSERT when uploading data to a disk table.
If neither log nor nolog is specified, log is the default. If using nolog mode, it is essential to back up the table in question. If execution fails in nolog mode, recovery to a normal state will be impossible.
If loading tables for which there are restrictions (Restrictions for Direct-Path INSERT), execution will automatically switch to the atomic option.
If the -array option has not been set, the size of the array will automatically be set to the maximum possible size (=USHRT_MAX-1, or 65535).
If the -commit option is omitted, its value will be set to 1. | +| \-atomic | This option is set to use the Atomic Array INSERT option. Atomic Array INSERT realizes better performance than Array Insert because Atomic Array INSERT handles a number of Insert statements (up to the size of the array) as a single transaction. This option must be used together with the -array option. Plus, this option is useful only when uploading data. | +| \-direct [log\|nolog] (Direct-Path INSERT) | This option is for use with the Direct-Path INSERT when uploading data to a disk table.
If neither log nor nolog is specified, log is the default. If using nolog mode, it is essential to back up the table in question. If execution fails in nolog mode, recovery to a normal state will be impossible.
If loading tables for which there are restrictions (Restrictions for Direct-Path INSERT), execution will automatically switch to the atomic option.
If the -array option has not been set, the size of the array will automatically be set to the maximum possible size (=USHRT_MAX-1, or 65535).
If the -commit option is omitted, its value will be set to 1.
This option cannot be used together with -lightmode option. | | \-parallel *count* | This specifies the number of threads that can operate at the same time. A number of threads can be created and executed in parallel up to the specified value, the maximum of which is 32. When downloading, a number of files equal to the specified value is created, and the data are saved therein.
When downloading with only the -parallel option set, the performance of repeated bind and fetch operations may be reduced. Therefore, when downloading data, the -parallel and -array options should be used together.
If a LOB column is present, this option is ignored. When uploading with the -parallel option, iloader creates *count + 1* connections, and when downloading with this option, iloader always creates two connections. Therefore, when uploading or downloading with this option via IPC, the value in the IPC_CHANNEL_COUNT property in altibase.properties must be equal to or greater than the number of these connections.
Default value: 1, Max value: 32 | -| \-readsize *n* | This is used as an option for the IN mode. This option specifies the amount of data that are read from a file at one time. The size must be greater than 0. The default is 1048576 bytes. | +| \-readsize *n* | This option specifies the amount of data that is read from a file at one time. The size must be greater than 0. The default is 1048576 bytes. | +| -lightmode | This option does not log the log files for faster data insertion when data loading. Since it does not record log files, it may be impossible to recover normally in case of a failure. In such cases, it is recommended to recreate the target table.
It can be used with the -parallel option, allowing multiple iLoader instances to insert data simultaneously. However, while iLoader is being executed with this option, other transactions cannot perform INSERT, UPDATE, or DELETE operations on the target table. Therefore, it cannot be used on tables targeted for replication, and users cannot create replication for tables on which data insertion is in progress with this option. This option does not support the direct-path insert method, so it cannot be used with the -direct option. | ##### LOB column constraints -If there is a LOB colum in the table to be uploaded, the value speicifed by the user is ignored for the following options and internally set as shown in the table below. +If there is a LOB column in the table to be uploaded, the value specified by the user is ignored for the following options and internally set as shown in the table below. | Option | Setting Value | | --------- | ------ | diff --git a/Manuals/Altibase_7.3/kor/Spatial SQL Reference.md b/Manuals/Altibase_7.3/kor/Spatial SQL Reference.md index df77ecd33..5eabebe81 100644 --- a/Manuals/Altibase_7.3/kor/Spatial SQL Reference.md +++ b/Manuals/Altibase_7.3/kor/Spatial SQL Reference.md @@ -7372,22 +7372,145 @@ else } ``` -# 4. 공간 데이터 마이그레이션 +# 4. 공간 데이터 마이그레이션 (A) -본 장에서는 Altibase 또는 타 벤더 데이터베이스 제품과 공간 데이터 마이그레이션 하는 방법을 설명한다. +본 장에서는 Altibase 데이터베이스 간 공간 데이터 마이그레이션하는 방법을 설명한다. -### Altibase 제품간 공간 데이터 마이그레이션 +### Altibase 데이터베이스 간 공간 데이터 마이그레이션 -Altibase 제품간 공간 데이터 마이그레이션을 위해 iLoader와 aexport를 사용가능하다. 데이터 이관을 위한 iLoader와 마이그레이션을 위한 aexport는 공간 데이터를 지원하기에 다른 데이터 타입과 동일한 방식으로 마이그레이션이 가능하다. +공간 데이터 마이그레이션을 하기 위해 aexport와 iLoader를 사용한다. Altibase의 aexport와 iLoader는 공간 데이터를 지원하기때문에, 다른 데이터 타입과 동일한 방식으로 마이그레이션한다. 상세한 내용은 [**Utilities Manual**-aexport]() 와 [**iLoader User’s Manual**](https://github.com/ALTIBASE/Documents/blob/master/Manuals/Altibase_7.3/kor/iLoader%20User's%20Manual.md)를 참조한다. -한가지 주의할 점은 Altibase가 공간 데이터를 저장하는 포맷이다. SYSTEM\_.SYS\_DATABASE\_ 테이블 기준 메타 버젼 8.8.1 미만 버젼은 WKB 포맷을, 8.8.1이상 버젼은 EWKB 포맷을 지원한다. 마이그레이션 수행 시 추출되는 공간 데이터의 포맷은 공간 데이터가 저장된 Altibase가 지원하는 포맷에 따른다. 따라서, 8.8.1 미만 버젼은 WKB 포맷 공간 데이터 파일이 생성되고, 8.8.1이상 버젼은 EWKB 포맷 데이터 파일을 생성한다. +> **주의** +> +> Altibase 메타 버전 8.8.1부터 공간 데이터 저장 포맷이 WKB에서 EWKB로 변경되었다. 이에 따라 메타버전이 8.8.1 이전의 WKB 포맷의 공간데이터를 메타버전이 8.8.1 이상의 데이터 베이스로 이관하는 경우, WKB 포맷 공간 데이터는 EWKB 포맷으로 자동 변환된다. +> +> 반면, 메타버전 8.8.1 미만의 Altibase는 EWKB 포맷 공간 데이터를 인식하지 못한다. 만약 메타버전이 8.8.1 이상인 데이터베이스에서 메타버전이 8.8.1 미만의 Altibase로 데이터를 이관해야 하는 경우는, 원본 데이터를 WKB 포맷으로 추출하고 진행해야 한다. + +#### aexport 수행시 WKB 포맷으로 데이터 추출하는 방법 + +aexport.properties 파일에 아래의 프로퍼티 설정을 추가한다. + +``` +ILOADER_GEOM_FORMAT = WKB +``` + +ILOADER_GEOM_FORMAT = WKB 프로퍼티 설정을 추가한 후 aexport를 수행하면, 생성되는 run_il_out.sh 파일에 -geom WKB 옵션이 추가된다. + +#### iLoader 수행시 WKB 포맷으로 데이터를 이관하는 방법 + +iLoader를 이용하여 WKB 포맷으로 추출하는 방법 + +특정 테이블만 마이그레이션 하려는 경우는 iLoader의 '-geom WKB' 옵션을 사용한다. + +> [!TIP] +> Altibase의 메타 버전은 altibase -v 구문으로 확인할 수 있다. + +# 4. 공간 데이터 마이그레이션 (B) + +본 장에서는 Altibase 데이터베이스 간 공간 데이터 마이그레이션하는 방법을 설명한다. + +### Altibase 데이터베이스 간 공간 데이터 마이그레이션 + +공간 데이터 마이그레이션을 하기 위해 aexport와 iLoader를 사용한다. Altibase의 aexport와 iLoader는 공간 데이터를 지원하기때문에, 다른 데이터 타입과 동일한 방식으로 마이그레이션한다. 상세한 내용은 [**Utilities Manual**-aexport]() 와 [**iLoader User’s Manual**](https://github.com/ALTIBASE/Documents/blob/master/Manuals/Altibase_7.3/kor/iLoader%20User's%20Manual.md)를 참조한다. + +> **주의** +> +> Altibase 메타 버전 8.8.1부터 공간 데이터 저장 포맷이 WKB에서 EWKB로 변경되었다. 이에 따라 메타버전이 8.8.1 이전의 WKB 포맷의 공간데이터를 메타버전이 8.8.1 이상의 데이터 베이스로 이관하는 경우, WKB 포맷 공간 데이터는 EWKB 포맷으로 자동 변환된다. +> +> 반면, 메타버전 8.8.1 미만의 Altibase는 EWKB 포맷 공간 데이터를 인식하지 못한다. 만약 메타버전이 8.8.1 이상인 데이터베이스에서 메타버전이 8.8.1 미만의 Altibase로 데이터를 이관해야 하는 경우는, 원본 데이터를 WKB 포맷으로 추출하고 진행해야 한다. + +#### 원본 데이터를 WKB 포맷으로 추출하는 방법 + +##### aexport를 이용하여 WKB 포맷으로 추출하는 방법 + +aexport.properties 파일에 아래의 프로퍼티 설정을 추가한 다음 aexport를 수행한다. + +``` +ILOADER_GEOM_FORMAT = WKB +``` + +ILOADER_GEOM_FORMAT = WKB 프로퍼티 설정을 추가한 후 aexport를 수행하면, 생성되는 run_il_out.sh 파일에 -geom WKB 옵션이 추가된다. + +##### iLoader를 이용하여 WKB 포맷으로 추출하는 방법 + +특정 테이블만 마이그레이션 하려는 경우는 iLoader의 '-geom WKB' 옵션을 사용한다. + +>[!TIP] +>Altibase의 메타 버전은 altibase -v 구문으로 확인할 수 있다. + + + +# 4. 공간 데이터 마이그레이션 (C) + +본 장에서는 Altibase 데이터베이스 간 공간 데이터 마이그레이션하는 방법을 설명한다. + +### Altibase 데이터베이스 간 공간 데이터 마이그레이션 + +공간 데이터 마이그레이션을 하기 위해 aexport와 iLoader를 사용한다. Altibase의 aexport와 iLoader는 공간 데이터를 지원하기때문에, 다른 데이터 타입과 동일한 방식으로 마이그레이션한다. 상세한 내용은 [**Utilities Manual**-aexport]() 와 [**iLoader User’s Manual**](https://github.com/ALTIBASE/Documents/blob/master/Manuals/Altibase_7.3/kor/iLoader%20User's%20Manual.md)를 참조한다. + + Altibase 메타 버전 8.8.1부터 공간 데이터 저장 포맷이 EWKB로 변경되었다. (Altibase 메타 버전 8.8.1 이하의 공간 데이터 저장 포맷은 WKB이다.) 만약, 메타버전이 8.8.1 이상인 데이터베이스에서 메타버전이 8.8.1 미만의 Altibase로 데이터를 이관해야 하는 경우는, 아래의 "원본 데이터를 WKB 포맷으로 추출하는 방법"을 참고한다. + +> 참고 +> +> 메타버전이 8.8.1 이전의 WKB 포맷의 공간 데이터를 메타버전이 8.8.1 이상의 데이터베이스로 이관하는 경우, WKB 포맷 공간 데이터는 EWKB 포맷으로 자동 변환된다. +> + +#### 원본 데이터를 WKB 포맷으로 추출하는 방법 + +##### aexport를 이용하여 WKB 포맷으로 추출하는 방법 + +aexport.properties 파일에 아래의 프로퍼티 설정을 추가한 다음 aexport를 수행한다. + +``` +ILOADER_GEOM_FORMAT = WKB +``` + +ILOADER_GEOM_FORMAT = WKB 프로퍼티 설정을 추가한 후 aexport를 수행하면, 생성되는 run_il_out.sh 파일에 -geom WKB 옵션이 추가된다. + +##### iLoader를 이용하여 WKB 포맷으로 추출하는 방법 + +특정 테이블만 마이그레이션 하려는 경우는 iLoader의 '-geom WKB' 옵션을 사용한다. + +>[!TIP] +>Altibase의 메타 버전은 altibase -v 구문으로 확인할 수 있다. + +# 4. 공간 데이터 마이그레이션 (D) + +본 장에서는 Altibase 데이터베이스 간 공간 데이터 마이그레이션하는 방법을 설명한다. + +### Altibase 데이터베이스 간 공간 데이터 마이그레이션 + +공간 데이터 마이그레이션을 하기 위해 aexport와 iLoader를 사용한다. Altibase의 aexport와 iLoader는 공간 데이터를 지원하기때문에, 다른 데이터 타입과 동일한 방식으로 마이그레이션한다. 상세한 내용은 [**Utilities Manual**-aexport]() 와 [**iLoader User’s Manual**](https://github.com/ALTIBASE/Documents/blob/master/Manuals/Altibase_7.3/kor/iLoader%20User's%20Manual.md)를 참조한다. + +마이그레이션 수행시 추출되는 공간 데이터의 포맷은 공간 데이터가 저장된 Altibase가 지원하는 포맷을 따르는데, Altibase 메타 버전 8.8.1 부터 공간 데이터 저장 포맷이 EWKB로 변경되었다. 이로 인해 하위버전에서 상위버전으로의 마이그레이션 방법에는 변경이 없지만, 상위 버전에서 하위버전으로의 마이그레이션은 아래의 주의 사항을 참고해야 한다. + +> 주의 +> +> 메타버전 8.8.1 미만의 Altibase는 EWKB 포맷 공간 데이터를 인식하지 못한다. 메타버전이 8.8.1 이상인 데이터베이스에서 메타버전이 8.8.1 미만의 Altibase로 데이터를 이관해야 하는 경우는, 아래의 "원본 데이터를 WKB 포맷으로 추출하는 방법"을 참고한다. + +> 참고 +> +> 메타버전이 8.8.1 이전의 WKB 포맷의 공간데이터를 메타버전이 8.8.1 이상의 데이터 베이스로 이관하는 경우, WKB 포맷 공간 데이터는 EWKB 포맷으로 자동 변환된다. + +#### 원본 데이터를 WKB 포맷으로 추출하는 방법 + +##### aexport를 이용하여 WKB 포맷으로 추출하는 방법 + +aexport.properties 파일에 아래의 프로퍼티 설정을 추가한 다음 aexport를 수행한다. + +``` +ILOADER_GEOM_FORMAT = WKB +``` + +ILOADER_GEOM_FORMAT = WKB 프로퍼티 설정을 추가한 후 aexport를 수행하면, 생성되는 run_il_out.sh 파일에 -geom WKB 옵션이 추가된다. + +##### iLoader를 이용하여 WKB 포맷으로 추출하는 방법 -WKB 포맷의 공간 데이터는 EWKB 지원 Altibase가 읽고 자동으로 변환한다. 반면, EWKB 포맷 공간 데이터는 WKB 지원 Altibase가 인식하지 못한다. 따라서, EWKB 포맷 데이터를 WKB 지원 Altibase로 데이터 이관 할때 원본 데이터를 WKB 포맷으로 추출하는 옵션을 사용해야 한다. 마이그레이션 작업할 때는 aexport의 aexport.properties 파일에 'ILOADER_GEOM = WKB' 옵션을, 하나의 테이블만 작업할 때는 iLoader에서 '-geom WKB' 옵션을 사용한다. 상세 내용은 iLoader와 aexport 매뉴얼을 참조한다. +특정 테이블만 마이그레이션 하려는 경우는 iLoader의 '-geom WKB' 옵션을 사용한다. # A.부록: Spatial 칼럼의 제약사항 -이 부록은 Altibase에 Spatial 기능을 확장함에 따라 기존의 DBMS 기능 중 GEOEMTRY -칼럼에 대한 지원이 제한되는 부분을 기술한다. +이 부록은 Altibase에 Spatial 기능을 확장함에 따라 기존의 DBMS 기능 중 GEOEMTRY 칼럼에 대한 지원이 제한되는 부분을 기술한다. ### GEOMETRY 칼럼에 대한 제약 사항 diff --git a/Manuals/Altibase_7.3/kor/Utilities Manual.md b/Manuals/Altibase_7.3/kor/Utilities Manual.md index c37632c5e..2cca4f13c 100644 --- a/Manuals/Altibase_7.3/kor/Utilities Manual.md +++ b/Manuals/Altibase_7.3/kor/Utilities Manual.md @@ -783,7 +783,7 @@ Altibase를 설치할 때, aexport.properties 파일은 \$ALTIBASE_HOME/conf에 - EXECUTE 생성한 스크립트를 자동으로 수행할 것인지 여부를 설정한다. EXECUTE = ON/OFF - ON일 경우 OPERATION 에 지정된 작업에 맞는 적절한 스크립트 파일을 자동으로 실행한다. 스크립트 파일 이름은 ILOADER_OUT, ILOADER_IN, ISQL, ISQL_CON, ISQL_INDEX, ISQL_FOREIGN_KEY, ISQL_REPL, ISQL_REFRESH_MVIEW, 그리고 ISQL_ALT_TBL 프로퍼티로 설정된다. + ON일 경우 OPERATION 에 지정된 작업에 맞는 적절한 스크립트 파일을 자동으로 실행한다. 스크립트 파일 이름은 ILOADER_OUT, ILOADER_IN, ISQL, ISQL_CON, ISQL_INDEX, ISQL_FOREIGN_KEY, ISQL_REPL, ISQL_REFRESH_MVIEW, 그리고 ISQL_ALT_TBL 프로퍼티로 설정된다. OFF일 경우 스크립트를 생성하기만 하고 실행하지는 않는다. - INVALID_SCRIPT