Firebase는 Realtime Database와 Firestore Database 두 가지 데이터베이스를 제공하고 있다. 둘 다 NoSQL이고, 실시간 및 오프라인 지원을 하지만 두 가지 데이터베이스가 차이점이 있다.
우선, Firebase는 NoSQL 기반이고, NoSQL은 Document 기반의 데이터베이스이다. 그런데 Realtime의 경우, 단순 JSON 트리 형식의 구조를 가지고, Firestore는 컬렉션 형식의 구조를 가지고 있다. 그래서 Realtime은 RestAPI 형태로 데이터를 가져올 수 있고, Firestore는 좀 더 심화된 쿼리와 트랜잭션 기능 사용이 가능하다.
오늘은 Realtime Database에 한번에 데이터를 올리는 방식을 알아보겠다.
1. CSV to JSON
아까 말했듯 Realtime Database는 JSON 형태로 데이터가 저장 되기 때문에 CSV파일을 JSON형태로 변환하는 작업이 필요하다.
매우 간단하다.
아래 사이트에서 자동 변환이 가능하다.
2. Firebase 프로젝트 생성 (아래의 프로젝트 추가 눌러서 생성하면 된다.)
뒤에 몇가지 과정이 있는데 그냥 프로젝트 이름 입력하고 시키는 대로 확인 눌러주면 된다.
3. Realtime Database 생성
-1. 왼쪽 메뉴바에서 Realtime Database 선택하고, 데이터베이스 만들기 클릭
-2. 설정이 나오는데, 보안규칙을 지금 만들어주지 않을거면 테스트 모드로 만들기 선택하면 된다.
-3. 그러면 아래와 같은 화면이 나오는데, 오른쪽의 점세개 케밥메뉴 선택해주고, JSON 가져오기 선택.
-4. 아까 변환한 JSON 파일 가져온다.
(팁 : 아래 사진을 보면 데이터 위치가 /으로 되어있는데, 기본 위치보다는 하위단계에 생성하는 거 추천한다. 방법은 -5번을 참조)
-5. 팁: 링크 같이 생긴 곳을 누르면 수정할 수 있는데 여기에 그냥 이름 하나를 입력하면 하위 항목이 생성된다. 두번째 사진을 보면 d1이 내가 만든 것인데 여기에서 json import 하는 것을 추천한다.