2023 Year April Start Story Record

SQL Lite Disk I/O 부하도 관련 장애 조치 가이드 본문

솔루션엔지니어기록/RDMS(MS-SQL, Oracle, SQLLite)

SQL Lite Disk I/O 부하도 관련 장애 조치 가이드

for happiness 2024. 3. 29. 16:33

SQL Lite 파일을 가지고, 대상 장비의 Raw Data 수집용으로 사용중입니다.

그러나 Disk I/O 부하 문제로 인해 몇 가지 옵션에 대해 찾아 보게되었다.

 

1. 증상

- SQL DB 파일 Read/Wirte 실행 시 "롤백 시 Journal File" 여러 파일이 생성 및 수량이 많으며, Disk I/O 부하 및 OS 성능도 떨어지는 현상 발생

 

2. 테스트 방법

1) SQL DB 테이블 인덱스 추가 방법

2) SQL DB 롤백 옵션 설정

- 현재 설정 : 저널모드 WAL(Write-Ahead Log) 사용중

※ 사용 용도에 따라 저널 모드 변경 필요

  • DELETE(default)

Rollback journal file 을 매번 Create/Delete 한다.

  • TRUNCATE

Rollback journal file 을 매번 Create/Delete 하지 않고, 파일 사이즈만을 0으로 설정 후 재활용 한다.

  • PERSIST

저널링 파일을 지우지 않는다.

  • MEMORY

저널링 파일을 메모리에서 유지한다. Sqlite3 를 사용하는 어플리케이션에서 장애시 데이터는 유실된다.

  • WAL

쓰기 요청이 들어오면 변경사항을 먼저 WAL-log 에 기록한다. 이후 일괄적으로 데이터에 반영한다.

  • OFF

데이터 파일에 직접 기록한다. 문제 발생시 데이터 복원이 불가하다.

 

해당 내용을 참고로 모드 변경하여 디스크 I/O 여부를 확인할 예정이다.