728x90

Tibero Process 확인

# 현재 실행중인 티베로 프로세스 조회
$ ps -ef | grep tbsvr 

# 현재 실행중인 티베로 리스너 조회
$ ps -ef | grep tblistener

조회 예시

# 티베로 프로세스 조회
$ ps -ef | grep tbsvr

tibero      2025       1  0 14:09 pts/0    00:00:01 tbsvr          -t NORMAL -SVR_SID tibero # monitor process
tibero      2027    2025  0 14:09 pts/0    00:00:00 tbsvr_MGWP     -t NORMAL -SVR_SID tibero # 관리자 접속용 
tibero      2028    2025  0 14:09 pts/0    00:00:00 tbsvr_FGWP000  -t NORMAL -SVR_SID tibero # Worker Process
tibero      2029    2025  0 14:09 pts/0    00:00:01 tbsvr_FGWP001  -t NORMAL -SVR_SID tibero # Worker Process
tibero      2030    2025  0 14:09 pts/0    00:00:00 tbsvr_PEWP000  -t NORMAL -SVR_SID tibero # 병렬실행
tibero      2031    2025  0 14:09 pts/0    00:00:00 tbsvr_PEWP001  -t NORMAL -SVR_SID tibero # 병렬실행
tibero      2032    2025  0 14:09 pts/0    00:00:00 tbsvr_PEWP002  -t NORMAL -SVR_SID tibero # 병렬실행
tibero      2033    2025  0 14:09 pts/0    00:00:00 tbsvr_PEWP003  -t NORMAL -SVR_SID tibero # 병렬실행
tibero      2034    2025  0 14:09 pts/0    00:00:00 tbsvr_PEWP004  -t NORMAL -SVR_SID tibero # 병렬실행
tibero      2035    2025  0 14:09 pts/0    00:00:00 tbsvr_PEWP005  -t NORMAL -SVR_SID tibero # 병렬실행
tibero      2036    2025  0 14:09 pts/0    00:00:02 tbsvr_AGNT     -t NORMAL -SVR_SID tibero # 에이전트
tibero      2037    2025  0 14:09 pts/0    00:00:00 tbsvr_DBWR     -t NORMAL -SVR_SID tibero # DB Writer process
tibero      2038    2025  0 14:09 pts/0    00:00:00 tbsvr_RCWP     -t NORMAL -SVR_SID tibero # 복구 프로세스

 

# 리스너 프로세스 조회
$ ps -ef | grep listener 
[tibero@T6:/tibero/tibero7/config]$ ps -ef | grep listener
root         934       1  0 12:12 ?        00:00:00 sshd: /usr/sbin/sshd -D [listener] 0 of 10-100 startups
tibero      2026    2025  0 14:09 pts/0    00:00:00 /tibero/tibero7/bin/tblistener -n 11 -t NORMAL -SVR_SID tibero

 


Tibero Memory Structure

Tibero Memory 구조는 TSM(Tibero Shared Memroy=SGA)와 PGA(Process Global Area)로 구성되어 있다.

  • PGA는 프로세스 끼리 서로 공유하지 않는 메모리 공간으로 MEMORY_TARGET - TOTAL_SHM_SIZE 즉, 전체 메모리 크기에서 TSM 크기를 뺀 나머지 사이즈가 PGA 크기이다. 
  • TSM은 인스턴스끼리 공유하는 메모리 영역으로, 사이즈는 TOTAL_SHM_SIZE 파라미터로 지정한다.

 

TSM (Tibero Shared Memory)

1. DB Buffer Cache

  - 최근 테이블, 인덱스의 데이터를 저장한다.

  - DB_CACHE_SIZE 파라미터로 크기를 지정한다.

  - DB Buffer Cache에 올라온 데이터 블록은 재사용된다.

  - DB Buffer Cache Hit 율이 높다. ▶️ 버퍼 캐시 내의 데이터 블록들의 재사용성이 높다. ▶️ Disk I/O가 적다

 

2. Redo Log Buffer

  - 데이터 처리 작업 내용을 저장 한다.

  - 기본 10MB 크기이며, LOG_BUFFER 파라미터로 크기를 설정하낟.

  - 데이터 수정 내역을 저장한다.

  - 여러 사용자들의 Redo Log 들이 Redo Log Buffer에 저장된다.

  - Redo Log Buffer 내용은 Redo Log File에 저장된다.

 

