Это просто ограничения пользовательского интерфейса Forge. Это все еще довольно рудиментарно.
Функции реального времени в Firebase предназначены не только для больших наборов данных, но и для них. Тот факт, что поток записей в режиме реального времени идеально подходит для этого.
Производительность, как и любое приложение больших данных, не хуже вашей реализации. Итак, вот несколько ошибок, которые нужно учитывать при работе с большими наборами данных.
Денормализовать, Денормализовать, Денормализовать
Если набор данных будет повторяться, и его записи могут быть подсчитаны в тысячах, хранить его в своем собственном пути.
Это плохо для переборе больших массивов данных:
/users/uid
/users/uid/profile
/users/uid/chat_messages
/users/uid/groups
/users/uid/audit_record
Это хорошо для переборе больших массивов данных:
/user_profiles/uid
/user_chat_messages/uid
/user_groups/uid
/user_audit_records/uid
Избегайте 'значение' на больших наборах данных
Используйте child_added
, так как value
должен загрузить весь набор записей клиенту.
Часы для скрытых value
операций на детях
При вызове child_added
, вы, по сути, призывающих value
на каждом ребенок записи. Поэтому, если эти дети содержат большие списки, им придется загружать все эти данные для возврата. Таким образом, раздел DENORMALIZE выше.
Как упоминает Като, это проблема Forge, а не проблема Firebase. Попробуйте перейти непосредственно к более глубокому пути обработки больших наборов данных. –