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

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

먼저 경험한 수강생들의 후기

먼저 경험한 수강생들의 후기

4.2

5.0

유쾌한 캥거루

92% 수강 후 작성

기본적인 개념보다는 좀 더 쿼리를 작성하는데에 있어서 주의해야하는 부분들에 대해서 집중적으로 알려주는 좋은 강의라고 생각을 합니다. 이 강의에서 쿼리에 대해서 배워가시기 보다는 성능 개선이나 튜닝 개선을 많이 배워 갈 수 있다는 생각이 들었습니다. 사실 쿼리에 대해서는 일반적으로 ChatGPT를 통해서도 개발이 가능하다고 생각을 하기 떄문에 이런 이론에 집중된 강의가 더 만족스럽게 다가왔습니ㅣ다.

5.0

gy.lyu

31% 수강 후 작성

업무에 큰도움이 될것 같습니다.

5.0

멀머

100% 수강 후 작성

강의를 듣기전 강의 목차에 나오는 키워드로 개념공부는 한번씩 하고 들으면 더 좋을것 같아요. 개념에 대한 자세한 강의 보다는 쿼리 작성시 좀더 주의 해야하는 부분, 강사님의 경험에서 나오는 조언등이 더 주가 되는 강의 입니다.

수강 후 이런걸 얻을 수 있어요

  • 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입니다.

3,833

수강생

192

수강평

88

답변

4.4

강의 평점

15

강의

자기 소개

비전공자 출신으로 판교에서 플랫폼 서버 개발을 담당하여 진행하고 있습니다.

서버 최적화와 다양한 쿼리 튜닝을 좋아하고 간단한 기능들을 여러분들에게 쉽고 빠르게 알려드리고자 노력하고 있습니다.

 

경력

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

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

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

[] 판교 모회사 서버 개발자

더보기

커리큘럼

전체

13개 ∙ (2시간 6분)

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

수강평

전체

30개

4.2

30개의 수강평

  • 멀머님의 프로필 이미지
    멀머

    수강평 27

    평균 평점 5.0

    5

    100% 수강 후 작성

    강의를 듣기전 강의 목차에 나오는 키워드로 개념공부는 한번씩 하고 들으면 더 좋을것 같아요. 개념에 대한 자세한 강의 보다는 쿼리 작성시 좀더 주의 해야하는 부분, 강사님의 경험에서 나오는 조언등이 더 주가 되는 강의 입니다.

    • July
      지식공유자

      좋은 수강 평 감사합니다. 이 강의는 제가 실무에서 직접 경험하고 적용한 부분입니다. 제가 개인적으로 이론을 좋아하지 않아요 결국 구현을 하는것이 개발자의 역할이기 때문이죠. 그래서 그냥 직접 경험을 어떻게했고 구현했다를 보여드리고 싶었습니다!! 많은 도움이 되셨으면 좋겠습니다 감사합니다!!

  • 이찬형님의 프로필 이미지
    이찬형

    수강평 7

    평균 평점 5.0

    5

    100% 수강 후 작성

    좋은 강의 감사합니다. 기본적인 개념보다는 Query 작성에 주의해야하는 부분, 성능 개선을 해야하기 위해서 신경써야 하는 부분 등 실무에서 활용하기 너무 좋은 내용들로 채워져있어서 생각하는 폭이 넓어졌다고 느끼게 되었습니다.

    • July
      지식공유자

      강의 자체가 MySQL에서 쿼리를 작성하는 부분을 중점으로 다루었습니다. 데이터가 많아질수록 이러한 부분을 간과하여 문제 해결을 못하는 케이스가 많이 발생하더라구요.. ㅠㅠ 제 강의를 통해서 좀 더 DB에 대한 흥미를 느끼고 학습 하실 수 있는 계기가 되었기를 바라겠습니다. 감사합니다!

  • gy.lyu님의 프로필 이미지
    gy.lyu

    수강평 10

    평균 평점 5.0

    5

    31% 수강 후 작성

    업무에 큰도움이 될것 같습니다.

    • July
      지식공유자

      많은 도움이 되었다고 하시니 뿌듯합니다. 들어주셔서 감사합니다 :)

  • 유쾌한 캥거루님의 프로필 이미지
    유쾌한 캥거루

    수강평 14

    평균 평점 4.9

    5

    92% 수강 후 작성

    기본적인 개념보다는 좀 더 쿼리를 작성하는데에 있어서 주의해야하는 부분들에 대해서 집중적으로 알려주는 좋은 강의라고 생각을 합니다. 이 강의에서 쿼리에 대해서 배워가시기 보다는 성능 개선이나 튜닝 개선을 많이 배워 갈 수 있다는 생각이 들었습니다. 사실 쿼리에 대해서는 일반적으로 ChatGPT를 통해서도 개발이 가능하다고 생각을 하기 떄문에 이런 이론에 집중된 강의가 더 만족스럽게 다가왔습니ㅣ다.

    • July
      지식공유자

      많은 분들이 MySQL을 사용하시고 제가 다루었던 방식에 대해서 공유드리고 싶었습니다. 남겨주신 내용처럼 사실 쿼리에 대해서는 저보다 AI가 더 정확할꺼 같아요 ㅎㅎ 그래서 쿼리보다는 이론이나 최적화하는 부분에 대해서 다루어보았습니다. 좋은 평 해주셔서 감사합니다.😁

  • dkwwqz님의 프로필 이미지
    dkwwqz

    수강평 4

    평균 평점 3.3

    2

    69% 수강 후 작성

    개인적으로 목차를 보고 기대했었는데 정의같은건 말로 설명하시고 디비 클라이언트를 통해 가볍게 넘어가기만하시더라군요 개인적인 부분이라 스타일의 차이일수도 있지만 이론부분은 피피티로 준비하시고 설명하신다음 이후 클라이언트에서 준비된 쿼리들을 해보셨으면 어땠을까싶었습니다. 폰트크기가 작아서 긴 쿼리나 명령어를 쓰시나했는데 그런건 아니고 좀 아쉬움이 많이 남는 강의였습니다. 강의 잘봤습니다. 감사합니다.

    • July
      지식공유자

      아무래도 제 강의 특성이 먼가 이론적인 부분은 PPT로 준비하기보다는 그냥 구두로 전달드리고 직접 코드 작업하는것이 중점이다 보니 아쉬운 부분들이 있으셨던거 같습니다 ㅠㅠ 앞으로 좀 더 신중하고 좋은 환경을 제공하며 강의 들을 실 수 있게 노력하겠습니다. 좋은 평 남겨주셔서 감사합니다!!

July님의 다른 강의

지식공유자님의 다른 강의를 만나보세요!

비슷한 강의

같은 분야의 다른 강의를 만나보세요!

지식공유자의 깜짝할인 중 (1일 남음)

₩29,700

22%

₩38,500