인프런 커뮤니티 질문&답변
안녕하세요 강사님 데이터베이스 선택 질문있습니다!!
해결된 질문
작성
·
60
1
강사님 강의 재밌게 너무 잘 보고있습니다!!!
클로드 코드에 대해서도 사용해보니까.. 재밌어요
PostgreSQL을 왜 선택하고 특징, 장점까지 잘 보았습니다.
하지만 MySQL에 유리한 프로젝트는 무엇인지 궁금합니다.
PostgreSQL선택한 이유중에 부분 인덱스 지원해주고 JSON을 효율적으로 저장할 수 있는 타입인 JSONB도 지원해주고 커뮤니티도 풍부하고 READ COMMITTED - 높은 읽기 성능을 제공해주는것으로 MySQL보다 전부 뛰어나다고 생각이듭니다.
MySQL과 차이점은 MySQL은 Reapeatable Read로 정합성을 챙기고 MVCC덕분에 높은 읽기 성능을 가지고 있는걸로 알고있습니다.
그 외에 MySQL의 장점과 유리한 프로젝트들 예시를 좀 조언을 얻고싶습니다
답변 2
1
1
안녕하세요 정인호님!
재밌게 듣고계시다니 감사합니다!!
개발자의 경험에 따라 다르겠지만, MySQL는 대체적으로 운영 예측성과 안정성이 높습니다. 예를 들어 PostgreSQL은 데이터를 수정하면 새 버전을 테이블에 쓰고, 이전 버전은 같은 테이블 안에 남아 있다가 VACUUM으로 정리됩니다. 그래서 관리가 잘 안 되면 테이블이 커지고 성능에 영향을 줄 수 있습니다. 반면 MySQL(InnoDB)은 이전 버전을 Undo Log에 따로 저장하고 자동으로 정리하기 때문에, 테이블 크기와 성능이 비교적 안정적으로 유지됩니다. 따라서 수정작업이 많은 경우 관리 난이도가 달라질 수 있습니다.
또한 MySQL 복제본을 구성할 때, binlog 기반 복제구조가 직관적이어서 장애 상황에서도 원인 파악과 복구 절차가 명확한 편입니다. 따라서 DBA 리소스가 제한된 팀이나, 운영 자동화가 충분히 갖춰지지 않은 환경에서도 안정적으로 운용하기 조금 더 쉽지 않을까 생각합니다.
위 장점 덕분에 MySQL은 대규모 트래픽을 처리하는 전형적인 웹 서비스에 특히 잘 맞습니다. 예를 들어 커머스 서비스의 주문, 결제, 재고 관리처럼 쓰기(수정) 트랜잭션이 빈번하게 발생하는 영역, 콘텐츠 서비스처럼 읽기부하가 커서 복제 기반으로 읽기를 수평 확장해야 하는데 DB 인적자원이 부족한 팀에서 강점을 보입니다. 실제로 많은 글로벌 커머스·콘텐츠 플랫폼들이 핵심 OLTP DB로 MySQL을 선택해 왔고, 이 과정에서 축적된 운영 사례와 패턴도 풍부합니다.
추가로.. MySQL, PostgreSQL 은 버전이 올라갈수록 대용량 처리같은 요구사항에 맞게 새로운 기능이 추가되거나 기존 단점이 개선되어가고 있기 때문에 서로 닮아가는 부분도 있고 점차 비슷해는 부분이 많아지지 않을까 생각이 듭니다. 그래서 우리팀은 어떤 DB 경험이 많고 익숙한지 여부가 RDB 를 고르는데 중요한 기준이지 않을까 싶습니다.
좋은 질문 감사합니다.





감사합니다, 인호님!
덕분에 강의를 만드는 데 큰 힘이 됩니다.
앞으로 더 좋은 콘텐츠로 보답드리겠습니다. 감사합니다!