скинуть карту уменьшить работу из моего веб-приложения java / mysql - PullRequest
0 голосов
/ 09 января 2011

Мне нужно немного советов по археологии.У меня есть веб-приложение на основе Java, с ORM на основе JPA, резервное копирование в реляционную базу данных MySQL.Теперь, как часть приложения, у меня есть пакетное задание, которое сравнивает тысячи записей базы данных друг с другом.Эта работа стала слишком трудоемкой и должна быть распараллелена.Я смотрю на использование mapreduce и hadoop для того, чтобы сделать это.Однако я не слишком уверен, как интегрировать это в мою текущую архитектуру.Я думаю, что самое простое первоначальное решение - найти способ перенести данные из mysql в задания hadoop.Я провел некоторые начальные исследования по этому вопросу и обнаружил следующую соответствующую информацию и возможности:

1) https://issues.apache.org/jira/browse/HADOOP-2536, это дает интересный обзор некоторой встроенной поддержки JDBC 2) Эта статья http://architects.dzone.com/articles/tools-moving-sql-database описывает некоторые сторонние инструменты для перемещения данных из mysql в hadoop.

Если честно, я только начинаю с изучения hbase и hadoop, но я действительно не знаю, как интегрировать это в мое веб-приложение.

Любой совет с благодарностью.ура, Брайан

Ответы [ 2 ]

0 голосов
/ 11 января 2011

Брайан, В этом случае вы можете использовать HBase или Hive или просто необработанные задания по уменьшению карты. 1. HBase - это база данных, ориентированная на столбцы. HBase лучше всего подходит для вычислений на основе столбцов. Например, средняя зарплата работника (предполагается, что зарплата - это столбец). Благодаря мощной функции масштабируемости мы можем добавлять узлы на лету. 2. Hive похож на традиционные базы данных, которые поддерживают SQL-подобные запросы. Внутренние запросы будут преобразованы в задачи уменьшения количества карт. Мы можем использовать это в случае вычислений на основе строк. 3. Окончательный вариант, где мы можем написать нашу собственную функцию уменьшения карты. Используя «sqoop», мы можем перенести данные из реляционных баз данных в HDFS (Hadoop File System). Затем мы можем написать задачи сокращения карты, которые напрямую связаны с лежащими в основе плоскими файлами. Упоминаются некоторые из возможных вариантов. Дайте мне знать, если вам нужны дополнительные сведения о вышеупомянутых опциях.

0 голосов
/ 09 января 2011

DataNucleus поддерживает устойчивость JPA к HBase.Очевидно, что JPA предназначен для RDBMS, поэтому поддержка полного JPA никогда не будет возможна, но вы можете выполнить базовое сохранение / запрос

...