楊立雄
摘 要:Hadoop是一個能夠對大量數據進行分布式處理的軟件框架,它以一種可靠、高效、可伸縮的方式進行數據處理,能有效處理海量的物流數據。據此,以錦程物流網、中國物通網等物流企業(yè)為例,分析其物流數據處理。
關鍵詞:Hadoop技術;大數據;數據模型;物流信息平臺
中圖分類號:F25 文獻標識碼:A doi:10.19311/j.cnki.1672-3198.2018.31.018
1 物流信息平臺介紹
1.1 物流信息平臺分類
物流信息平臺分類辦法多種多樣。按區(qū)域分有地方性的物流信息平臺和全國性的物流信息平臺。如湖南物流信息平臺、山東物流信息平臺屬地方性的物流信息平臺;發(fā)啦網、中國物通網則是全國性物流信息平臺。按運營方可以分為主體自身運營的物流信息平臺和第三方物流信息平臺;按組織方式則分為封閉式物流信息平臺和公共物物流信息平臺。封閉式方式如電子口岸系統(tǒng)、物流監(jiān)管系統(tǒng)、貿易集散地的交易系統(tǒng)。公共物流信息平臺如發(fā)啦網、錦程物流王、福州港口物流信息平臺和南昌物流信息平臺等。
1.2 物流信息平臺基本功能
物流信息平臺對可對物流信息進行收集、存儲、處理、輸出等,成為決策的物流管理主要依據之一。以錦程物流網、中國物通網為例等。物流信息平臺主要功能有:
(1)B2B企業(yè)信息發(fā)布。
(2)OA辦公自動化系統(tǒng)。
(3)CRM客戶管理系統(tǒng)。
(4)PDOS進銷存管理系統(tǒng)。
(5)TMS車輛運輸管理系統(tǒng)。
(6)WMS倉儲管理系統(tǒng)。
(7)GPS衛(wèi)星定位系統(tǒng)等外設接口。
(8)業(yè)務系統(tǒng)接口。
(9)物流聯(lián)運指揮中心系統(tǒng)。
(10)云計算、資源統(tǒng)一管理和調度,向用戶提供按需服務。
(11)用戶信用評價。
2 Hadoop技術在海量物流數據處理中的應用
2.1 物流信息平臺基本框架
物流數據分析平臺可以分為接入層(Landing)、整合層(Integration)、表現層(Persentation)、語義層(Semantic)、終端用戶應用(End-user applications)、元數據(Metadata)。
2.2 物流信息平臺框架分析
(1)接入層(Landing):保持和物流信息系統(tǒng)相同的結構,暫存原始數據。
(2)整合層(Integration):物流企業(yè)數據經整合后進行持久存儲,創(chuàng)建物流數據存儲庫存。
(3)表現層(Presentation):針對物流企業(yè)為滿足用戶需求,提供客觀數據,建立智能數據模型即“數據集市”。
(4)語義層(Semantic):物流信息數據的表現方式、訪問控制方式。常見的有數據報表等。
(5)終端用戶應用(End-user applications):物流用戶獲得的最終結果。通過語義層工具,將表現層物流數據最終提供給用戶使用,常用的有儀表板、報表、圖表等形式。
(6)元數據(Metadata):即物流原始數據。如物流倉儲、運輸和配送等相關信息。
依靠Hadoop技術可建立物流信息數據湖。將物流數據直接存儲在HDFS、HBase或Hive內部,也可用關系型數據庫建立物流數據湖。
3 物流信息平臺數據處理流程
3.1 物流信息平臺的數據處理流程
物流數據經由外部數據的采集、分析、存儲等處理環(huán)節(jié),最終提供給終端用戶使用。流程如圖3。
3.2 物流信息平臺的數據處理方式
物流數據分析基本方式是將數據源同步到物流數據平臺的存儲體系即物流數據湖。數據首先進入到接入層,將外部數據同步到物流數據分析平臺,然后進行同步分析,物流數據同步有定時和流式同步兩種方式:
(1)定時同步變是在指定時間觸發(fā)物流數據的同步動作。
(2)流式同步即物流的外部數據通過Kafka或MQ發(fā)送數據修改通知及內容。
接入層物流數據處理過程如下:物流數據經ETL處理步驟后進入到數據倉庫,數據分析員基于物流數據倉庫的數據進行數據分析和計算,數據倉庫是所有處理的基礎。在ETL處理過程中需獎物流數據進行數據清洗、轉換,然后加載到數據倉庫,物流數據可以過濾或處理不合法、不完整的數據,數據狀態(tài)的表示要有一個統(tǒng)一的維度。物流信息平臺的在這一層就會將數據倉庫構建成數據立方體、雪花或星型模式是構建維度信息的理想選擇,錦程物流、中國物通采用了此方式。不過方式的選擇也有靈活性。有的物流信息平臺這一層只是統(tǒng)一了所有數據信息,沒有做數據立方體,如福州港口物流信息平臺和南昌物流信息等。
物流數據集市是對物流數據倉庫加工后的結果。物流數據集市通過對業(yè)務信息計算提取后得到的進一步信息,與業(yè)務人員直接打交道。是物流數據倉庫的進一步計算和深入分析的結果,構建物流數據立方體是一種理想的方式。
3.3 基于Hadoop關鍵技術的物流信息平臺的數據處理
目前,錦程物流網、中國物通網基于Hadoop技術構建的物流信息平臺的關鍵技術如下:
(1)物流數據存儲。
基于Hadoop技術的物流數據主要用到了HDFS、Hive和HBase技術。HDFS負責Hadoop平臺的文件存儲,用戶直接操縱文件是比較復雜的,使用分布式數據庫Hive或HBase構建物流數據湖,將物流數據存儲到接入層、數據倉庫、數據集市。
Hive和HBase優(yōu)勢各異:HBase是基于NoSQL數據庫,數據隨機查詢和數據擴展性能良好;而Hive是HDFS的數據庫,數據文件存放形式是HDFS文件(夾),存儲了表的存儲位置(即在HDFS中的位置)、存儲格式等元數據,Hive查詢使用SQL語言,即結構化查詢方式,查詢中可用Map/Reduce解釋或執(zhí)行,滿足物流數據作廢對物流數據分析。錦程物流網、中國物通網更多的采用這種方式。
Hive數據格式靈活多樣。常用文本格式或二進制格式。csv、json是文本格式的主要方式,二進制格式則有parquet或orc,其格式的共性是都基于行列式的存儲,查詢時性簡單方便和靈活。選擇分區(qū)(partition)技術可以過濾以減少數據量。接入層可以選擇csv或json等文本格式,常不做分區(qū),使數據同步性能更好。選擇orc或parquet數據倉庫,可以提高數據離線計算性能。
物流數據集市的處理則經常將物流數據灌回到傳統(tǒng)數據庫(RDBMS),或者停留在物流數據分析平臺,錦程物流網、中國物通網使用NoSQL技術,以支撐供數據查詢,同時平臺使用到Apache Kylin技術以構建物流數據立方體,方便SQL查詢。
(2)物流數據同步。
錦程物流網、中國物通網等通過數據同步功能將物流數據到達接入層,常用技術有Sqoop和Kafka。物流數據同步方式可分為全量同步和增量同步,物流企業(yè)物流數據規(guī)模小的表格可以采用全量同步方式,物流企業(yè)物流數據規(guī)模大的數據則采用增量同步方式。大表采用全量同步是耗時多,經常采用增量同步,將變動同步到數據平臺執(zhí)行,以達到兩邊數據一致的目的。
物流大數據全量同步使用Sqoop技術來可則通過Kafka技術等MQ流式同步物流大數據,這樣外部物流數據源也會將變動發(fā)送到MQ中。
(3) ETL及離線計算。
物流企業(yè)使用Yarn來處理物流數據,以方便統(tǒng)一管理或調度計算資源。錦程物流網、中國物通網采用Map/Reduce,Spark SQL及Spark RDD了技術,對開發(fā)人員和用戶更友好,物流數據的計算效率更高,處理速度更快,與用戶粘合性也更好。Spark on Yarn也是物流企業(yè)數據分析和處理的一種理想選擇。
此外ETL也通過Spark SQL或Hive SQL來做數據處理,Hive在2.0以后能支持存儲過程,使用起來更便捷。如果出于綜合考慮的話Saprk SQL是更理想的選擇。
參考文獻
[1]林文輝.基于Hadoop的海量網絡數據處理平臺的關鍵技術研究[D].北京:北京郵電大學,2014.
[2]鄭文博.基于Hadoop的汽車整車物流管理系統(tǒng)的設計與實現[D].天津:天津大學,2017.
[3]魏斐翡.ECLHadoop:基于Hadoop的有效電子商務物流大數據處理策略[J].計算機工程與科學,2013,35(10):65-71.
[4]王寅田.基于Hadoop的交通物流大數據處理系統(tǒng)設計與實現[D].上海:上海交通大學,2014.