天天看點

MaxCompute(原ODPS)開發入門指南——資料上雲篇

MaxCompute(原ODPS)開發入門指南——資料上雲篇

maxcompute(原odps)提供了多種通道資料可以流入maxcompute,包括maxcompute原生的tunnel,以及阿裡雲體系内的log、datax和資料內建,以及開源生态中的flume、logstash和fluentd。以下為大家一一道來,大家視各自情況進行選擇。

直接在maxcompute用戶端中使用tunnel指令進行資料上傳,資料在傳輸過程中都是加密傳輸的,适用于一次性批量資料導入。

注意的是每一次上傳隻支援資料上傳到一個表或表的一個分區,有分區的表一定要指定上傳的分區。

資料上傳指令如下:

tunnel upload log.txt test_project.test_table/p1="b1",p2="b2";

如何配置用戶端和使用指令:

<a href="https://help.aliyun.com/document_detail/27804.html" target="_blank">下載下傳并配置用戶端</a>

<a href="https://help.aliyun.com/document_detail/27809.html" target="_blank">tunnel 指令導入資料</a>

<a href="https://help.aliyun.com/document_detail/27833.html" target="_blank">更多關于tunnel upload指令</a>

MaxCompute(原ODPS)開發入門指南——資料上雲篇

通過 tunnel 提供的 sdk 自行編寫 java 工具。

關于如何利用 tunnel sdk 進行上傳資料,下面也将通過場景介紹。場景描述:上傳資料到 maxcompute,其中,項目空間為”odps_public_dev”,表名為”tunnel_sample_test”,分區為”pt=20150801,dt=hangzhou”。

<a href="https://help.aliyun.com/document_detail/27809.html" target="_blank">詳細的tunnel sdk案例教學</a>

日志服務(log service,簡稱 log)是針對日志類資料的一站式服務,在阿裡巴巴集團經曆大量大資料場景錘煉而成。您無需開發就能快捷完成日志資料采集(logtail)、消費、投遞(logshipper)以及查詢分析(logsearch)等功能,提升運維、營運效率,建立 dt 時代海量日志處理能力。

MaxCompute(原ODPS)開發入門指南——資料上雲篇

通常情況下,在使用開源的産品時都需要自己寫正則來進行日志采集和結構化,通過log産品可以進行可視化取詞來選擇自己需要解析的字段值,同時也提供手工方式輸入正規表達式,如下圖:

MaxCompute(原ODPS)開發入門指南——資料上雲篇
MaxCompute(原ODPS)開發入門指南——資料上雲篇
<a href="https://help.aliyun.com/product/28958.html" target="_blank">點選進入:更多關于log産品使用指南</a>

資料傳輸(data transmission)服務dts是阿裡雲提供的一種支援rdbms(關系型資料庫)、nosql、olap等多種資料源之間資料互動的資料服務。它提供了資料遷移、實時資料訂閱及資料實時同步等多種資料傳輸能力。

建立rds for mysql資料實時同步到maxcompute,實作原理如下:

MaxCompute(原ODPS)開發入門指南——資料上雲篇

如上圖所示,整個同步過程分為兩步:

全量初始化, 這個步驟将rds mysql中已經存在的全量資料初始化到maxcompute中。對于同步的每個表,全量初始化的資料都會獨立存儲在maxcompute中的全量基線表中,這個表的預設格式為:源表名_base。例如表 t1,那麼全量基線表在maxcompute中存儲的表名為:t1_dts_base。這個存儲表名字首可以根據需要變更,您可以在配置任務時,修改表在maxcompute存儲的名稱。

增量資料同步,這個步驟将rds mysql産生的增量資料資料實時同步到maxcompute中。并存儲在增量日志表中,每個同步表對應一個增量日志表。增量日志表在maxcompute中存儲的表名的預設格式為:源表名_log。這個存儲表名字首可以根據需要變更,您可以在配置任務時,修改表在maxcompute存儲的名稱。

隻支援表的同步,不支援其他非表對象如視圖的同步。
MaxCompute(原ODPS)開發入門指南——資料上雲篇
MaxCompute(原ODPS)開發入門指南——資料上雲篇

之是以将datax和data ide資料采集放在一起給大家介紹,是因為兩者之間密不可分,但是又有着巨大差别。

MaxCompute(原ODPS)開發入門指南——資料上雲篇
MaxCompute(原ODPS)開發入門指南——資料上雲篇
【相同點】:data ide資料采集子產品是基于datax平台之前建構的可視化配置+排程系統,支援的資料通道完全一緻。【不同點】:datax需要自己本機或伺服器上配置josn檔案和自己編寫crontab進行排程運維。 建議:大家直接使用 大資料開發套件-資料采集工具,因為大資料開發套件data ide提供了一整套的資料倉庫工具解決方案,從資料采集到資料加工以及後續的排程運維等。關鍵是免費!免費!免費!

資料源分類

資料源類型

抽取(reader)

導入(writer)

支援方式

支援類型

大資料存儲

maxcompute(對應資料源名稱是 odps)

支援

向導/腳本

阿裡雲

analyticdb(對應資料源名稱ads)

不支援

關系型資料庫

mysql

阿裡雲/自建

sql server

postgresql

oracle

自建

drds

db2

腳本

達夢(對應資料源名稱是 dm)

rds for ppas

mpp

hybriddb for mysql

hybriddb for postgresql

非結構化存儲

oss

hdfs

ftp

nosql

hbase

mongodb

memcache

阿裡雲/自建memcached

table store(對應資料源名稱是ots)

loghub

opensearch

redis

性能測試

stream

MaxCompute(原ODPS)開發入門指南——資料上雲篇