📖
Simple & Clear Engineer Note
  • This is me
  • Infra 용어
  • Linux Acceptance test
    • ISO 9126의 특성에 따른 OS 항목 분류
    • 기능성 (Functionality)
      • Kernel 영역
      • LVM (Logical Volume Manager)
      • API (daemon 서비스 상태 체크)
      • CPU 정보 및 Firmware 확인
      • Memory 용량 및 Slot 확인
      • Negotiation 상태 확인
      • Raid 구성 확인
      • WEB/WAS 설치
      • Cache/Swap 메모리 초기화
      • NFS (Network File System)
    • 신뢰성 (Reliability)
      • Bonding
      • System Reboot
      • Disk Mirror
      • Multipath
      • Cluster
      • Backup & Optical Drive check
      • kdump
      • watchdogtimer
    • 사용성 (Usability)
      • Locale
      • Network 구성
      • Hosts file
      • DNS(Domain Name System)
      • NTP(Network Time Protocol) 시간 동기화
      • tcpdump
      • SSH (Secure Shell)
      • Runlevel
      • Crontab 작업 예약
      • TimeZone
      • VNC(Virtual Network Computing)
      • Yum local repository
    • 유지보수성 (Maintenance)
      • hdparm
    • 보안성 (Security)
      • Permission error 해결방법
    • 기타(ETC)
      • X window
      • Macro (Shell Script & TeraTerm(TTL))
  • Webserver
    • Infra Structure 소개
      • HTML +CSS +JavaScript
      • MongoDB + Flask
  • Hadoop Guide
    • Hadoop Single설치 (ver 2.7.4)
  • MachineLearning
    • 확률(Probability)
    • Machine learning이해하기
    • Processing Data(Numpy)
    • Data Handling - Pandas
      • feature Scaling
      • Data encoding
    • Analysis(with Python & R)
      • 기초통계지식
      • 회귀(Regression)
      • 분류(Classification)
      • 차원축소(Dimension Reduction)
      • 군집화(Clustering)
      • 평가(Evaluation)
      • Scikitlearn
    • Text Analysis
    • Time Series Analysis
    • Statistics
    • Customer Value Analysis
  • Deep Learning
    • CS231n
      • CS231n (Lecture 1~6)
      • CS231n(Lecture7~12)
  • DataBase
    • DataBase
    • Transaction
    • Oracle 12C setup
    • MySQL setup
    • neo4j Enterprise Setup
    • SQL
    • Data inquiry and data analysis using SQL
    • 품질 & RiskManagement
    • 성능(Performance)
    • 안정성
    • 이기종간 데이터 이관방법
  • 기타
    • JAVA용어정리(암기)
  • Windows 관리
    • WINDOW 서버 root 권한 설정 방법
    • 접속자 확인
  • EMRproject
    • Git & Github
Powered by GitBook
On this page
  • * DB parameter에 설명요약
  • DB 파라미터 확인
  • Disk IO 구성 체크 (OS/DATA부분의 디스크 분리 확인)
  • AWR(Automatic Workload Repository)
  • 개념 및 소
  • AWR Report 생성
  • AWR Report 확인
  • Async I/O 설정확인
  • Opensource Tool(Swingbench)를 이용한 DB 성능 테스트

Was this helpful?

  1. DataBase

성능(Performance)

Previous품질 & RiskManagementNext안정성

Last updated 4 years ago

Was this helpful?

* DB parameter에 설명요약

DB 파라미터 확인

오라클 서버가 운영되려면 인스턴스가 메모리에 할당 되어야 하고, 파라미터 파일이 필요하다. 오라클 서버의 파라미터 파일은 PFILE 과 SPFILE이 있는데, 9i 버전부터 SPFILE(ServerParameterFile)을 사용하고 있다. SPFILE을 사용하게 되면서 ALTER SYSTEM 명령어 통해 데이터베이스가 운영 중에도 파라미터를 수정할 수 있고, 서버를 재시작 하지 않아도 변경된 파라미터 반영이 된다.

