2012-03-02 52 views
1

我們有以下情形:數據的Hadoop的map-reduce

我們的java.Currently實現我們從一個MySQL表中讀取數據,並輸出保存到另一個mysql tablemap-reduce processes鏈。現在我們可能需要來自另一個表的數據作爲映射/減少過程的輸入。

可能的解決方案:

一)要麼我們可以有輸入連接查詢映射過程或

二)我們可以做簡單的jdbc connection連連請求數據讀取所需的數據(儘管,我不喜歡它)。

問題:

這種情況下的最佳實踐是什麼? 未來我們可能會轉移到mongoDB。那種情況下最好的做法是什麼?

回答

0

我覺得這是不可能的了。

0

SQOOPHIVE可以使用。

您可以使用SQOOP爲transfering數據從MySQL表到HDFS再到HIVE。 從HIVE(操作後),您可以將表格導出回Mysql。

例子:

  • 首先下載使用mysql-connector-java的5.0.8,並把罐子Sqoop的 lib和bin文件夾
  • 在蜂巢與精確創建表的定義字段名和類型 MySQL中

sqoop進口--verbose --fields終止-用 '' --connect jdbc:mysql:// localhost/test --table employee --hive-import --warehouse-dir/user/hive/warehouse --fields-terminated-by','--split-by id --hive -table員工

關注這個Link參考

+0

我們知道sqoop和配置單元,但它們與我們當前的場景無關。由於項目需求,我們必須使用核心地圖縮減流程。問題是如何從多個sql表中獲取mapper-reducer中的數據? – 2012-03-03 05:28:22