2016-02-15 2 views
-1

Я ищу варианты для базы данных графа, которые будут использоваться в проекте. Я ожидаю, что ~ 100000 пишет (vertix + edge) в день. И гораздо меньше читает (несколько раз в час). Самый частый запрос занимает 2 трассировки глубины ребер, которые я ожидаю вернуть ~ 10-20 результирующих узлов. У меня нет опыта работы с графическими базами данных и вы хотите работать с gremlin, чтобы иметь возможность переключиться на другую графическую базу данных, если это необходимо. Теперь я рассматриваю две возможности: neo4j и Titan.Нужна помощь в выборе базы данных графа

Как я вижу, для Neo4j достаточно сообщества, информации и инструментов, поэтому я бы предпочел начать с него. Их количество должно быть достаточным для наших нужд (~ 34 миллиарда узлов, ~ 34 миллиарда краев). Но я не уверен, какие аппаратные требования мне придется решать в этом случае. Также я не видел вариантов параллелизации для их запросов.

С другой стороны, Titan построен для горизонтальной масштабируемости и имеет интеграцию с интенсивно параллельными инструментами, такими как искра. Поэтому я могу ожидать, что аппаратные требования могут масштабироваться линейным образом. Но для Titan гораздо меньше информации/сообщества/инструментов.

Я буду рад услышать ваши предложения

ответ

2

Sebastian Хорошо сделал замечательную презентацию сравнения нескольких баз данных друг с другом. Вы можете посмотреть его результаты в here.

Краткий обзор презентации здесь enter image description here

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

Моя личная рекомендация:

  1. Если у вас есть глубокие карманы, пойти на Neo4j. Благодаря технической поддержке и простому CIPHER все будет идти довольно быстро.

  2. Если вы поддерживаете Open Source (и терпеливы для его циклов разработки), перейдите на БД Titan с базой данных Amazon Dynamo DB. Это даст вам «бесконечную» масштабируемость и хорошую производительность как с компьютерами EC2, так и с таблицами Dynamo. Проверьте here for docs и here for their code для получения дополнительной информации.

+0

Благодарим за ответ. Можете ли вы добавить что-то относительно требований к оборудованию и экономичности для предоставленного варианта использования? –

+0

@OlgaGorun Посмотрите здесь цены Neo4j http://neo4j.com/subscriptions/. Для Titan/DynamoDB, посмотрите здесь http://tinyurl.com/gpv9t43 –

Смежные вопросы