소개
카카오에서 DBA로 경력을 시작해 밸런스히어로를 거쳐 현재는 당근마켓 DB팀에서 근무하고 있습니다.
데이터 모델링, 쿼리 튜닝, DB 서버 성능 최적화 등 DBMS 운영과 관련된 로우 레벨부터 하이 레벨까지의 모든 업무를 수행해왔습니다.
MySQL, MariaDB, MongoDB와 같은 다양한 DBMS를 전문적으로 운영해왔으며,
저서로는 ⟪Real MySQL 8.0 개정판⟫을 집필했습니다.
강의
전체2로드맵
전체1수강평
- 잘 듣겠습니다!
yhwjd
2024.06.09
1
게시글
질문&답변
2024.07.01
lateral table 질문입니다.
안녕하세요. 답변이 늦었습니다. MySQL에서 Lateral Derived Table이 사용되는 빈도는 상황에 따라 다를 것 같은데요. 제 개인적인 경험상 아주 빈번하게 사용되는 형태라고는 볼 수 없지만, 누구나 한 번쯤은 사용하게 되는 형태라고 생각됩니다. 경우에 따라 적절하게 사용하면 쿼리의 성능을 높일 수 있기 때문에 굉장히 유용한 기능이기도 하구요. 그리고 두 번째로 질문 주신 내용은 하나의 항목을 반환하는 상관 서브 쿼리와 Lateral Join 형태를 말씀해 주신 것 같은데요. 상관 서브 쿼리는 서브 쿼리가 독립적인 쿼리로써 반복 처리되는 반면, Lateral Join은 하나의 쿼리 처리 과정으로 통합되어 처리되므로 좀 더 효율적이라고 볼 수 있습니다. 이 부분은 테스트 환경을 만들어 각 쿼리의 실행 시간을 비교해 보셔도 좋을 것 같습니다. 강의 열심히 들어주셔서 감사드리고, 추가로 궁금한 부분 있으시면 말씀해주세요. 🙂
- 0
- 2
- 75
질문&답변
2024.06.24
에피소드 17번에서 skip locked 질문이 있습니다.
안녕하세요! 말씀해주신 부분은 마치 큐와 같이 DB 테이블에 처리해야될 데이터들을 저장해두고, 배치 프로그램들에서 하나씩 데이터를 읽어들여서 작업하는 형태를 생각해서 해당 내용을 언급했습니다. 강의 열심히 들어주셔서 감사드리고, 혹시 추가로 더 궁금한 부분이 있으면 말씀해주세요. 🙂
- 0
- 1
- 59
질문&답변
2024.06.19
RATERAL 사용할 때 마지막에 ON TRUE 가 있는 것도 있고 없는 것도 있는데 차이가 어떤 것인가요?
안녕하세요! 보통 테이블 조인 시 ON 절에 조인 조건을 명시하곤 하는데요. Lateral을 사용해 테이블을 조인하는 경우 대부분 서브 쿼리 절 내에서 선행 테이블 컬럼을 참조하는 형태로 사용하므로 ON 절이 필요하진 않습니다. 그렇지만 MySQL에서 LEFT JOIN 등과 같은 경우에는 문법 상 ON 절을 반드시 명시해야 되기때문에 (명시하지 않으면 쿼리 에러 발생) ON TRUE 라는 조건을 넣어준거라고 보시면 됩니다. 항상 조인을 수행하겠다는 의미입니다. 그리고 INNER JOIN의 경우에는 ON 절이 선택사항이다보니 ON TRUE 를 명시하지 않아도 쿼리 실행이 가능합니다. 그래서 ON TRUE 가 없는 경우는 문법 상 쿼리 실행하는데 문제가 없고, 특별히 해당 부분이 필요하지 않기때문에 명시돼있지 않은거라고 봐주시면 될 것 같아요! 감사합니다.
- 0
- 1
- 83
질문&답변
2024.06.10
Real MySQL 시즌 1 - Part 1 or Part2 영상에 나오는 자료 공유 가능하나요?
안녕하세요! 강의 수강해 주셔서 감사드립니다. 🙂 발표 자료 자체는 별도의 저작권 이슈가 있어서, 안타깝게도 외부 공유가 어려운 점 너그러이 양해 부탁드립니다. 나중에 다시 검토 후 가능하다면 말씀드리도록 하겠습니다. 감사합니다.
- 0
- 1
- 137