개발자
안녕하세요, 기존에 Back-end 엔지니어로써 RDBMS가 무엇이고 SQL Query 날리는 정도로 사용을 해왔는데 더 크고 나은 설계를 위해서 깊게 공부를 해보려고 합니다. 어떤 것을 해도 기본 개념은 비슷할 수 있지만 DB 엔진, Index 설계, 버퍼 풀 설정, 옵티마이저 등 깊게 하다보면 제품에 따라 다를 거 같아 제품의 선정이 중요하다고 생각됩니다. back-end Application을 위해서 Java+Spring이 가성비가 좋은 것 처럼 RDBMS도 output이 도움이 되는 제품이 있을 것이라고 생각됩니다. 제가 후보로 선정한 것은 아래와 같은데 - Mysql: 근본? 근데 MariaDB가 나와서 뭘로 할지 고민입니다... - MariaDB: Mysql FORK 라고 하긴 하지만 따로 문서와 책도 있고 하니 Mysql과 비교해서 어떤 것을 중점으로 해야하는지 고민 - PostgreSQL: 오픈소스 진형이고 요즘 많이 쓰고 있다고 하길래 미래지향적이라고 생각 의견 주시면 감사하겠습니다! P.S. 오라클 DB는 유료이기도 하고 금융 업계 혹은 DBA가 아니면 건드릴 일이 있나 싶어서 제외하긴 했습니다.
답변 2
셋중에 아무거나 하나를 잡고 깊게 파시면 다른 데이터베이스들도 쉽게 사용하실 수 있을거에요. 저는 MySQL로 처음 시작했고, 요즘엔 Postgres로 작업 중인데 SHOW TABLES가 \dt가 되는 등의 명령어 차이 외에는 크게 어려움을 느끼지 못했습니다. 다른분들 의견도 궁금하네요
익명
작성자
2023년 12월 12일
의견 감사힙니다! 요즘에는 어떤 이유로 Postgres으로 작업하시는지 들어볼 수 있을까요?
강병진
GS 52g Studio 개발자 • 2023년 12월 12일
가장 큰 이유는 이직한 팀의 컨벤션이기 때문인데요, postgres를 선택한 이유는 검색기능을 구현하는데 MySQL보다 더 유리했기 때문이라고 들었습니다
좋은 접근입니다. 백엔드 개발자로서 RDB에 대한 이해는 정말 중요하니까요. 아마 MySQL이나 MariaDB로 시작하는 것을 많이 추천 받으실텐데요. 참고할 수 있는 자료가 상대적으로 많고, PostgreSQL이 많이 치고 올라왔지만 여전히 MySQL을 더 많이 사용하기 때문에 그럴 겁니다. 이런 부분은 아마 질문하실 때 이미 파악하신 듯 합니다. ㅎㅎ 다만, RDBMS에 종속되는 지식이 있고, RDB이기 때문에 공통이 되는 지식이 있습니다. MySQL을 선택하셨다면 MySQL에서 제공하는 물리적인 특성들과 고유의 함수와 문제를 해결하는 패턴을 익히실텐데요. 하지만 RDB를 설계하는 원칙은 거의 다르지 않습니다. 이 부분의 공부도 함께 병행하시면 좋을 것 같아요. 백엔드에서 RDBMS가 종종 성능 병목이 되는데.. 이것도 원인을 찾아 들어가면 애초에 설계 결함 때문인 경우가 많기 때문입니다. 말씀하신대로 깊이 있는 공부가 되시길 바랍니다.
지금 가입하면 모든 질문의 답변을 볼 수 있어요!
현직자들의 명쾌한 답변을 얻을 수 있어요.
이미 회원이신가요?
지금 가입하면 모든 질문의 답변을 볼 수 있어요!