У меня есть общий вопрос c о лучших практиках использования Neptune DB в качестве сетевой базы данных и ее способности масштабироваться для сложных вычислений. Я хочу разработать систему рекомендаций для пользователей, в которой входящим пользователям на платформе будут предложены другие пользователи, которым они могут следовать, чтобы расширить сеть.
Для реализации простого метода, такого как Triadi c Закрытие, должен ли я использовать запросы gremlin в сетевой БД (AWS Neptune в моем случае) для генерации рекомендаций? Я считаю, что в этом случае мне пришлось бы создавать python сценарии, которые распараллеливают запросы для нескольких узлов и генерируют рекомендации для каждого узла в масштабе.
ИЛИ - это более распространенная практика для хранения сетевые данные в виде узлов, ребер и их свойств в реляционную базу данных, а затем выполнить вычисления для них, запустив SQL запросов для загрузки сетевых данных в python, а затем используя пакеты, такие как NetworkX поверх который. В этом случае мне не придется беспокоиться о пакетных вычислениях, так как об этом позаботится реляционная база данных, такая как Redshift. Однако я бы писал python логики для реализации таких методов, как триади c замыкание.
Кроме того в будущем я могу захотеть использовать более сложные методы вычисления графов, такие как кластеризация графов, разбиение, подсчет разных видов центральностей. Возможны ли все / любые из них в рамках Neptune + Gremlin.
В приведенном выше контексте ниже приведены вопросы, на которые я ищу ответы:
Что такое часто используемый технический стек, разработанный группой по науке о данных работа с графическими данными для создания решений, таких как рекомендации пользователей? Под стэком технических наук в области данных я подразумеваю технологии, которые помогают запрашивать, анализировать, визуализировать, вычислять и обслуживать .
Может ли Neptune + Gremlin заменить python пакеты, такие как NetworkX, для анализа сети и измерения центральности?
Является ли Neptune DB идеальным только как хранилище данных ИЛИ может ли оно также поддерживать комплексный анализ сети и обслуживание рекомендаций?
Любая информация / ресурсы по этому вопросу были бы действительно полезны!