Лучший способ импортировать данные из MySql в HDFS - PullRequest
0 голосов
/ 28 декабря 2011

Мне нужно знать, есть ли способ импортировать данные из mysql в HDFS, есть некоторые условия, которые я должен упомянуть.

  • Я знаю, что hbase, hive и sqoop могут мне помочь, но яне хочу никаких дополнительных слоев.Просто mapreduce и hadoop java api.
  • Мне также нужно обновить HDFS по мере обновления данных в mySQL.

Мне нужно знать лучший способ импорта данных MySQL в HDFS и обновления вв режиме реального времени.

Ответы [ 3 ]

2 голосов
/ 28 декабря 2011

Почему бы вам не использовать sqoop - он делает то, что вам нужно было бы сделать (открыть соединение JDBC, получить данные, записать в hadoop), посмотреть эту презентацию из мира hadoop 09

0 голосов
/ 11 ноября 2014

Да, вы можете получить доступ к базе данных и HDFS через JDBC-коннекторы и API-интерфейс hadoop Java.

Но при работе с картами все будет вне вашего контроля при доступе к базе данных.

  • Каждый картограф / редуктор пытается установить отдельное соединение с базой данных, что в конечном итоге влияет на производительность базы данных.
  • Не будет никакой подсказки, какой преобразователь / преобразователь выполняет, какую часть набора результатов запроса.
  • В случае, если для доступа к базе данных существует один картограф / редуктор, параллелизм hadoop будет потерян.
  • Должен быть реализован отказоустойчивый механизм, если какой-либо из картографов / редукторов вышел из строя.
  • список можно продолжить ......

Чтобы преодолеть все эти препятствия, Sqoop был разработан для передачи данных между RDBMS в / из HDFS.

0 голосов
/ 11 ноября 2014

Вы можете использовать импорт в реальном времени, используя CDC и Talend.http://www.talend.com/talend-big-data-sandbox

...