免费A级毛片无码专区网站-成人国产精品视频一区二区-啊 日出水了 用力乖乖在线-国产黑色丝袜在线观看下-天天操美女夜夜操美女-日韩网站在线观看中文字幕-AV高清hd片XXX国产-亚洲av中文字字幕乱码综合-搬开女人下面使劲插视频

ETL工具Datax、sqoop、kettle 的區(qū)別

【ETL工具Datax、sqoop、kettle 的區(qū)別】一、Sqoop主要特點:
1.可以將關(guān)系型數(shù)據(jù)庫中的數(shù)據(jù)導(dǎo)入到hdfs , hive , hbase等hadoop組件中 , 也可以將hadoop組件中的數(shù)據(jù)導(dǎo)入到關(guān)系型數(shù)據(jù)庫中;
2.sqoop在導(dǎo)入導(dǎo)出數(shù)據(jù)時 , 充分采用了map-reduce計算框架(默認(rèn)map數(shù)為4) , 根據(jù)輸入條件生成一個map-reduce作業(yè)(只有map , 沒有reduce) , 在hadoop集群中運行 。采用map-reduce框架同時在多個節(jié)點進行import或者export操作 , 熟讀比單節(jié)點運行多個并行效率高 , 同時提供了良好的并發(fā)性和容錯性;
3.支持insert , update模式 , 可以選擇參數(shù) , 若內(nèi)容存在就更新 , 若不存在就插入;
4.對國外主流關(guān)系型數(shù)據(jù)庫支持性更好 。
二、Datax 主要特點:1、異構(gòu)數(shù)據(jù)庫和文件系統(tǒng)之間的數(shù)據(jù)交換;2、采用 Framework + plugin 架構(gòu)構(gòu)建 , Framework 處理了緩沖 , 流控 , 并發(fā) , 上下文加載等高速數(shù)據(jù)交換的大部分技術(shù)問題 , 提供了簡單的接口與插件交互 , 插件僅需實現(xiàn)對數(shù)據(jù)處理系統(tǒng)的訪問;3、數(shù)據(jù)傳輸過程在單進程(單進程多線程)內(nèi)完成 , 全內(nèi)存操作 , 不讀寫磁盤 , 也沒有 IPC(進程之間的通信);4、開放式的框架 , 開發(fā)者可以在極短的時間開發(fā)一個新插件以快速支持新的數(shù)據(jù)庫/文件系統(tǒng) 。 三、Kettle 主要特點:1、kettle (數(shù)據(jù)抽取、清洗、轉(zhuǎn)換、裝載)是由 java 編寫,可以在 Window、Linux、Unix 上運行 。支持多數(shù)據(jù)源, 多種中間件的專業(yè) ETL 工具 。2、支持圖形化 GUI 設(shè)計界面 , 組件多樣性 , 支持 http 請求,上手簡單支持拖拽 , 支持 sql , 可以編寫js ,可以編寫一些 java 代碼 , 然后以工作流的形式流轉(zhuǎn) 。如果沒有沖突可以并行執(zhí)行 , 并行開發(fā) 。在工具內(nèi)可以查看 讀 寫 修改 輸出 更新 拒絕 錯誤 等 一些參數(shù) , 快速定位和糾錯 。 四、Sqoop 和 Datax 的區(qū)別:1、sqoop 采用 map-reduce 計算框架進行導(dǎo)入導(dǎo)出 , 而 datax 僅僅在運行 datax 的單臺機器上進行數(shù)據(jù)的抽取和加載 , 速度比 sqoop 慢了許多;2、sqoop 只可以在關(guān)系型數(shù)據(jù)庫和 hadoop 組件之間進行數(shù)據(jù)遷移 , 而在 hadoop 相關(guān)組件之間 , 比如hive 和 hbase 之間就無法使用 sqoop 互相導(dǎo)入導(dǎo)出數(shù)據(jù) , 同時在關(guān)系型數(shù)據(jù)庫之間 , 比如 mysql 和oracle 之間也無法通過 sqoop 導(dǎo)入導(dǎo)出數(shù)據(jù) 。與之相反 , datax 能夠分別實現(xiàn)關(guān)系型數(shù)據(jù)庫 hadoop 組件之間、關(guān)系型數(shù)據(jù)庫之間、hadoop 組件之間的數(shù)據(jù)遷移;3、sqoop 是專門為 hadoop 而生 , 對 hadoop 支持度好 , 而 datax 可能會出現(xiàn)不支持高版本 hadoop 的現(xiàn)象;4、sqoop 只支持官方提供的指定幾種關(guān)系型數(shù)據(jù)庫和 hadoop 組件之間的數(shù)據(jù)交換 , 而在 datax 中 , 用戶只需根據(jù)自身需求修改文件 , 生成相應(yīng) rpm 包 , 自行安裝之后就可以使用自己定制的插件; 五、Kettle 與 DataX 的區(qū)別:1、Kettle 擁有自己的管理控制臺 , 可以直接在客戶端進行 etl 任務(wù)制定 , 不過是 CS 架構(gòu)(服務(wù)器-客戶機) , 而不支持 BS(瀏覽器-服務(wù)器)架構(gòu) 。DataX 并沒有界面 , 界面完全需要自己開發(fā) , 增加了很大工作量 。2、Kettle 可以與我們自己的工程進行集成 , 通過 JAVA 代碼集成即可 , 可以在 java 中調(diào)用 kettle 的轉(zhuǎn)換、執(zhí)行、結(jié)束等動作 , 這個還是有意義的 , 而 DataX 是不支持的 , DataX 是以執(zhí)行腳本的方式運行任務(wù)的 , 當(dāng)然完全吃透源碼的情況下 , 應(yīng)該也是可以調(diào)用的 。3、支持的數(shù)據(jù)庫 , 都支持的比較齊全 , kettle 支持的應(yīng)該更多 , DataX 是阿里開發(fā) , 可以更好地支持阿里自身的數(shù)據(jù)庫系列 , 如 ODPS、ADS 等4、Kettle 已經(jīng)加入 BI 組織 Pentaho , 加入后 kettle 的開發(fā)粒度和被關(guān)注度更進一步提升5、DataX 開源的支持粒度不高 , 關(guān)注度遠(yuǎn)沒有 kettle 高 , 代碼提交次數(shù)更是少的很 。 六、Kettle 與 Sqoop 的區(qū)別1、Kettle 中有兩種腳本文件 , transformation 和 job , transformation 完成針對數(shù)據(jù)的基礎(chǔ)轉(zhuǎn)換 , job則完成整個工作流的控制;Sqoop 主要用于在 Hadoop(Hive)與傳統(tǒng)的數(shù)據(jù)庫(mysql、postgresql...)間進行數(shù)據(jù)的傳遞2、kettle 有圖形化的操作界面 , 只需要描述你想做什么 , 而不是你想怎么做;sqoop 沒有圖形化界面 , 具體的數(shù)據(jù)流向需要手工配置 。3、kettle 底層使用多線程以提高效率;Sqoop 專為大數(shù)據(jù)批量傳輸設(shè)計 , 能夠分割數(shù)據(jù)集并創(chuàng)建 Hadoop任務(wù)來處理每個區(qū)塊 。4、kettle 可以利用 transformation 在數(shù)據(jù)傳輸過程中對數(shù)據(jù)的一些轉(zhuǎn)換處理;Sqoop 只是一個用來將Hadoop 和關(guān)系型數(shù)據(jù)庫中的數(shù)據(jù)相互轉(zhuǎn)移的工具5、kettle 數(shù)據(jù)的具體流向可以指定 , 可以是各種數(shù)據(jù)的存儲工具;sqoop 只是完成 hdfs 到關(guān)系型數(shù)據(jù)庫或者 關(guān)系型數(shù)據(jù)庫到 hdfs 的數(shù)據(jù)傳輸 , 在傳輸?shù)倪^程中保證傳輸數(shù)據(jù)的類型              

經(jīng)驗總結(jié)擴展閱讀