天天看點

MySQL推出Applier,可實時複制資料到Hadoop

http://labs.mysql.com

MySQL推出Applier,可實時複制資料到Hadoop

用途 

Applier就可以實時填充Hive資料表。資料是從MySQL中以文本檔案形式導出到HDFS,然後再填充到Hive。 

操作很簡單,隻需在Hive運作HiveQL語句'CREATE TABLE',定義表的結構與MySQL相似,然後運作Hadoop Applier即可開始實時複制資料。 

優勢 

在Hadoop Applier之前,還沒有任何工具可以執行實時傳輸。之前的解決方案是通過Apache Sqoop導出資料到HDFS,盡管可以批量傳輸,但是需要經常将結果重複導入以保持資料更新。在進行大量資料傳輸時,其他查詢會變得很慢。且在資料庫較大的情況下,如果隻進行了一點更改,Sqoop可能也需要較長時間來加載。 

而Hadoop

Applier則會讀取二進制日志,隻應用MySQL伺服器上發生的事件,并插入資料,不需要批量傳輸,操作更快,是以并不影響其他查詢的執行速度。 

實作 

Applier使用一個由libhdfs(用于操作HDFS中檔案的C庫)提供的API。實時導入的過程如下圖所示: 

MySQL推出Applier,可實時複制資料到Hadoop

資料庫被映射作為一個單獨的目錄,它們的表被映射作為子目錄和一個Hive資料倉庫目錄。插入到每個表中的資料被寫入文本檔案(命名如datafile1.txt),資料以逗号或其他符号分割(可通過指令行進行配置)。 

MySQL推出Applier,可實時複制資料到Hadoop