2016-10-21 4 views
0

Итак, я решил подумать о том, как перейти к структуре в моем приложении, прежде чем двигаться вперед с кодированием, поскольку я новичок в NoSQL.Конфликт структуры базы данных Firebase

Users: 
    ID 
     email: "[email protected]" 
     name: "John Doe" 
     profile_pic_path: "https://...". 
     language: "en" 
     exp_points: 1284 

    Projects: 
    /$PROJECT_ID 
     title: "For whom the bell tolls" 
     image: "etc.png" 

    project_roles: 
    /$PROJECT_ID 
     $userId1: 5 
     $userId2: 6 

    roles: 
    5: "Editor" 
    6:" Writer" 

Так что теперь мне нужно добавить orders к projects. Каждый order - это список items.

Мой вопрос:

  1. Моя структура как можно ровнее. Поскольку я новичок в NoSQL, я делаю это правильно? Если вы что-то изменили, я бы хотел услышать и узнать, как только я попытаюсь построить все с максимальной стабильностью.
+0

Где находится узел 'project_tasks'? –

+0

Извините за неправильное письмо, я имею в виду 'project_orders' – Reni

+0

@rainman Какое это имеет значение? – Reni

ответ

0

Вчера я начинаю узнавать о json-базах данных, в данном случае в базе данных firebase realtime databse ... И у вас есть вопросы о правильной схеме для firebase ... Когда вы хотите создать базу данных firebase, вам необходимо представить 3 концепции:

  • Избегайте вложенных данных: Firebase поддерживает 32 узла вложенности, и необходимо использовать все узлы? Нет ... Ваша база данных проще и быстрее читать информацию с меньшим количеством узлов. Помните, что когда вы вызываете родительский узел, firebase возвращает всю информацию о вторичных узлах.
  • Уплотнение структур данных, чтобы уклониться от необходимых узлов вложенности, это поможет вам получить более быструю базу данных firebase.
  • Создание данных масштаба или бидискреционных узлов это, возможно, самое важное ... Поскольку возможно, что вам нужно видеть заказы проекта или заказы пользователя, здесь у вас есть bidereccional node, тогда вам нужно создать объект index json, сделать более эффективную базу данных.

Если вы применяете эти концепции, вы можете создать хорошую базу данных JSON. Чтобы узнать больше об этом, см. Это guide с примерами и информацией о Google. Я не могу выполнить вашу схему, потому что вы знаете больше, чем вам нужно для своего приложения, читайте об этом, следуйте примеру и создайте лучшую схему. В этом youtuber рассказывается о хороших практиках для реальной базы данных firebase и их правилах. Приветствую!!

Смежные вопросы