2012-04-11 2 views
4

Хорошо, допустим, у меня есть большая база данных MySql со 100 + столами. Хотя он работает очень хорошо, у меня есть две таблицы, каждая из которых может превышать 100 миллионов записей в год. На этих двух таблицах мне приходится выполнять поиск и вычисления, а не только архивную информацию.Слияние RDBMS и база данных NoSQL

Я думал tranfering логики этих таблиц в базу данных NoSQL из-за его хорошей масштабируемость. (MongoDB, CouchDB)

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

Хотя было бы слишком красиво, чтобы писать sql-запрос, который автоматически извлекает данные из nosql db, возможно, есть другой подход; например, используя хранимую процедуру plsql в MySQL для вызова запроса в базе данных NoSQL. Или вызов системной команды из plsql и получение результатов.

Просто хочу упомянуть, я использовал MySQL в качестве примера, это может быть что угодно, Oracle, Postgres.

+1

Вы слышали о Sqoop (HTTP: //sqoop.apache .org /) для передачи данных между РСУБД и Hadoop? – Kevin

+0

Нет, но я буду изучать его. – ionutab

+0

Я тебя не понимаю. Вы хотите передать половину данных из этих таблиц из RDMBS в nosql или полностью. Если полный, то почему вы хотите перенаправить запрос. –

ответ

1

Итак, модным словом для этого является Сохранение Полиглота (возможно, это помогает в дальнейших исследованиях). В основном вам придется самостоятельно интегрировать эти разные хранилища данных. Есть два решения, о которых я знаю, но я их не тестировал.

Первый использует EclipseLink как абстракцию над двумя хранилищами данных. Первую ссылку я нашел для этого: http://blog.eisele.net/2012/11/polyglot-persistence-eclipselink-with.html

второй один использует PostgreSQL и иностранных данных обертки рода гнездо NoSQL базы данных в Postgres: http://wiki.postgresql.org/wiki/Foreign_data_wrappers

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