OpenFrame HiDB 환경설정
본 장에서는 OpenFrame HiDB의 운영에 필요로 하는 설정 항목에 대해 설명한다.
1. 개요
OpenFrame HiDB(이하 HiDB)의 운영에 관련된 사항은 openframe_hidb.conf에 각 'SECTION'의 'KEY'에 설정한 후 ofconfig 툴을 이용하여 시스템 설정을 저장한다.
기본값이 '(NONE)'인 'KEY'가 일부 존재하며 그러한 'KEY'의 'VALUE'를 '(NONE)'으로 지정했을 경우의 동작에 대해서는 해당 항목의 비고에 기재되어 있다. |
다음은 각 서브젝트의 섹션에 대한 설명이다. 각 섹션별 키의 상세 입력 값에 대한 설명은 해당 절을 참고한다.
-
OpenFrame HiDB와 OpenFrame OSI의 공통 설정을 저장한다.
섹션 설명 HiDB와 OSI가 함께 사용하는 전반적인 설정을 나타낸다.
-
OpenFrame HiDB의 전반적인 설정을 저장한다.
섹션 설명 HiDB의 기본 동작에 관련된 설정을 나타낸다.
디버그와 관련된 설정을 나타낸다.
HiDB 동작을 수행할 기본 사용자 정보를 입력한다.
2. ims
OpenFrame HiDB와 OpenFrame OSI가 공통으로 사용하는 설정을 나타낸다.
2.1. IMS_DEFAULT
HiDB와 OSI가 함께 사용하는 전반적인 설정을 나타낸다.
2.1.1. DBDLIB_NAME
기본으로 사용될 DBDLIB 이름을 지정한다. 멀티노드 환경에서 모든 노드의 설정이 일치해야 한다.
항목 | 설명 |
---|---|
파라미터 타입 |
String |
기본값 |
IMS.DBDLIB |
범위 |
|
비고 |
PDS 이름 형식에 맞게 지정한다. |
2.1.2. PSBLIB_NAME
기본으로 사용될 PSBLIB 이름을 지정한다. 멀티노드 환경에서 모든 노드의 설정이 일치해야 한다.
항목 | 설명 |
---|---|
파라미터 타입 |
String |
기본값 |
IMS.PSBLIB |
범위 |
|
비고 |
PDS 이름 형식에 맞게 지정한다. |
3. hidb
OpenFrame HiDB 동작을 결정하는 설정을 나타낸다.
3.1. HIDB_DEFAULT
HiDB의 기본 동작에 관련된 설정을 나타낸다.
3.1.1. COPYBOOK_DIR
hdgensch가 기본으로 참조할 카피북 경로를 지정한다.
항목 | 설명 |
---|---|
파라미터 타입 |
String |
기본값 |
${OPENFRAME_HOME}/copybook |
범위 |
|
비고 |
3.1.2. TABLESPACE
HiDB 테이블과 인덱스를 생성할 테이블스페이스를 지정한다. 멀티노드 환경에서 모든 노드의 설정이 일치해야 한다.
항목 | 설명 |
---|---|
파라미터 타입 |
String |
기본값 |
DEFVOL |
범위 |
|
비고 |
3.1.3. HIDB_OBJECT_DIR
hidbmgr dligen이 생성할 오브젝트 파일의 기본 경로를 지정한다.
항목 | 설명 |
---|---|
파라미터 타입 |
String |
기본값 |
${OPENFRAME_HOME}/obj_dir |
범위 |
|
비고 |
3.1.4. FIX_DATA_ERRORS
DLI 명령 수행 중 숫자 타입 컬럼에 대해 올바르지 않은 데이터가 발견됐을 때 자동으로 0으로 바꿔서 처리한다. 멀티노드 환경에서 모든 노드의 설정이 일치해야 한다.
항목 | 설명 |
---|---|
파라미터 타입 |
Y_N |
기본값 |
NO |
범위 |
YES, NO |
비고 |
3.1.5. NO_INDEX_TABLE
Secondary index를 정의할 때 index 테이블을 만들지 않고 segment 테이블에 직접 인덱스를 정의한다. 멀티노드 환경에서 모든 노드의 설정이 일치해야 한다.
항목 | 설명 |
---|---|
파라미터 타입 |
Y_N |
기본값 |
NO |
범위 |
YES, NO |
비고 |
YES일 경우가 성능이 더 빠르고 데이터베이스도 더 단순하게 구성되지만, index segment를 직접 조작하는 동작은 할 수 없다. 설정값을 바꾸면 데이터베이스를 다시 구성해야 한다. |
3.1.6. IGNORE_FILLER
Segment 테이블을 생성하고 DLI 명령을 처리할 때 FILLER를 무시한다. 멀티노드 환경에서 모든 노드의 설정이 일치해야 한다.
항목 | 설명 |
---|---|
파라미터 타입 |
Y_N |
기본값 |
NO |
범위 |
YES, NO |
비고 |
3.1.7. COMMIT_INTERVAL
DLI 명령을 처리할 때 DBMS에 COMMIT을 요청할 간격을 설정한다. 멀티노드 환경에서 모든 노드의 설정이 일치해야 한다.
항목 | 설명 |
---|---|
파라미터 타입 |
Number |
기본값 |
0 |
범위 |
|
비고 |
0으로 지정하면 해당 HiDB 스텝이 끝난 다음 커밋을 수행한다. |
3.1.8. RESOLVE_HINT_DIR
GET DLI 요청을 처리할 때 SELECT query에서 사용자가 정한 힌트 구문을 사용하도록 할 때 힌트 구문이 저장된 경로를 지정한다.
항목 | 설명 |
---|---|
파라미터 타입 |
String |
기본값 |
|
범위 |
|
비고 |
3.1.9. FIRST_FETCH_COUNT
GET DLI 요청을 처리할 때 FETCH 개수 처리에 대한 FIRST_ROWS HINT 구문에 사용할 값을 지정한다. 멀티노드 환경에서 모든 노드의 설정이 일치해야 한다.
항목 | 설명 |
---|---|
파라미터 타입 |
Number |
기본값 |
10 |
범위 |
|
비고 |
3.1.10. HIDB_ALTER_KEYSEQ
HiDB는 기본적으로 데이터베이스의 정렬 순서를 따르지만, EBCDIC 순서를 포함해 사용자가 원하는 형태로 데이터를 정렬하고자 하는 경우 지정한다. 멀티노드 환경에서 모든 노드의 설정이 일치해야 한다.
항목 | 설명 |
---|---|
파라미터 타입 |
Y_N |
기본값 |
NO |
범위 |
YES, NO |
비고 |
설정을 바꾸면 데이터베이스를 다시 구성해야 한다. YES일 경우 HiDB 7.2는 키 컬럼을 Tibero의 기능 NVARCHAR2로 정의한다. |
3.1.11. IGNORE_AUTH_CHECK
Segment를 조작할 때 TACF 권한 검사를 수행할지 여부를 결정한다. 멀티노드 환경에서 모든 노드의 설정이 일치해야 한다.
항목 | 설명 |
---|---|
파라미터 타입 |
Y_N |
기본값 |
NO |
범위 |
YES, NO |
비고 |
3.1.12. FETCH_COL_DEFAULT_VALUE
GET DLI 명령을 수행했을 때 null 바이트에 해당하는 데이터를 대신할 16진수 값을 지정한다. 멀티노드 환경에서 모든 노드의 설정이 일치해야 한다.
항목 | 설명 |
---|---|
파라미터 타입 |
String |
기본값 |
0x00 |
범위 |
1바이트 값을 16진수 표현 형태로 지정한다. |
비고 |
3.1.13. RESET_APPBUF_IF_GET_FAIL
GET DLI 명령이 실패했을 때 전달받은 데이터 버퍼를 비울지 여부를 지정한다. 멀티노드 환경에서 모든 노드의 설정이 일치해야 한다.
항목 | 설명 |
---|---|
파라미터 타입 |
Y_N |
기본값 |
YES |
범위 |
YES, NO |
비고 |
3.1.14. SKIP_POSITIONING_IF_GET_FAIL
GET DLI 명령이 실패했을 때 현재 위치를 가장 가까운 위치로 설정할지, 임시 위치로 설정할지를 정한다. 멀티노드 환경에서 모든 노드의 설정이 일치해야 한다.
항목 | 설명 |
---|---|
파라미터 타입 |
Y_N |
기본값 |
YES |
범위 |
YES, NO |
비고 |
YES로 지정했을 때 성능이 더 빠르다. |
3.1.15. HIDB_IMPORT_DIR
hdload를 로더 모듈을 이용해 실행할 때 데이터파일이 위치할 경로를 지정한다.
항목 | 설명 |
---|---|
파라미터 타입 |
String |
기본값 |
${OPENFRAME_HOME}/import_dir |
범위 |
|
비고 |
3.1.16. USE_INDICATOR
hidbmgr dligen이 만드는 DLI 라이브러리 파일에서 FETCH 명령을 처리할 때 indicator 변수를 사용할지 여부를 지정한다. 멀티노드 환경에서 모든 노드의 설정이 일치해야 한다.
항목 | 설명 |
---|---|
파라미터 타입 |
Y_N |
기본값 |
NO |
범위 |
YES, NO |
비고 |
3.1.17. ARRAY_BUFFER_MAX_SIZE
GET NEXT 요청에 사용할 수 있는 Array Buffer의 최대 크기를 지정한다. 0으로 설정하면 Array Buffer를 쓰지 않는다. 멀티노드 환경에서 모든 노드의 설정이 일치해야 한다.
항목 | 설명 |
---|---|
파라미터 타입 |
Number |
기본값 |
0 |
범위 |
|
비고 |
3.1.18. USE_KEYFLD_SEQ_FOR_HDAM
HDAM DBD의 root segment를 OCC_ID 순으로 정렬할지 키 필드 순으로 정렬할지 지정한다. 원본 시스템의 동작은 NO지만, NO를 지정할 경우 HiDB의 버퍼링을 포함한 몇 가지 동작에 제약이 생긴다. 멀티노드 환경에서 모든 노드의 설정이 일치해야 한다.
항목 | 설명 |
---|---|
파라미터 타입 |
Y_N |
기본값 |
NO |
범위 |
YES, NO |
비고 |
설정값을 바꾸면 데이터베이스를 다시 구축하거나 root segment 테이블에 대한 인덱스를 다시 정의해야 한다. |
3.2. DEBUG
HiDB 동작 중 디버그 정보와 관련된 설정을 나타낸다.
3.2.1. GENERAL
HiDB 동작 중 전반적인 디버그 정보 출력 여부를 설정한다. 요청된 DLI 명령, DLI 명령에 대한 SQL 쿼리문, 실행 시간, DLI 명령 실행 결과 상태 코드 등이 포함된다. 멀티노드 환경에서 모든 노드의 설정이 일치해야 한다.
항목 | 설명 |
---|---|
파라미터 타입 |
Y_N |
기본값 |
NO |
범위 |
YES, NO |
비고 |
3.2.2. SHOW_BUFFER
DLI 명령을 실행했을 때 INSERT, SELECT 등의 SQL 쿼리문에서 사용되는 버퍼 내용을 출력한다. 멀티노드 환경에서 모든 노드의 설정이 일치해야 한다.
항목 | 설명 |
---|---|
파라미터 타입 |
Y_N |
기본값 |
NO |
범위 |
YES, NO |
비고 |
3.2.3. DISABLE_COMMIT
YES를 지정하면 메타데이터 처리 및 DLI 명령을 처리할 때 COMMIT을 요청하지 않는다. 결과적으로 데이터베이스를 바꾸지 않고 동작을 테스트할 수 있다. 멀티노드 환경에서 모든 노드의 설정이 일치해야 한다.
항목 | 설명 |
---|---|
파라미터 타입 |
Y_N |
기본값 |
NO |
범위 |
YES, NO |
비고 |