2015-02-20 1 views
0

У меня есть приложение python, общающееся с базой данных графа Титана при поддержке Cassandra.Использование DB-кода Rexster и Titan для масштабируемых приложений

Приложение для Python ---------> Rexster Server + Titan Graph DB + Cassandra.

«Rexster Server + Titan Graph DB + Cassandra» находится внутри единой JVM.

Приложение для python работает на нескольких виртуальных машинах.i.e Каждая виртуальная машина имеет идентичную копию моего приложения. Идея состоит в том, чтобы сделать приложение масштабируемым. Теперь ясно для начальной реализации я использую один экземпляр «Rexster Server + Titan Graph DB + Cassandra». Это означает, что базовая база данных является единственным узлом. Мои приложения, работающие на разных виртуальных машинах, общаются с одним и тем же бэкэнд.

Мои вопросы заключаются в следующем.

1) Я хочу также сделать базу данных базы данных масштабируемой. Как я могу это сделать?

2) Нужно ли использовать тот же «DBX Rexster + Titan Graph DB» и настроить несколько узлов cassandra?

3) Является ли Titan Graph DB лучшим вариантом для этого варианта использования? Или я могу заменить Titan Graph DB на Neo4j и Rexster с Neo4jserver. почему, почему нет?

ответ

0

Titan - это высокомасштабируемая база данных графиков, как было продемонстрировано в их примерах. Чтобы ответить на ваши вопросы, я думаю, необходимо указать, насколько велика будет ваш проект. Если вы планируете развернуть кластер hadoop, убедитесь, что rexster настроен на подключение к адресу Zookeeper бэкэнд (если он управляется им), а не список адресов узлов.

1. Я хочу сделать базу данных базы данных масштабируемой. Как я могу это сделать?
Если вы намерены увеличить масштаб за пределами одной машины, вы можете обратиться к этой странице для получения дополнительной информации: Titan-Cassandra Configuration. Что касается того, как сделать базу данных базы данных масштабируемой, Cassandra и HBase являются очень масштабируемыми базами данных, и я предлагаю вам больше узнать о экосистеме Hadoop, чтобы понять, как в нее входит Titan DB. У вас могло бы быть множество узлов HBase/Cassandra, с которыми rexster мог бы разговаривать с

2. Нужно ли мне использовать ту же самую «DBX Rexster + Titan Graph DB» и настроить несколько узлов cassandra?
Вы можете запустить несколько серверов rexster на другой машине в кластере, каждый из которых подключается к одному и тому же серверу. Но каждый график из rexster не зависит друг от друга, поэтому вам нужно вручную разделить операции с графиком. И в этом случае это полезно только для большого числа пользователей, а не для глубоких обходов/запросов.

3. Является ли Titan Graph DB лучшим вариантом для этого варианта использования? Или я могу заменить Titan Graph DB на Neo4j и Rexster с Neo4jserver. почему, почему нет? Поскольку кажется, что вы собираетесь развернуть кластер, я думаю, что Titan - лучший выбор, если вы не готовы платить за корпоративную версию Neo4j для поддержки кластеризации. Neo4j editions Еще один вопрос, который следует учитывать: Titan vs OrientDB

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