您好,登錄后才能下訂單哦!
這篇文章主要介紹“如何實現從RDBMS到Hadoop的實時流傳輸”,在日常操作中,相信很多人在如何實現從RDBMS到Hadoop的實時流傳輸問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”如何實現從RDBMS到Hadoop的實時流傳輸”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
Kafka用武之地:整體解決方案架構
下圖顯示了在整體解決方案架構中,RDBMS的業務數據傳遞到目標 Hive 表格結合了 Kafka , Flume和Hive交易功能。
7步實時流傳輸到Hadoop
現在深入到解決方案的詳細信息,我會告訴你如何簡單幾步實時流輸數據到Hadoop。
1. 從關系數據庫管理系統(RDBMS)提取數據
所有關系數據庫都有一個記錄最近交易的日志文件。 我們的傳輸流解決方案的***步是,在能夠傳到Hadoop的信息格式中獲得這些交易。 講完提取機制得單獨占用一篇博文–所以 如果你想了解更多此過程的信息, 請聯系我們。
2. 建立Kafka Producer
發布消息到Kafka主題的過程被稱為“生產者”。“主題”是Kafka保存的分類消息。 RDBMS的交易將被轉換為Kafka話題。 對于該例,讓我們想一想銷售團隊的數據庫,其中的交易是作為Kafka主題發表的。 建立Kafka生產者需要以下步驟:
3. 設置 Hive
接下來,我們將在Hive中創建一張表,準備接收銷售團隊的數據庫事務。 在這個例子中,我們將創建一個客戶表:
為了讓Hive能夠處理交易, 配置中需要以下設置:
hive.txn.manager = org.apache.hadoop.hive.ql.lockmgr.dbtxnmanager
4.設置Flume Agent,從Kafka到Hive流傳輸
現在讓我們來看看如何創建Flume代理,實現從Kafka主題中獲取數據,發送到Hive表。
遵循步驟來設置環境,然后建立Flume代理:
接著,如下創建一個log4j屬性文件:
然后為Flume代理使用下面的配置文件:
5.開啟Flume代理
使用如下命令開啟Flume代理:
$ /usr/hdp/apache-flume-1.6.0/bin/flume-ng agent -n flumeagent1 -f ~/streamingdemo/flume/conf/flumetohive.conf
6.開啟Kafka Stream
如下示例,是一個模擬交易消息, 在實際系統中需要由源數據庫生成。 例如,以下可能來自重復SQL交易的Oracle數據流,這些交易已提交到數據庫, 也可能來自GoledenGate。
7.接收Hive數據
以上所有完成, 現在從Kafka發送數據, 你會看到,幾秒之內,數據流就發送到Hive表了。
到此,關于“如何實現從RDBMS到Hadoop的實時流傳輸”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。