NoSQL이 필요한 경우

NoSQL이 필요한 경우

저는 Node.js 백엔드 개발이나 데이터쪽으로 취업을 생각 중인데요.

Node.js 개발자 취업 공고를 보면 NoSQL 경험이 필요한 곳들이 많더라구요.

그래서 간단하게 게시판 만들기를 해보면서 NoSQL을 이용해보려고 하는데 그 전에 NoSQL에 대해 공부해보려고 합니다!

https://youtu.be/Q_9cFgzZr8Q

아래 내용은 위 영상을 보고 정리한 내용입니다.

[NoSQL의 정의]

- Not Only SQL 혹은 Not SQl을 뜻함

- NoSQL을 한 가지의 DB만을 뜻하지 않음 => 한국음식과 No한국음식과 같은 개념

- SQL의 MySQL, PostgreSQL, SQLite는 다른 듯 같지만, NoSQL은 그냥 다 다른 것들임

[NoSQL의 종류]

NoSQL의 종류는 매우 많지만 영상에서는 크게 세가지만 소개

1. Document DB

- mongoDB가 이거

- json 형태로 어떤 종류, 어떤 모양의 데이터 저장 => 와아우...!

2. Key Value DB

- CassandraDB, DynamoDB가 여기 속함

- cassandraDB는 매우 빠르게 데이터를 읽고 쓸 수 있음, 유튜브, 넷플릭스, 인스타그램, 우버이 사용

- dynamoDB 아마존이 만든 것, 이것도 매우 빠르게 읽고 씀

- 데이터 저장 전 DB에서 무엇을 얻을 것인지 미리 생각해야 함, 데이터를 꺼냈을 때도 어떻게 써야할지 고민해야 함

- sql 쿼리문을 쓸 수 없기 때문에 어떻게 얻을 것인지도 생각해야 함

3. GraphDB

- 컬럼이나 도큐먼트가 필요 없을 때, 각 노드 사이의 관계를 알아야 할 때 => 페이스북이 사용

- 페이스북이 만든 DB tao가 이것

[결론, 언제 NoSQL을 사용해야 할까]

- 그냥 평범한 프로젝트, 화려하지 않은 평범한 프로젝트다 => SQL

- 특정한 이슈에 대응하기 위해 위에 말한 특징들이 필요한 경우 => NoSQL

결론은 저는 게시판 프로젝트를 할 거니까 NoSQL을 쓸 필요는 없지만!!!!! 그래도 그래도 쓸 거에요...!

from http://juyeonee826.tistory.com/59 by ccl(A) rewrite - 2021-08-03 22:26:40