본문 바로가기
서버인프라/데이터베이스

한 가지 트릭으로 MariaDB를 30배 더 빠르게 만들 수 있습니다!

by techwold ted 2022. 10. 31.

MariaDB 커뮤니티에 너무도 자극적인 글 하나가 올라왔습니다.

 

 작가 앤드류 허칭스

네, 약간의 클릭 미끼 제목이지만 이 경우 하나의 SQL 명령을 실행하면 커뮤니티 사용자의 성능이 그만큼 향상되었습니다. 도움이 될 수도 있습니다. 

약간 미끼를 투척했다고 직접 얘기 했고 내용은 이러했습니다.

 

사용자가 관련된 모든 테이블에서 이 명령을 실행하도록 제안했습니다.

ANALYZE TABLE tbl PERSISTENT FOR ALL;

일단 사용자가 이것을 하면 그들은 그것에 의해 날아갔습니다. 쿼리가 갑자기 실행 시간이 0.05초로 줄었습니다.

이것이 효과가 있었던 이유

속도가 느린 이유는 옵티마이저가 데이터 자체에 대해 아무것도 몰랐기 때문입니다. 데이터의 확산에 대한 가정을 해야 했으며 불행히도 이러한 가정은 정확하지 않았습니다.

"ANALYZE TABLE" 명령은 데이터에 대한 히스토그램을 생성하고 저장합니다. 이를 통해 옵티마이저는 인덱스 값의 빈도를 더 잘 추정할 수 있으므로 조인 순서와 필터링에 대해 더 나은 결정을 내릴 수 있습니다.

이에 대한 자세한 내용 은 주제에 대한 MariaDB Server Fest 2021 녹화 를 시청할 수 있습니다 . 

도움이 되는 방법을 설명하는 기술 자료 문서 와 "ANALYZE TABLE" 명령 사용법을 설명하는 다른 문서 도 있습니다 .

 

아래 에서 "ANALYZE TABLE" 내용을 꼭 확인해 보시기 바랍니다. 누군가에게 유용할것 같아 퍼왔습니다.

 

https://mariadb.com/kb/en/engine-independent-table-statistics/

'서버인프라 > 데이터베이스' 카테고리의 다른 글

Mysql 과 Mariadb dump 복구 성능 테스트  (0) 2022.11.27
Index는 얼마나 Query성능을 향상 시킬까???  (2) 2022.11.25
MariaDB update  (1) 2022.10.30
lock tables 오류  (0) 2022.10.27
MariaDB dump Backup  (0) 2022.10.27

댓글