LIMIT 최적화: large offset의 비용과 seek pagination 설계
MySQL에서 large offset pagination이 느려지는 내부 원인과 seek 방식의 인덱스 설계·일관성·운영 기준을 정리한다.
전체 문서 117개 · 4 / 6 페이지
MySQL에서 large offset pagination이 느려지는 내부 원인과 seek 방식의 인덱스 설계·일관성·운영 기준을 정리한다.
MySQL에서 ORDER BY가 인덱스 순서를 그대로 읽는 경우와 filesort를 수행하는 경우의 차이를 실행 계획과 운영 관점에서 정리한다.
MySQL EXPLAIN ANALYZE에서 optimizer 추정 rows와 실제 rows 차이를 읽고 인덱스·통계·쿼리 개선으로 연결하는 방법을 정리한다.
MySQL EXPLAIN FORMAT=JSON의 nested_loop, cost_info, attached_condition을 실행 계획 해석과 운영 진단 관점에서 정리한다.
MySQL EXPLAIN의 핵심 컬럼을 실행 경로, 인덱스 선택, row 추정, Extra 메시지 중심으로 운영 관점에서 해석한다.
MySQL Cost Model이 row 추정, 인덱스 비용 비교, 조인 순서 선택에 어떤 영향을 주는지 운영 관점에서 정리한다.
MySQL Histogram이 비인덱스 컬럼의 데이터 분포를 어떻게 모델링하고, 비균등 분포 환경에서 실행 계획 추정을 어떻게 개선하는지 운영 관점에서 정리한다.
MySQL 옵티마이저가 cardinality와 index statistics를 어떻게 사용하며 persistent statistics가 왜 실행 계획 안정성에 중요한지 운영 관점에서 정리한다.
MySQL 연결 구간에서 TLS를 어떻게 강제하고, 인증서를 어떻게 검증하며, 운영 중 어떤 쿼리로 암호화 상태를 점검해야 하는지 정리한다.
ProxySQL가 MySQL 앞단에서 hostgroup, query rule, connection multiplexing으로 어떤 운영 문제를 풀고, read/write split과 failover 보조를 어디까지 맡길 수 있는지 정리한다.
Aurora MySQL에서 max_connections를 메모리·동시성·장애 전파 관점으로 산정하고, 애플리케이션 pool만으로 충분한 경우와 proxy 또는 RDS Proxy가 필요한 경우를 운영 기준으로 정리한다.
MySQL connection pool 크기, 대기열, timeout, backpressure를 어떻게 설계해야 데이터베이스 과부하와 애플리케이션 장애 전파를 막을 수 있는지 운영 관점에서 정리한다.
MySQL client/server protocol에서 handshake, packet framing, text result set, prepared statement binary protocol이 어떻게 동작하는지 운영 관점에서 정리한다.
MySQL prepared statement와 드라이버 statement cache가 연결 풀과 결합될 때 어떤 메모리·세션·장애 특성이 생기는지 운영 관점에서 정리한다.
MySQL에서 sort_buffer_size, join_buffer_size, tmp_table_size를 세션 메모리 관점에서 어떻게 해석해야 하는지와 과대 설정이 만드는 메모리·디스크·장애 리스크를 운영 관점에서 정리한다.
MySQL에서 wait_timeout, interactive_timeout, net_read_timeout, net_write_timeout가 각각 무엇을 보호하며 어떤 장애 양상으로 나타나는지 운영 관점에서 정리한다.
MySQL에서 max_connections와 thread_cache_size를 어떻게 함께 설계해야 연결 폭주, 메모리 고갈, thread 생성 비용을 줄일 수 있는지 운영 관점에서 정리한다.
MySQL 클라이언트 연결이 생성될 때 handshake, 인증, 세션 스레드 할당이 어떤 순서로 진행되는지 운영 관점에서 정리한다.
SHOW ENGINE INNODB STATUS 출력의 구조와 핵심 지표를 InnoDB 운영 진단 관점에서 정리한다.
InnoDB crash recovery가 redo 적용, undo rollback, purge 재개 순서로 일관성을 회복하는 과정을 운영 관점에서 정리한다.