Как будет выглядеть база данных SQL в Firestore - PullRequest
0 голосов
/ 01 ноября 2019

Если таблица MySQL имеет вид:

table name: members

mem_name      dep_date      dep_cash
NEBU          01/01/2019    500
ASHISH        01/01/2019    700
YOGESH        01/01/2019    600
NEBU          01/02/2019    500
ASHISH        01/02/2019    1000
NEBU          01/03/2019    1200

Как будет создана таблица выше в Firestore? Что будет в части «коллекция», что будет в части «документы» и где вся запись будет храниться в Firestore?

Ответы [ 2 ]

3 голосов
/ 01 ноября 2019

Не существует единственного правильного перевода модели реляционной базы данных в модель базы данных Firestore. В базах данных NoSQL ваша модель данных часто зависит от сценариев использования вашего приложения.

Самый прямой перевод будет иметь коллекцию users, причем каждый документ в этой коллекции представляет одного пользователя изтвой стол. И хотя это может быть отличной моделью данных для одного приложения, это может быть действительно плохая модель данных для другого приложения.

Чтобы научиться думать о моделировании данных NoSQL в целом, я рекомендую прочитать NoSQLмоделирование данных , и, в частности, для Firestore вы должны посмотреть серию Знакомство с Cloud Firestore .

0 голосов
/ 01 ноября 2019

В качестве последующего ответа вы часто структурируете свою Firebase в зависимости от того, какие запросы вы будете выполнять, а денормализация и дублирование данных распространены.

Иногда визуальное представление может помочь понять Firebase, поэтому в этомВ этом случае одной из таких структур может быть:

members //a collection
   member_id_0 //a document
      mem_name: "NEBU" // fields within the document
      dep_date: "01/01/2019"
      dep_cash: "500"
   member_id_1
      mem_name: "ASHISH"
      dep_date: "01/01/2019"
      dep_cash: "700"

, где идентификаторы членов создаются с помощью .addDocument, который автоматически создает уникальный идентификатор документа

Кроме того, даты немного сложны, поэтому хранить их вот такможет быть лучшим вариантом

  dep_date: "20190101"

или даже хранить его как объект Date.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...