Самый эффективный способ подсчета детей с базой данных Firebase - PullRequest
0 голосов
/ 17 декабря 2018

В настоящее время я делаю это следующим образом:

 DatabaseReference reference = FirebaseDatabase.DefaultInstance.GetReference("Leaders").Child("List1");
         reference.GetValueAsync().ContinueWith(task =>
         {
             int totalChildren = (int)task.Result.ChildrenCount;
               //Do more stuff
         } 

Я подумал, зачем получать весь снимок, чтобы посчитать, сколько детей.

Каким-либо другим способом, не выбирая весь снимок?

1 Ответ

0 голосов
/ 17 декабря 2018

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

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

Подробнее об этом см .:

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