0

В настоящее время я пишу приложение для Android и использую для этого базу данных реального времени Firebase.Служба доступа к данным/Layer с управляемой событиями базой данных Firebase

Я борюсь с концепцией базы данных, управляемой событиями.

В моем «нормальной» SQL реляционного мире я обычно реализовать службы доступа к данным/слоя наряду с MVVM шаблона, чтобы поток контролируемых данных. Этот слой, например, реализует методы CRUD для возврата POCOs/POJO.

Но в этом случае ведомой, NoSQL среде базы данных Firebase R в CRUD не имеет смысла, так как я активно не читаю ничего в базе данных больше, а быть информированным через событие, что-то изменилось ,

Могу ли я просто заменить активную роль чтения в CRUD с слушателями событий и продолжить использование службы доступа к данным/слой подхода, который я привык, или есть существенные недостатки с таким подходом? Если да, то каковы подходы к обработке потока данных с помощью базы данных, управляемой событиями?

ответ

1

База данных Firebase используется как постоянная, управляемая событиями модель представления в большинстве реализаций MVVM.

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

+0

Знаете ли вы какие-либо примеры, где я мог это видеть? Я не понимаю, как хранить модель просмотра в БД. Для меня модель представления - это то, что обрабатывает данные для представления, а не то, что хранит данные. Редактировать: все еще печатать, я случайно попал в enter. – AirLancer

+0

Я пропустил окно времени для редактирования, так что вот остальная часть комментария: В настоящее время я вижу, что ваше предложение работает, если я откажусь от концепции попытки не хранить данные в БД более одного раза. Я знаю, что эта идея разводится в DB базы Firebase, не полностью выброшенной за борт. Тогда у меня есть схема БД, которая сильно связана с представлением и довольно немного накладных расходов, когда я пытаюсь сохранить данные в разных местах, выровненных. Что мне не хватает? – AirLancer

+0

Дублирование данных невероятно распространено в базах данных NoSQL. Если вы новичок в этой теме, я настоятельно рекомендую прочитать [Моделирование данных NoSQL] (https://highlyscalable.wordpress.com/2012/03/01/nosql-data-modeling-techniques/). –

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