Использование базы данных Firebase Realtime и Firestore с одинаковым идентификатором - PullRequest
0 голосов
/ 12 апреля 2020

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

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

Мой мыслительный процесс заключается в том, что база данных реального времени pu sh ID основана на отметке времени, поэтому она может создавать горячие разделы для Firestore, поэтому индексируя производительность как данные В будущем я могу получить травму, если я воспользуюсь тем же идентификатором. Но если я использую сгенерированный идентификатор Firestore в базе данных реального времени, у меня не будет данных в отсортированном виде, что база данных реального времени создает push-данные.

Мне было интересно, какие решения люди использовали для решения этого варианта использования и какие варианты доступны для меня. Спасибо!

1 Ответ

1 голос
/ 12 апреля 2020

Если вам нужно упорядочить данные, просто сохраняйте временные метки в виде полей вместо зависимости от основанного на времени порядка сортировки идентификаторов базы данных реального времени pu sh. Вы можете сделать это легко в обеих базах данных. В Firestore устарела идея о том, что уникальные идентификаторы имеют какое-либо значение, кроме просто уникальности.

Если вы убедитесь, что ваши уникальные идентификаторы действительно случайные, как и у Firestore, у вас не возникнет проблем с индексацией или написанием документов.

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