반응형
서론
몇 백만 건 이상의 데이터를 조회하게되면 Timeout 이슈가 발생할 수 있다.
FULL, PARALLEL 등 병렬 SQL 처리에 대한 개념을 확인해보면서 적용 방안에 대해 생각해보자.
시리얼 SQL vs 병렬 SQL
- 시리얼 SQL
- 소량의 데이터 처리에 적합, 시스템 영향도가 적음, 온라인 처리 시스템
- SQL> SELECT COUNT(*) FROM 고객 c;
- 하나의 프로세스가 SQL 조건에 맞는 데이터를 모두 검색하여 반환
- 병렬 SQL
- 대용량 처리에 적합, 시스템 자원 점유, DSS/배치 서버
- Oracle SQL> SELECT /*+ FULL(c) PARALLEL(c 4) */ * FROM 고객 c;
- MySQL에서는 병렬처리를 위해 innodb_parallel_read_threads 시스템 변수를 제어할 수 있다.
- MySQL SQL> SET SESSION innodb_parallel_read_threads={n};
- MySQL SQL> SELECT COUNT(*) FROM 고객 c;

728x90
반응형
'Tip' 카테고리의 다른 글
[Mac] 크롬 브라우저 새로고침 단축키 F5 설정 (0) | 2024.08.13 |
---|---|
[Mac] 맥북-윈도우 키보드 단축키 동기화 설정 (0) | 2024.08.13 |
[UX/UI] 디지털 정부서비스 UI/UX 가이드라인 (0) | 2024.08.08 |
[Git] 협업 시 task branch에 main branch 필요내용 불러오기 (0) | 2024.07.30 |
[윈도우] Chrome 브라우저 프린트 자동화 (1) | 2024.07.15 |
[Mac] 맥북 잠금화면, 절전모드 시 프로그램 실행 유지 방법 (0) | 2024.07.12 |
[ByteByteGo] 주니어 개발자에서 시니어 개발자로 성장하는 11단계 (1) | 2024.06.16 |
날짜 간 기간(연, 개월, 일) 차이 계산기 (0) | 2024.06.05 |