SPFILE 생성방법 sqlplus / as sysdba

create pfile='/home/(오라클파일)/init.ora' from spfile;

SQL> exit

cat /home/oraLBS/init.ora

오라클 파라미터 확인방법 (2가지 방법)

현재 DB의 parameter 값 확인. SQL> select name,value from v$parameter

spfile에 설정된 parameter 값 확 SQL> select name,value from v$spparameter

select 로 parameter 를 확인할경우 where 로 확인할수 있고, 동일하게 show 명령에에 파라미터네임을 줘서 확인할수 있다. SQL> show parameter 파라미터네임

Disk IO 구성 체크 (OS/DATA부분의 디스크 분리 확인)

OS 영역과 DATA 영역이 물리적으로 분리가 되었는지

OS에서 df-h 명령어로 확인한다.

AWR(Automatic Workload Repository)

개념 및 소

DB에 대한 통계 및 성능자료 등을자수집해 스냅샷으로 정기간 보관하고, 활용가능 하도록 만든 기능

하지만 AWR 뷰를 조회하기 위해서는 진단&튜닝 팩 옵션을 별도의 라이선스를 구입해야한다.

따라서 무료버전인 Stackpack을 사용하길 권한다.

AWR Report 생성

생성방법은 아래 사이트를 참고하길 바라고, 현업에서는 보통 매 30분 마다 snap shot 생성과 보관을 일주일 단위로 설정한다.

https://jack-of-all-trades.tistory.com/135

AWR Report 확인

30분마다 AWR Snapshot을 생성하며 7일간 보관하도록 설정되었는지 확인할 수 있다.

SQL> select

extract( day from snap_interval) *24*60+

extract( hour from snap_interval) *60+

extract( minute from snap_interval ) "Snapshot Interval(Minute)",

extract( day from retention) "Retention Interval(Day)"

from

dba_hist_wr_control;

Async I/O 설정확인

동기와 비동기식에 대한 설명은 아래 사이트를 참고하길 바란다.

오라클 DB에서 사용되는 파일시스템이 디스크 I/O 발생 시 유닉스 버퍼 캐시를 경유하지 않고 다이렉트 I/O로 수행되기 위해서 FILESYSTEMIO_OPTIONS초기화 파라미터를 DIRECTIO 혹은 SETALL로 설정한다. SETALL 값으로 설정하면 다이렉트I/O뿐아니라 ASYNCH I/O를 동시에 사용하게 된다. 이를통해 쓰기에 대한 디스크 I/O발생빈도를 낮출 수 있다.

권장방법은 아래표를 참고하길 바란다.

구분

File System

Raw Disk or ASM

FILESYSTEMIO_OPTIONS

SETALL

NONE

DISK_ASYNCH_ID

NONE

TRUE

Async 파라미터 변경확인

SQL> show parameter filesystemio

SQL> show parameter disk_asynch

Opensource Tool(Swingbench)를 이용한 DB 성능 테스트

Oracle DBMS 에서 사용할 수 있는 tpmc 벤치마크 테스트툴로 SwingBench가 있다.

SwingBench를 사용하여 Oracle DB의 성능테스트가 오류없이 진행됨을 확인할 수 있는데, 대표적으로 TPM(분당 트랜잭션수), TPS(초당 트랜잭션수) 를 확인할 수있다.

SwingBench 설치방법은 아래 사이트를 참고하길 바란다.

https://docs.google.com/spreadsheets/d/1-6c404JWup8D7kXC4qF6Bc-Zs6Oc2DoROKhZM5cg38A/edit?usp=sharing
[네트워크] 동기 I/O와 비동기 I/O의 비교길은 가면, 뒤에 있다.
오라클DB 무료 성능측정툴 SwingBench (스윙벤치) - tpmc 벤치마크 테스트Jack-of-All-Trades
Logo
Logo