3. System Area

  - 전역변수 공간으로, Worker Thread를 관리하는 공간이다.

  - 세션정보 관리 공간으로 구성된다.

 

4. Shared Cache

  1) PP Cache(Physical Plan Cache)

    - 최근 실행환 쿼리문, 구문 분석(파싱)정보, 실행계획 정보를 저장한다.

  2) DD Cache(Dictionray Cache)

    - 최근 실행한 SQL에서 사용하는 오브젝트(테이블, 컬럼, 사용자, 권한)의 데이터 사전 정보 저장

 

PGA(Process Global Area)

Worker Process 간에 공유하지 않는 독립적인 메모리 영역이다.

PGA 크기 = MEMORY_TARGET - TOTAL_SHM_SIZE

 

1. SQL Work Area

  - Worker Thread가 SQL 수행 시 Sorting, Merge 조인, Hash 조인 작업 공간으로 사용 

  - 크기가 부족하면 임시 세그먼트 (Temporary Tablespace)를 사용하여 성능이 저하된다.

 

2. Process Memory

  - 프로세스가 동작하는 데 필요한 공간

 

3. SQL Info Area

  - 커서 정보 영역으로 SQL문을 처리하는데 필요한 공간

 

4. Session Info Area

  - 로그인 및 세션 관련 정보 저장

 

✅ 관리자 입장에서의 메모리 관리 

1. 각각의 메모리 크기 관리

2. 메모리들이 본래 목적에 맞게 잘 돌아가는지 확인

  - Hit율로 확인한다. ➡️ 100%에 가까울수록 좋다 ➡️ Hit율이 높다는 것은 그만큼 프로세스간 메모리 공유가 잘 된다는 것 

  - 크기, Hit율을 파악하여 조치해야 한다.

    ✔︎ 메모리 추가

    ✔︎ 기존 메모리 비율 재설정

    ✔︎ 기존 메모리를 효율적으로 사용하도록 수정 (ex, SQL Query 튜닝)

*튜닝이 필요한 쿼리 찾기 ➡️ 쿼리 모니터링(PP Cache) ➡️  쿼리 튜닝을 통해 Temp Tablespace를 적게 사용하도록 하거나, 실행계획을 조금 더 효율적으로 수정하거나 등등,,

 

OLTP 와 OLAP

  • OLTP(Online Transaction Processing)
    • 온라인 트랜잭션 처리 시스템
    • 사용자들이 실시간으로 데이터에 접근하고 처리하는 시스템을 의미
    • ex) 은행 ATM 이체, 온라인 쇼핑몰 상품 주문 등
  • OLAP(Online Analytical Processing)
    • 온라인 분석 처리 시스템
    • 대량의 데이터를 분석하고 인사이트를 얻기 위한 시스템
    • ex) 매출 분석 보고서, 고객 행동 패턴 분석

✔︎ OLTP vs OLAP 비교표

비고 OLTP OLAP
목적 실시간 업무 처리 데이터 분석
사용자 일반 사용자 관리자, 데이터 분석가
데이터 자주 변경 주로 읽기 전용
트랜잭션 짧고 빠름 길고 복잡함
예시 은행, 쇼핑몰 매출분석, 경영 리포트

 

업무 성격에 따른 메모리 크기 비율 설정 ( OLTP, OLAP )

1. OLTP → 8(TSM) : 2 (PGA) 비율

  - OLTP는 소량 데이터를 여러 세션에서 접근하는 경우가 많다. 소량의 데이터를 버퍼 캐시에서 빠르게 접근하기 때문에 PGA 크기가 많이 필요하지 않다. (소량 데이터라 처리 부담이 적음)

 

2. OLAP → 5(TSM) : 5 (PGA) 비율

  - OLAP는 대량의 데이터를 분석, 집계하는 경우로, 대량 데이터 처리(sorting 등 ) 하는데 작업 공간이 많이 필요하다. PGA가 커야 원할하게 작업을 처리할 수 있다. 대량 데이터 처리 환경에서는 1년치 데이터 or 테이블 모든 데이터 접근 하기 위해서 대량 데이터를 버퍼 캐시에 올려야 한다. 기존 버퍼 캐시 재사용이 잘 되지 않는다.

 

 

+ Recent posts