나그네소

Goldilocks Property 설명(2021.08.17) 본문

sunjesoft/Goldilocks Property

Goldilocks Property 설명(2021.08.17)

나그네소티 2021. 8. 17. 15:55

### 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