나그네소
Goldilocks Property 설명(2021.08.17) 본문
### CLUSTER 환경 (CONTAINER/VM 제거) ###
LOCAL_CLUSTER_MEMBER = 'G1N1'
LOCAL_CLUSTER_MEMBER_PORT = 10311
LOCAL_CLUSTER_MEMBER_HOST = '192.168.0.138'
DATABASE_INSTANCE_NAME = 'G1N1'
### DB TABLESPACE SIZE ###
#>> memory
SYSTEM_MEMORY_DATA_TABLESPACE_SIZE = 3G
SYSTEM_MEMORY_TEMP_TABLESPACE_SIZE = 1G
SYSTEM_MEMORY_UNDO_TABLESPACE_SIZE = 512M
SYSTEM_MEMORY_DICT_TABLESPACE_SIZE = 512M
#>> disk
### operation memory size ####
SHARED_MEMORY_STATIC_SIZE = 3G #default 100M
PRIVATE_STATIC_AREA_SIZE = 1G #default 100M
### Trace log ###
TRACE_DDL = YES #default NO
TRACE_ALTER_SYSTEM = YES #default NO
TRACE_LONG_RUN_SQL = 0 # default 0
TRACE_LONG_RUN_CURSOR = 0 # default 0
### LOGFILE ###
PARALLEL_IO_FACTOR = 6 #default 1
#PARALLEL_IO_GROUP_1 = '/gold_dbs/db1'
#PARALLEL_IO_GROUP_2 = '/gold_dbs/db2'
#PARALLEL_IO_GROUP_3 = '/gold_dbs/db3'
#PARALLEL_IO_GROUP_4 = '/gold_dbs/db4'
#PARALLEL_IO_GROUP_5 = '/gold_dbs/db5'
#PARALLEL_IO_GROUP_6 = '/gold_dbs/db6'
# -->물리 disk를 raid로 묶어 하나로 처리 함으로 분리 까지 할 필요는 없다. 다만 성능 start 시간의
# 단축이 필요 하다면 PARALLEL_IO_FACTOR 개수 및 분리도 해보고 최적의 값을 찾아 봐야 한다.
### MEMORY ###
PARALLEL_LOAD_FACTOR = 16 # memory 관리하기 위한 만들때 이를 병렬화로 하기 위하여 사용 (cpu 개수 만큼 권고) default 1
INDEX_BUILD_PARALLEL_FACTOR = 16 # db startup 처리 관련 index build 부분으로 cpu core 개수 만큼 설정 default :0
### LOG 관련 설정 ###
LOG_BUFFER_SIZE = 1G # default 10M
LOG_FILE_SIZE = 2G # default 100M
LOG_GROUP_COUNT = 8 # default 4
PENDING_LOG_BUFFER_COUNT = 8 # default 4
### CLIENT 환경 조건 ###
CLIENT_MAX_COUNT = 4096 # default 128
PROCESS_MAX_COUNT = 4096 # default 128
TRANSACTION_TABLE_SIZE = 4096 # default 1024
UNDO_RELATION_COUNT = 2048 # default 128
UNDO_SHRINK_THRESHOLD = 1048576 #10M
### DB 성능 ###
INDEX_ROOT_MIRRORING_DEPTH = 2
### CLUSTER 환경 조건 ###
CLUSTER_ASYNC_COMMIT = YES
#> cdispatcher
CDISPATCHER_THREADS = 2 # cdispatcher normal thread 갯수 default 1
# CDISPATCHER_THREADS 값은 CDISPATCHER_SYNC_THREADS, CDISPATCHER_LOCKLESS_THREADS 외에 모든 것들을 처리 한다.
# CDISPATCHER_THREADS 값은 global transaction이 발생 하지 않는다면 2 로 처리 하는 것이 좋다.(CLUSTER_COMMIT_STREAM_ISOLATION 처리 하려면 2개 이상이어야 한다.)
# slave member에서 dml이 발생 한다면 CDISPATCHER_SYNC_THREADS 사용하지 않고 CDISPATCHER_THREADS 사용 한다.
CDISPATCHER_LOCKLESS_THREADS = 4 # cdispatcher lockless thread 갯수 default 1
# global transacton이 발생 하지 않는다면 CDISPATCHER_LOCKLESS_THREADS 갯수는 1로 해야 한다.
# global transaction이 발생 한다고 하여도 일단 2로 하는 것이 좋다.
CDISPATCHER_SYNC_THREADS = 3 # cdispatcher sync thread 갯수 default 1
# dml이 많이 발생 하여 sync 할 데이터가 많을경우 값을 늘리고 일단 2로 하는 것이 좋다.
#> QUEUE SIZE
CLUSTER_DISPATCHER_IN_QUEUE_SIZE = 4096 # default 1024
CLUSTER_DISPATCHER_OUT_QUEUE_SIZE = 4096 # default 1024
CLUSTER_SERVER_RESPONSE_QUEUE_SIZE = 1024 # default 30
#> CDISPATCHER HEARTBEAT TIMEOUT (lathency가 중요하면 값을 크게)
CDISPATCHER_HOT_POLICY_INTERVAL = 100 # default 0
COMMITTER_HOT_POLICY_INTERVAL = 100 # default 0
#> CSERVER
CSERVERS = 30 #default 5
LOCKLESS_CSERVERS = 30 #default 5
# global transaction이 발생 하지 않는다면 20 으로 로 하자.
CLUSTER_DATA_SYNC_SERVERS = 20 #default 3
CLUSTER_COMMIT_STREAM_ISOLATION = YES #commit server 따로 둘거냐. #default NO
#> CLUSTER BUFFER
CLUSTER_CM_BUFFER_COUNT = 32 #default 4
CDISPATCHER_SOCKET_BUFFER_SIZE = 10M #default 32K
CLUSTER_CM_BUFFER_SIZE = 20M #default 10M
#> CLUSTER GLOBAL TRANSACTION RECOVERY SIZE
GLOBAL_TRANSACTION_LOG_FILE_SIZE = 2G #default 100M
#> CLUSRER REBALANCE
REBALANCE_BLOCK_READ_COUNT = 1000 #default 100
MAXIMUM_JOURNAL_REPLAY_COUNT = 1024 #default 2
### cluster default ####
#> CLUSTER DEFAULT(장애사항)
#CLUSTER_PROTOCOL_SESSION_FATAL_POLICY_TIMEOUT = 0;
#CLUSTER_PROTOCOL_FAILOVER_POLICY_TIMEOUT = 0;
#> CLUSTER SPLIT BRAIN
CLUSTER_SPLIT_BRAIN_RESOLUTION_POLICY = 1 // split-brain 발생 시 glocator 이용하면 문제가 많이 발생 차리리 Group을 죽도록 하는 것을 합니다. (SKT)
#CLUSTER_SPLIT_BRAIN_RETRY_COUNT = 2
#> CLUSTER HEARTBEAT CHECK (3초에 1번씩 5번 전송 FAIL-OVER 3*5=15초)
CLUSTER_HEARTBEAT_INTERVAL = 3
CLUSTER_HEARTBEAT_RETRY_COUNT = 5
### DEFAULT 환경 ###
SPIN_COUNT = 1000 # def: 1000 # latch 관련 병목이 심한 site에서는 위와 관련 된 값을 높여 본다.
OS_GROUP_ACCESS = NO # 같은장비에 db/app이 같이 사용 할 때 group에 권한을 줄까 하는 건데 SBI 같은데는 NO로 해야 한다.
SHARED_SESSION = NO
SESSION_FATAL_BEHAVIOR = 1 # session에서 core 파일이 생성.
CHARACTER_SET = 'UTF8' #LANGUAGE TYPE (GB18030,SQL_ASCII,UHC,UTF8)
NLS_DATE_FORMAT = 'YYYY-MM-DD HH24:MI:SS'
GENERATE_CORE_DUMP = YES # core dump
PLAN_CACHE = YES
PLAN_CACHE_SIZE = 104857600
DDL_AUTOCOMMIT = ON
# USE_LARGE_PAGES = YES # HUGE PAGE 사용시
INST_ALLOCATOR_COUNT = 3
SESSION_MEMORY_INIT_SIZE = 131072 #session이 많이 dynamic mem 사용 한다면 미리 할당을 받아 놓는 것도 좋다.
SESSION_MEMORY_SHRINK_THRESHOLD = 131072 #chunk가 있을때 이를 SSA에 반납할지 안할지 제어합니다.
INST_TABLE_INDEX_NODE_COUNT_PER_BLOCK = 8 # sort instance 개수
### DYNAMIC SQL ###
SQL_HISTORY_SIZE = 100
### 통계정보 ###
TIMED_STATISTICS = 1
### CDC 관련 ###
DISABLE_DDL_CDC_GIVEUP = YES
DISABLE_UPDATE_PK_CDC_GIVEUP = YES
#LOG_SYNC_INTERVAL_MSEC = 1 #CDC 성능 때문에 LOGFILE 어느정도 대기 하다 SYNC 할거냐.
#SUPPLEMENTAL_LOG_DATA_PRIMARY_KEY = YES
### TIMEOUT ###
QUERY_TIMEOUT = 600
SNAPSHOT_STATEMENT_TIMEOUT = 900
IDLE_TIMEOUT = 84600
DDL_LOCK_TIMEOUT = 3
'sunjesoft > Goldilocks Property' 카테고리의 다른 글
Goldilocks Property File (0) | 2021.08.17 |
---|