[멘토링] NoSQL에서 "no"의 해석, 가상환경과 DBWeb_Backend/DB2024. 5. 16. 02:33
Table of Contents
해당 게시글은 (케인)멘토님께 멘토링 세션을 통해 주고받은 질의응답의 내용을 정리한 글 입니다.
😲 Q1. NoSQL에서 no의 해석에서는 의견이 갈린다고 들었습니다. 멘토님께서는 NoSQL에서 no를 어떻게 해석하시나요?
- no
- not only
- non-relational operational
- non-relational database
👨🎓 A1. no는 not only의 NO라고 봅니다.
SQL이 DB에서 우선순위가 높은 선택지였을때 나온것이 noSQL이라 불리우는 범주의 DB였기 때문입니다.
즉, RDB만으로는 해결하기 어려운 문제가 점차 가속되던 상태에서 나온것이 noSQL입니다.(데이터가 늘어나는데 RDB에서는 그를 따라갈만한 RDB 퍼포먼스가 잘 나오지 않았고, DB가 못견뎌서 램을 도배하던가 등등의 대처를 하던 당시에 나온것이 noSQL입니다.)
😲 Q1-1. 한국에서는 not-only로 해석하는 경우가 주류라고 들었는데, 만약 not-only로 해석한다면, SQL은 NoSQL의 하위집합인걸까요…?
👨🎓 A1-1. NoSQL은 DB하면 SQL만을 사용하던 시기에 사용하던 명칭이며, 실제론 하나의 DB종류라고 보기에는 어려운 다양한 종류의 DB를 포괄적으로 지칭하는 용어입니다.
😲 Q1-2. 더불어서 멘토님께서는 현업에서 어떤 형태의 DB를 사용하시는지, 보통 어떠한 때에 NoSQL을 사용하시고, 어떠한 때에 RDBMS를 사용하시는지 궁금합니다…!
👨🎓 A1-2. 개인적으로는 noSQL도 document 단위 트랜잭션을 지원하기때문에 noSQL을 선호하는 편이며, RDBMS를 선호하지 않습니다. 하지만 협업을 하기위해서는 여러 팀원들의 불안감을 모두 설득하는 것이 어려워 RDB를 주로 사용합니다.
그럼에도 불구하고 RDB의 트랜잭션은 정합성을 담보로 성능을 내어주는 선택이라 생각하기 때문에, 혼자 진행하는 프로젝트라면 no sql을 주로 사용합니다.
😲 Q2. 쿠버네티스나 Docker 와같은 가상환경에서 DB운영을 하는것은 DB의 본질과 맞지 않다는 이야기를 들었습니다.
로그를 가상환경 바깥으로 빼낸다던가, 혹은 백업을 가상환경 바깥으로 빼낸다는 전제하에 사용하는것도 좋지 않은 것일까요?
👨🎓 A1. 큰기업에서는 선호하지 않는 방법이라고 알고있습다. infra as code라고 코드를 통해 인프라 환경을 구성한다는것은 실수를 만들기 쉽기 때문입니다.
DB성능을 온전히 낼 수 없다는 한계점도 있습니다. 하지만 비용적인 면에서의 유리함이 놓칠 수 없는 부분이기에 스타트업에서는 많이들 도전하고있는것으로 알고 있습니다.
오늘 멘토링과 관련해서 생각/공부해봐야 할 주제 🤔
- 가상 환경에서 DB성능을 온전히 낼 수 없다는것은 무슨 의미일까?
'Web_Backend > DB' 카테고리의 다른 글
@Yanako :: Yana's coding story였는데요, 우당탕탕 개발일지가 맞는것같
야나의 코딩 일기장 :) #코딩블로그 #기술블로그 #코딩 #조금씩,꾸준히
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!