Графическая модель Neo4j для социальной сети

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

ПРИМЕЧАНИЕ. Обновления статуса и узлы / отношения активности представляют собой связанные списки, причем самые новые записи постоянно помещаются вверху списка.

Связанные списки позволяют создавать новостные ленты, но на каждого пользователя могут приходить сотни записей - я полагаю, что ограничение limit недостаточно, хотя данные располагаются в порядке убывания по дате. Нужно ли иметь отдельный связанный список, который будет содержать только самые последние 10 обновлений статуса / активности), и постоянно заменять заголовок в этом списке, чтобы получить лучшую генерацию фида активности, или один список будет правильно отсортирован и будет выполнять работу (с предельная оговорка)

Все эти узлы имеют свойства (данные json с контентом, идентификаторы и т. Д.) - как здесь задействуются «глобальные» индексы, чтобы я мог найти, например, пользователей, которым нравится Depeche Mode, не дожидаясь результатов на протяжении всей жизни? Я знаю, как добавить узел к индексу, просто интересно, если я пропускаю часть изображения здесь ..

Безопасность - логины и пароли. Я бы предположил, что графическая база данных может их хранить, но я бы предположил, что на данный момент это угроза безопасности - лучше ли хранить это в postgres и т. Д.?

Как бы вы улучшили эту модель для обеспечения масштабируемости? Представьте себе 20 миллионов пользователей, которые бьют по этому вопросу ..

Представьте себе 40 миллионов пользователей - что не так с этой моделью, когда речь заходит о масштабируемости?

Ответы на вопрос(1)

Ваш ответ на вопрос