Firebase RealtimeDatabase에 대량 데이터 투입 - 그 1 -
경위
투고가 꽤 오랜만이 되어 버렸다. 팀이 바뀌거나 담당 제품이 바뀌거나 완전히 팀도 재작성 상태가 되어 버렸다. 개인적으로는 팀을 어느 정도 고정해 팀에 대해 일을 할당하는 편이 효율적이고 인크리멘탈인 팀을 만드는데 있어서 효과적인 생각이 든다. 평가도 팀에 대해 이루어지는 편이 좋다고 생각하지만, 그렇지 않은 현상이 있다. . . 노력하지 않으면.
이런 식으로 현재는 Firebase Realtime Database을 주축으로 하고, 모바일 애플리케이션의 백엔드를 쇄신하려고 하고 있다.
하고 싶은 일
이것을 실현하기 위해 우여곡절(Firestore 시험하거나, dataflow-pubsub 시험하거나) 있었지만,
현재, 이하의 구성으로 가기로 결정했다.
데이터 구조
/root/messages에 메시지 ID와 메시지 내용을 저장합니다.
isEveryone이 true이면 전원 전용. (모바일 앱으로 제어)
/root/users 안에 메세지 ID와 boolean(이미 읽고 읽지 않은)을 저장.
전체 시스템
※message는 유효기간(expireDate)을 unix timestamp로 가지고 있으므로, 모바일 앱으로 끊어진 메시지는 내지 않는 처리를 넣는다. DB상은 남아 버리므로, cleanExpiredMessage로 daily로 삭제. functions는 cron trigger가 제공되지 않습니다. 다른 서비스를 사용하십시오. 그래서 Azure의 LogicApps를 사용하여 https로 시작.
다음 번
DB 규칙 설정과 upsertJson을 작성합니다.
Reference
이 문제에 관하여(Firebase RealtimeDatabase에 대량 데이터 투입 - 그 1 -), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/tstakano-yj/items/e68cef236931568b9ead
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(Firebase RealtimeDatabase에 대량 데이터 투입 - 그 1 -), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/tstakano-yj/items/e68cef236931568b9ead텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)