Я использую firebase в качестве Backend DataBase для сайта блога. Я хотел бы знать, как я могу структурировать свою Firebase DB; Основываясь на том, что я могу определить, какие должности чаще всего обсуждаются в последнее время.Проектирование схемы Firebase для запроса Тенденции в сообщениях
Давайте рассмотрим следующий пример.
сообщений
- [Сообщение 1]
| -PostId: Post1
| -PostName: OLD
| -PostLikes: 100
| -PostCreatedTimeStamp: 1483107180599
| -PostCreatedDate: 20141204/* Формат даты в формате ГГГГММДД */
- [Сообщение 2]
| -PostId: Post2
| -PostName: NEW
| -PostLikes: 40
| -PostCreatedTimeStamp: 1483115276906
| -PostCreatedDate: 20161204
Как указано в примере выше, мы можем увидеть, что даже если сообщение 2 получил меньшее количество подобных в настоящее время она простирания, как это получил большее количество в течение небольшого периода времени. Как мы можем структурировать нашу Firebase на основе этого.
Я также нашел временное решение. Создав аналогичный коэффициент.
LikeCoefficient = ((no of likes) * 10000000)/(Недавно опубликованныйTimeStamp- createdTimestamp).
Существует ошибка с этим подходом. Если трендовые сообщения перестают получать симпатии. Я не могу обновить коэффициент. Таким образом, старые сообщения могут появляться и между ними. (Я не хочу использовать сервер backend :). Это увеличит стоимость, которую я не хочу на этом этапе).
[Вопрос к Maths gigs:] Можем ли мы улучшить метод LikeCoefficient, чтобы представить порядок недавних трендов, созданных созданной меткой времени.
@FireBaseteam: Почему у нас нет двух параметров orderbychild. Почему команда почему .. :(:(
Если вы используете EMA, вам необходимо обновлять все значения EMA на ежедневной основе, чтобы они были актуальными. – MJQZ1347