Zettelkasten
Search
⌘K
Graph
Tags
#
mysql
21개
range_optimizer_max_mem_size를 넘으면 옵티마이저가 range 접근을 포기하고 풀 스캔으로 빠진다
1,557자
mysql
query-optimizer
index
SSCursor는 결과를 서버에 두고 행 단위로 흘려보내 클라이언트 메모리 대신 커넥션 점유를 택한다
1,949자
mysql
python
database
streaming
파티셔닝은 논리적 한 테이블을 독립된 물리 세그먼트로 쪼개 안 읽을 조각을 통째로 건너뛴다
2,767자
database
partitioning
index
pagination
mysql
postgresql
pymysql 파싱 CPU의 원인 쿼리는 performance_schema digest의 SUM_ROWS_SENT 랭킹으로 특정한다
2,151자
py-spy
pymysql
performance-schema
mysql
profiling
InnoDB free list는 페이지가 통째로 비거나 채움률 50% 미만일 때 생긴다
1,683자
mysql
innodb
storage
clustered-index
OPTIMIZE TABLE은 테이블을 통째로 리빌드해 DELETE로 남은 미반환 공간을 OS로 회수한다
1,508자
mysql
innodb
rds
disk
버퍼풀 메모리 축소로 인한 read latency 하락은 착시이다
1,521자
mysql
innodb
rds
buffer-pool
metrics
버퍼풀을 더 줄여도 되는지는 IOPS 천장 여유가 아니라 피크 ReadLatency로 판단한다
2,057자
rds
mysql
innodb
gp3
capacity-planning
cloudwatch
IN 리스트가 eq_range_index_dive_limit를 넘으면 옵티마이저가 index dive를 포기해 잘못된 plan을 고른다
1,440자
mysql
index
query-optimization
database
performance
RDS 다운사이징 전에 buffer pool을 점진적으로 낮춰 핫셋이 작은 pool에 맞는지 실측한다
2,227자
rds
mysql
innodb
capacity-planning
cost-optimization
RDS 메모리 다운사이징 가능 여부는 데이터가 커도 ReadIOPS가 낮은지로 판별한다
1,903자
rds
mysql
innodb
capacity-planning
cost-optimization
ReadIOPS는 논리 읽기 요청이 아니라 디스크 물리 읽기를 센다
2,143자
rds
mysql
innodb
ebs
monitoring
ReadIOPS는 절대값이 아니라 프로비저닝 IOPS 대비 사용률과 read-write 비율로 판단한다
1,560자
rds
mysql
ebs
capacity-planning
monitoring
UPDATE WHERE 조건부 갱신은 SELECT FOR UPDATE보다 lock 대기 없이 동시성 경합을 해결한다
1,471자
concurrency
database
django
mysql
race-condition
deadlock
INSERT ON DUPLICATE KEY UPDATE는 UNIQUE 인덱스 충돌을 에러가 아닌 UPDATE 트리거로 바꾸는 절이다
1,772자
mysql
innodb
upsert
unique-index
concurrency
race-condition
Range 쿼리 종류
577자
database
mysql
Partial Index로 특정 조건에서만 유니크 제약을 적용할 수 있다
477자
database
postgresql
mysql
index
mysql 정렬
767자
mysql
sorting
query-optimization
mysql 풀 테이블 스캔
354자
mysql
query-optimization
선택도와 카디날리티 차이
404자
database
index
mysql
복합 인덱스 설계 원칙 - 동등 조건 컬럼은 왼쪽에, 범위(BETWEEN, <, > 등) 조건 컬럼은 오른쪽에
384자
database
mysql