본문 바로가기

Tools

[Firebase] Firestore(NoSQL) 설계

DB 테이블끼리 관계를 정의할 수 있는 형태를

관계형 DB라고 알고 있다.

그리고 이에 해당하지 않는 나머지 DB 타입을 NoSQL 이라고 한다.

 

그 중 Firestore 는 <Document Key,Value store> 를 이용한다.

잘 보면 Collection이라고 하는 Document집합이 있고,

그 아래로 Document라고 하는 <String, Object> 타입의 json 문서가 있다.

 

그런데, 문서 안에 "+컬렉션시작" 이라는 문구가 보인다.

그렇다, 문서도 하위 컬렉션을 가질 수 있고 그 아래로 하위 문서들이 생길 수 있다.

Tree가 생각나는 '깊이'있는 구조이고, 도식화해보면 <그림2> 와 같다.

<그림1>
<그림2>

Collection 이란 json Document 의 집합이며,

Document 는 객체 필드와 함께 하위 Collection을 가졌으므로

이렇게 깊게 만들어나갈 수 있다는 점을 표현하였다.