天天看點

【大資料幹貨】資料進入阿裡雲數加-大資料計算服務MaxCompute(原ODPS)的N種方式

【大資料幹貨】資料進入阿裡雲數加-大資料計算服務MaxCompute(原ODPS)的N種方式

<a href="/go/1/4?postion=1" target="_blank">大資料計算服務(maxcompute)</a>

快速、完全托管的tb/pb級資料倉庫解決方案,向使用者提供了完善的資料導入方案以及多種經典的分布式計算模型,能夠更快速的解決使用者海量資料計算問題,有效降低企業成本,并保障資料安全。

<a href="/go/1/4?postion=1" target="_blank">了解更多</a>

【大資料幹貨】資料進入阿裡雲數加-大資料計算服務MaxCompute(原ODPS)的N種方式

一、  

i.   開通大資料開發套件,進入項目管理-資料源管理中将資料源配置到dataide中,并保證連通性。目前maxcompute支援的資料源如下圖:

【大資料幹貨】資料進入阿裡雲數加-大資料計算服務MaxCompute(原ODPS)的N種方式

ii.建立資料同步任務,配置資料映射

【大資料幹貨】資料進入阿裡雲數加-大資料計算服務MaxCompute(原ODPS)的N種方式
【大資料幹貨】資料進入阿裡雲數加-大資料計算服務MaxCompute(原ODPS)的N種方式

iii.儲存後送出運作,可以通過執行日志監控執行成功與否。

【大資料幹貨】資料進入阿裡雲數加-大資料計算服務MaxCompute(原ODPS)的N種方式

适用場景:這種方式通過界面向導逐漸配置,操作簡單容易上手,對于大資料開發套件(dataide)已經支援的資料源之間同步資料非常友善,但是要確定資料源連通性,同時對資料同步的速度也有限制,最高10m/s。

2、通過datax實作資料同步

datax 是阿裡巴巴集團内被廣泛使用的異構資料源離線同步工具,緻力于實作包括關系型資料庫(mysql、oracle等)、hdfs、hive、maxcompute(原odps)、hbase、ftp等各種異構資料源之間穩定高效的資料同步功能。

datax本身作為離線資料同步架構,采用framework

+ plugin架構建構。将資料源讀取和寫入抽象成為reader/writer插件,納入到整個同步架構中。目前已經有了比較全面的插件體系,主流的rdbms資料庫、nosql、大資料計算系統都已經接入。datax目前支援資料如下:

【大資料幹貨】資料進入阿裡雲數加-大資料計算服務MaxCompute(原ODPS)的N種方式

使用示例(從mysql讀取資料 寫入odps):

ii.建立作業配置檔案

python datax.py

-r mysqlreader -w odpswriter

iii.根據配置檔案模闆填寫相關選項(源和目标資料庫的使用者名、密碼、url、表名、列名等),如下圖:

【大資料幹貨】資料進入阿裡雲數加-大資料計算服務MaxCompute(原ODPS)的N種方式

iv.             

啟動datax同步任務

./mysql2odps.json

适用場景:datax通過plugin的方式實作對異構資料源的支援,支援的資料源種類更豐富,對于暫不支援的資料源使用者也可以自己擴充plugin實作。另外這種方式通過配置檔案做源和目标的映射非常靈活,同時也很容易跟其他的任務做內建。

3、通過sqoop實作資料同步

1、通過大資料開發套件(dataide)導入本地檔案

i.登陸“大資料開發套件-資料開發”,點選“導入-導入本地資料”

【大資料幹貨】資料進入阿裡雲數加-大資料計算服務MaxCompute(原ODPS)的N種方式

ii.             

 配置分隔符、資料檔案字元編碼等

【大資料幹貨】資料進入阿裡雲數加-大資料計算服務MaxCompute(原ODPS)的N種方式

iii.選擇目标表後即可導入

【大資料幹貨】資料進入阿裡雲數加-大資料計算服務MaxCompute(原ODPS)的N種方式

适用場景:這種方式适用于一些簡單場景驗證,通過向導方式上傳本地檔案簡單易用,但是對于檔案大小限制不能超過10m。

2、通過maxcompute用戶端上傳資料

i.下載下傳maxcompute用戶端

ii.解壓并配置用戶端

解壓後進入到conf目錄,用編輯器打開odps_config.ini,配置相應的access_id、access_key、project_name等。

【大資料幹貨】資料進入阿裡雲數加-大資料計算服務MaxCompute(原ODPS)的N種方式

iii.運作maxcompute用戶端

odpscmd –config=../conf/odps_config.ini

【大資料幹貨】資料進入阿裡雲數加-大資料計算服務MaxCompute(原ODPS)的N種方式

iv.通過tunnel 可以上傳下載下傳資料,詳情可以通過tunnel help檢視幫助

v.通過tunnel upload上傳本地檔案到maxcompute,詳情可以通過tunnel help upload檢視幫助

【大資料幹貨】資料進入阿裡雲數加-大資料計算服務MaxCompute(原ODPS)的N種方式

指令示例:

tunnel upload ./data.txt

test_tunnel -fd "," -rd "\n";

解讀:

data.txt – 資料檔案,導入時注意指定路徑

test_tunnel –

maxcompute中資料表

-fd

"," – 指定逗号為資料列分隔符

-rd

"\n" – 指定換行符為資料行分隔符

指令行使用請參考

<a href="https://help.aliyun.com/document_detail/27833.html">https://help.aliyun.com/document_detail/27833.html</a>

适用場景:通過tunnel上傳資料适合資料檔案大小适中的場景(比如單表上百gb可能會由于資料本身或者網絡不穩定導緻資料導入失敗),并且可以指定線程數等來提升效率,充分發揮硬體性能。

三、  

實時資料歸檔到maxcompute

1.通過datahub将流式資料歸檔到maxcompute

2.通過dts将資料實時同步到maxcompute

目前實時同步隻能支援rds

3.通過ogg将資料實時同步到maxcompute

這種方式要通過ogg将實時資料先同步到datahub,再在datahub中通過建立datahub

四、日志資料同步到maxcompute

目前日志類型的資料實時同步到maxcompute的需求也非常強。市面上也有很多成熟的日志收集工具,比如fluentd、logstash。日志資料實時同步到maxcompute的方案也是要借助于這些成熟的日志收集工具,将日志資料同步到datahub中後,再通過datahub将資料歸檔到maxcompute,資料鍊路:

【大資料幹貨】資料進入阿裡雲數加-大資料計算服務MaxCompute(原ODPS)的N種方式

1.通過logstash采集日志資料到maxcompute

2.通過fluentd采集日志資料到maxcompute

繼續閱讀