블로그 글

박재성 선생님이 개발 블로그에 쓴 글입니다.

[실습] 인덱스 직접 설정해보기 / 성능 측정해보기
MySQL

[실습] 인덱스 직접 설정해보기 / 성능 측정해보기

✅ 인덱스 직접 설정해보기 / 성능 측정하고 비교해보기 아래의 구성과 동일하게 테이블을 셋팅해보고, 인덱스를 설정해보자. 테이블 생성 100만 건의 랜덤 데이터 삽입 데이터 조회해보기 SQL문 실행 시 걸리는 소요 시간 측정하기 인덱스 설정하기 데이터

[실습] 멀티 컬럼 인덱스 직접 설정해보기 / 작동방식 이해하기
MySQL

[실습] 멀티 컬럼 인덱스 직접 설정해보기 / 작동방식 이해하기

✅ 멀티 컬럼 인덱스 직접 설정해보기 테이블 생성 더미 데이터 생성 멀티 컬럼 인덱스 생성 멀티 컬럼 인덱스 생성 잘 됐는 지 확인하기 ✅ 데이터 조회할 때 인덱스를 어떻게 활용하는 지 과정 이해하기 아래 SQL문을 실행시킬 때 멀티 컬럼 인덱스를 어

[실습] 2023년 주문 데이터 조회하는 SQL문 튜닝하기
MySQL

[실습] 2023년 주문 데이터 조회하는 SQL문 튜닝하기

✅ 특정 유저의 2023년 주문 데이터 조회하기 기본 테이블 셋팅 더미 데이터 추가 기존 SQL문 성능 조회해보기 실행 계획 조회해보기 성능 개선해보기

실행 계획에서 type 의미 분석하기 (const, range, ref)
MySQL

실행 계획에서 type 의미 분석하기 (const, range, ref)

✅ const : 1건의 데이터를 바로 찾을 수 있는 경우 조회하고자 하는 1건의 데이터를 헤매지 않고 단번에 찾아올 수 있을 때 const가 출력된다. 그러다보니 고유 인덱스 또는 기본 키를 사용해서 1건의 데이터만 조회한 경우에 const가 출력

[실습] 특정 부서에서 최대 연봉을 가진 사용자들 조회하는 SQL문 튜닝하기
MySQL

[실습] 특정 부서에서 최대 연봉을 가진 사용자들 조회하는 SQL문 튜닝하기

✅ 특정 부서에서 최대 연봉을 가진 사용자들 조회하기 테이블 생성 100만 건의 랜덤 데이터 삽입 기존 SQL문 성능 체크하기 실행 계획 조회해보기 인덱스 추가하기 성능 측정해보기

[실습] 좋아요 많은 순으로 게시글 조회하는 SQL문 튜닝하기
MySQL

[실습] 좋아요 많은 순으로 게시글 조회하는 SQL문 튜닝하기

✅ 좋아요 많은 순으로 게시글 조회하기 기본 테이블 셋팅 더미 데이터 추가 성능 개선해야 할 SQL문 실행 계획 조회해보기 성능 개선 성능 개선 후 실행 계획

[실습] ORDER BY문이 사용된 SQL문 튜닝하기
MySQL

[실습] ORDER BY문이 사용된 SQL문 튜닝하기

✅ 예시 테이블 생성 100만 건의 랜덤 데이터 삽입 데이터 조회해서 성능 측정하기 실행 계획 조회해보기 성능 개선을 위한 인덱스 추가 성능 측정 [이것만은 꼭 기억해두자!] - ORDER BY는 시간이 오래걸리는 작업이므로 최대한 피해주는 것이 좋다

SQL문의 ‘실행 계획’ 사용해보기 (EXPLAIN)
MySQL

SQL문의 ‘실행 계획’ 사용해보기 (EXPLAIN)

✅ ’실행 계획’이란 ? 옵티마이저가 SQL문을 어떤 방식으로 어떻게 처리할 지를 계획한 걸 의미한다. 이 실행 계획을 보고 비효율적으로 처리하는 방식이 있는 지 점검하고, 비효율적인 부분이 있다면 더 효율적인 방법으로 SQL문을 실행하게끔 튜닝을 하

[실습] WHERE문에 인덱스를 걸기 vs ORDER BY문에 인덱스를 걸기
MySQL

[실습] WHERE문에 인덱스를 걸기 vs ORDER BY문에 인덱스를 걸기

✅ WHERE문에 인덱스를 걸기 vs ORDER BY문에 인덱스를 걸기 절대적인 건 없다. 실행 계획과 SQL 실행 시간을 보면서 어떻게 인덱스를 거는 게 나은지 찾아가는 게 정확하다. 한 번 예시를 보고 판단해보자. 테이블 생성 100만 건의 랜덤

멀티 컬럼 인덱스 (Mulitple-Column Index)란?
MySQL

멀티 컬럼 인덱스 (Mulitple-Column Index)란?

✅ 멀티 컬럼 인덱스란? 멀티 컬럼 인덱스란, 2개 이상의 컬럼을 묶어서 설정하는 인덱스를 뜻한다. 즉, 데이터를 빨리 찾기 위해 2개 이상의 컬럼을 기준으로 미리 정렬해놓은 표이다. ✅ 예시를 통해 멀티 컬럼 인덱스 의미를 직관적으로 이해해보자. 아

[실습] 한 번에 너무 많은 데이터를 조회하는 SQL문 튜닝하기
MySQL

[실습] 한 번에 너무 많은 데이터를 조회하는 SQL문 튜닝하기

✅ 예시 테이블 생성 100만 건의 랜덤 데이터 삽입 데이터 조회해보기 ✅ 조회 결과 데이터의 개수 줄이기 실제 페이스북, 인스타그램의 서비스를 보더라도 한 번에 모든 게시글의 데이터를 불러오지 않는다. 스크롤을 내리면서 필요한 데이터를 그때그때 로딩

[실습] HAVING문이 사용된 SQL문 튜닝하기
MySQL

[실습] HAVING문이 사용된 SQL문 튜닝하기

✅ 예시 테이블 생성 100만 건의 랜덤 데이터 삽입 인덱스 생성하기 데이터 조회해서 성능 측정하기 실행 계획 조회해보기 성능 개선하기 실행 계획 조회해보기 [이것만은 꼭 기억해두자!] - HAVING문 대신에 WHERE문을 쓸 수 있는 지 체크해보자

박재성 선생님 블로그 글 (42쪽) | JSCODE