2016-08-27 3 views
0

Я ищу в основном римейк Кика в своем приложении. Для большинства руководств, которые я видел в приложении для чата firebase, есть один главный узел Messages, а затем под ним есть разветвитель с сообщениями для каждого пользователя, которые ссылаются на сообщения в основном списке.Структура данных Firebase для приложения чата

С тем, как мой Firebase выложена на данный момент, было бы проще реализовать что-то вроде этого:

users 
    chatPartners 
     02834092890428 
      chatMessages 
       2093840923840923 
        timestamp/userUID/etc. 

и просто фактический чат внутри узла моего пользователя. Это, похоже, также существенно сократило необходимость просеивать каждое сообщение в узле сообщений?

Поэтому, когда пользователи отправляют сообщения друг другу, я бы обновил узел «сообщения чата» под отправителем и пользователем.

Есть ли какая-то причина НЕ делать это так? Я вижу, что все делают это первым способом, который я описал, но я не вижу причины, по которой будет сохраняться каждый чат под пользователем ---> партнер чата -> журнал чата.

ответ

2

Единственная проблема, с которой вы можете столкнуться, - это то, как вызываются данные. Обратите внимание, что когда вы вызываете «Журнал чата», потому что он является дочерним элементом «Пользователи» и «ЧатПартнеры», вы будете вызывать данные всего в этой ветке, по существу загружая каждую часть данных в базу данных в разделе «Пользователи», , что требует времени и производительности.

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