BEST
개발 · 프로그래밍

/

백엔드

200억건의 데이터를 MySQL로 마이그레이션 할 때 고려했던 개념과 튜닝 방법

기존 MongoDB를 통해 관리하는 200억건의 데이터를 MySQL로 이전을 하면서 고려했던 개념들에 대해서 다루었습니다.

(4.5) 수강평 12개

수강생 291명

Thumbnail

초급자를 위해 준비한
[백엔드, 데이터베이스] 강의입니다.

이런 걸
배워요!

  • MySQL 사용시에 주의 해야 할 점

  • MySQL의 쿼리 작성

  • MySQL의 다양한 제약 조건

  • MySQL의 Lock

200억건의 데이터를 어떻게 마이그레이션 할까요?? 🤔

저는 최근 실무에서 MongoDB에 있는 200억건의 데이터를 MySQL로 마이그레이션을 진행을 하였고 이로인해 비용 절감 및 정규화를 달성하였습니다.

결론부터 말씀드리자면 정답은 없습니다. 제가 올바르게 진행이 되었는지 더 최적화가 가능한지 유무를 알 수 없기 떄문이죠.

하지만 정상적으로 무중단으로 서비스를 배포 하였고 이러한 과정에서 최적화를 위해 고려했던 부분과 주의했던 부분을 공유드리고 싶습니다.

이 강의를 통해서 여러분들은 DB에 대한 매력과 백엔드 개발자의 고민에 대해서 알아가셨으면 좋겠습니다.

이 강의의 특징

📌 100% 제가 경험했던 부분을 주제로 삼고 있어요.

📌 제가 경험했던 부분에 추가적으로 제가 알려드리고 싶은 부분을 포함하고 있어요.

📌 개인적인 설명이 부족한 부분에 대해서는 제가 따로 알아보고 알려드려요.

📌 실제 실무에서 있었던 경험을 알려드려요.

이런 분들께 추천해요

백엔드 개발자

DB그냥 쿼리만 작성하면 되는거 아닌가요??

DB 엔지니어
이런것들을 알려주고 공유하고 싶어요.

취업 준비생
개발자로 취업을 준비해야하는데 RDB가 궁금해요.

강의에서는 이런 내용을 다루고 있어요. 🤔

  1. Multi-Column Index [ 복합 인덱스 ]

  2. Explain Query [ 쿼리 분석 ]

  3. Covering Index [ 인덱스 최적화 ]

  4. RDB vs ElasticSearch [ 색인과 역색인 ]

  5. ORDER BY [ 정렬 최적화 ]

  6. INSERT [ 삽입 최적화 ]

  7. AUTO_INCREMENT LOCK [ AUTO_INCREMENT Lock ]

  8. Index Dive [ 쿼리 계획 수립 최적화 ]

  9. Prefix Index [ 인덱스 경량화 ]

  10. MySQL Lock [ MySQL의 정합성과 동시성 ]

  11. DeadLock [ 케이스 분석을 통한 DeadLock 이해 ]

  12. No OFFSET [ 쿼리 튜닝 ]

  13. Skip Locked [ Session 관리 ]

이 강의를 만든 사람

스타트업부터 메타버스 및 플랫폼 서비스 개발까지 다양한 경험을 하였고 최근까지 200억건의 MongoDB데이터를 다루던 서비스를 MySQL로 이전하였고 이제는 200억건의 MySQL 데이터를 다루는 플랫폼 서버 개발자

수강 전 참고 사항

실습 환경

  • 강의는 MacOS 기준으로 설명합니다. MySQL Workbench를 사용하니 설치 해주시면 됩니다.


참고하면 좋은 강의 💁


해당 강의는 기본적으로 MySQL에 집중을 하고 있습니다.

하지만 제가 경험했던 모든 회사들은 하나의 DB를 사용하는 경우는 없습니다.

  • 물론 스타트업의 경우에는 하나의 DB로 구성이 됩니다.


상황이나 레거시 및 환경에 맞춰서 다양한 DB를 선정하여 활용을 하고 있습니다.

그러니 MySQL만으로는 부족하실 수 있다고 생각을 합니다.


만약 NoSQL의 대표주자인 MongoDB에 대해서 궁금하신 분들은 아래에 있는 강의를 참고하시면 많은 도움이 되실 겁니다.

이런 분들께
추천드려요!

학습 대상은
누구일까요?

  • DB를 처음 하시는 분

  • 대용량 데이터 설계가 궁금하신 분

  • MySQL의 기본적인 개념이 궁금하신 분

안녕하세요
July입니다.

자기 소개

비전공자 출신으로 대학교 4학년에 갑자기 개발에 흥미가 생겨 혼자서 삽질을 진행하며 개발을 진행했던 서버 개발자...

Mongo Korea, Oracle등등 다양한 기업에서 세션을 진행한 경험이 있으며 이를 토대로

대용량 데이터와 트래픽을 직접 튜닝한 이력과 경험을 기반으로 강의를 촬영하고 이를 통해 수강생 분들이 좀 더 개발에 재미를 느끼게 하고싶은 지식공유자.

 

경력

[前] 샌드박스 블록체인 개발자

[前] 넥슨 자회사 백엔드 개발자

[前] 판교 대기업 플랫폼 서버 개발자

[] 판교 중견기업 모회사 서버 개발자

- 개인적인 사정 및 회사 사정으로 경력 사항의 상세한 부분은 변경 및 수정되었습니다.

커리큘럼

전체

13개 ∙ (2시간 6분)

  • Multi Column Index 개념

    07:35

강의 게시일: 
마지막 업데이트일: 

수강평

아직 충분한 평가를 받지 못한 강의입니다.
모두에게 도움이 되는 수강평의 주인공이 되어주세요!