


摘要:隨著中國電子商務的蓬勃發展,物流行業也隨之得到了高速發展的機會。針對物流大數據帶來的存儲容量擴張、數據存儲安全、隱私泄漏等新的問題,提出基于分布式數據庫來存儲含有不同權限級別物流數據的方法。從而滿足物流大數據的存儲需要,保證了用戶隱私的安全,解決了物流數據的存儲問題。
關鍵詞:大數據;隱私保護;分布式存儲系統;物流信息存儲
中圖分類號:TP311 文獻標識碼:A
文章編號:1009-3044(2020)08-0286-03
1 概述
隨著我國物流行業的飛速發展,物流電子信息技術化的不斷進步,物流產業也逐漸走向網絡信息化時代。截至2018年,我國物流業務量已經達到453億件,占據全球總業務量的一半。物流業務正在影響著人們的生活,使人們的生活更加美好。但是近幾年也出現了一些物流信息安全問題,一旦物流數據輕易泄漏后果將不堪設想。一些發達國家通過行業自律和頒布相關法律來解決用戶隱私泄漏問題。英國郵政管理委員會[11規定,物流的運營商必須在其許可證上明確關于郵政安全的相關條款。在國內外物流大數據的研究上,國外興起了以一種軟件模式來管理現代物流信息,比如采用SaaS(Software as aService)模式來構建物流管理系統[2]。
Rvden等人通過亞馬遜公司提供的數據安全存儲服務和數據分析服務,對物流大數據進行分析處理與存儲,得出了較為可行的適合當今物流行業的技術方案[3]。國內也提出了一些關于隱私保護的相關方案,比如一種基于二維碼與信息隱藏技術的隱私保護方案,該方案是采用信息隱藏技術將用戶信息嵌入到QR碼中,從而實現對被隱藏的信息的分級訪問權限的控制[4]。
面對我國如此龐大的物流信息,如何更加安全有效的存儲這些信息成為最嚴峻的問題。我們發現了上述的研究都忽略了這個問題,一旦服務器受到了大規模的數據泄漏,用戶的隱私信息將處于危險之中。因此物流信息如何更加安全有效的存儲至關重要。所以本文提出基于分布式數據庫來存儲含有不同權限級別物流數據的方法。該方法可以整合集群中的數據源,滿足了物流大數據的存儲需要,保證了用戶的隱私,解決了物流信息安全存儲的問題。
2 預備知識
分布式數據庫(distributed data base),主要由一組數據組成的,這組數據分布在計算機網絡中的不同的計算機上,網絡中的每個節點具有獨立處理的能力,可以執行局部應用。同時,每個節點也能通過網絡通信子系統執行全局應用。主要具有如下幾個特性:可擴展性、低成本、高性能、高可用性。
MySQL是當今使用最多的用于存儲大型數據的數據庫管理系統之一。MySQL具有如下特性:MySQL是開放源代碼的,任何人都可以獲取到其源碼,具有很好的可開發性和靈活性;它也是一款可以多跨平臺使用的數據庫,可以運行在當前市面上最常用的幾款操作系統;它具有多種存儲引擎,可以輕松處理千萬級以上的數據。比較適用用于存儲大量的用戶隱私信息。
對于存儲物流數據這種大型的互聯網應用而言,單表記錄的規模是相當大的,這對于數據的存儲和讀寫來說都是非常大的挑戰。因此我們采用搭配著數據分片技術的MySQL Replica-tion架構,可以使數據庫的吞吐能力得到了很大的提升。而數據分片我們采用水平分片,將原先一整張大的數據表通過分片算法,分布存儲到不同分庫中相同結構的子表中。這樣就可以使每一個分庫中的子表數據都被綁定在相對較小的范圍之內,處理性能得到了很大的提升。
本文中分布式數據庫存儲借助了第三方中間件MYCat[5]來做處理,通過中間件實現數據切分從而實現分布式存儲,這樣的存儲方式具有很高的效率與較好的可擴展性。
在整個分布式數據庫實現的過程中,MvCat對于基于其之上的應用只提供統一的數據庫服務器接口。MyCat通過對前臺應用發送過來的soL命令進行解析,然后通過數據分片原則將其轉移到數據庫后臺執行soL語句,當soL命令執行完畢后返回給應用。基于物流云平臺的分布式存儲數據庫的功能框架如圖1所示。
3 物流云平臺服務器分布式存儲總體設計
根據物流信息對數據存儲的要求,結合分布式數據庫的原理及特點,本文將采用MySQI+MyCat相結合的數據集群存儲方案。
針對物流行業存儲空間分布均勻,存儲數據量大,要求并發處理性能高的特點,因此給出本存儲方案的功能流程,即數據分片、數據切合與整合、SQL的解析。基于分布式存儲的總體架構如圖2所示。
3.1 存儲數據分片
在分布式存儲系統中,數據分片要達到三個目的,分布均勻、負載均衡、擴縮容時產生的數據遷移少。因此本方案采用水平分片的策略。
分片規則的選取是在物流信息存儲過程中需要解決的重點問題,在將數據進行水平分片時,應該結合物流信息存儲量大、分段加密信息難度大、要求性能高等特點。所以應選擇合適的分片規則。因此本方案提出預選的分片規則如下:
1)哈希取模分片
先計算Key的哈希值,再對設備數量取模。設目前有n臺設備,編號為O-n-1,通過Hash(Key)o-/on就可以確定該數據所在的設備編號。哈希取模分片既可以保證數據分布的均衡性,又能夠保證數據分布的均衡性,但是缺點是對數據的遷移量大、操作復雜[6]。
2)劃分號段分片
劃分號段分片又被稱為范圍分片。這種一般適用于Key值為整型的情況,每臺設備上存放著相同大小的范圍區間,如把Key值范圍為f1,5000]的數據放在第一臺設備上,把Key為[5001,10000]的數據放在第二臺設備上,依次類推。MyCat中定義分片字段的范圍與分片的映射關系如下:
1-5000=0
5001-10000=1
10001-15000=2
這種方法實現很簡單,擴容也比較方便,成倍增加設備即可,如原來有n臺設備,再新增n臺設備來擴容,把每臺老設備上一半的數據遷移到新設備上,原來號段為[1,10000]的設備,擴容后只保留號段[1,5000]的數據,把號段為[5001,10000]的數據遷移到一臺新增的設備上。但是缺點是數據的分布可能不均勻,導致訪問具有很大的隨機性,無法平衡各點之間的訪問壓力。
3) 一致性哈希分片
一致性哈希算法是在原先離散的哈希算法基礎上拓展為一定的范圍,它在移除或者添加一個Cache時,可以盡可能小的改變已存在Key映射關系,盡可能地滿足單調性的要求。
而本方案將會用一致性哈希環的數據結構。首先構建一個Hash空間,即構建一個首(0)尾(2^32-1)相接的圓環。再把對象映射到Hash空間通過Hash函數計算出的Hash值Key在環上的分布。即如下關系:
Hash(objectl)= Keyl;
Hash(object4)= Key4;
最后把Cache映射到Hash空間。
一致性哈希分片雖然很好地解決了集群擴展問題,但是仍然存在數據分布不均衡的情況,因此無法平衡各點的訪問壓力。
綜上,由于物流信息量龐大,并發訪問量高,需要數據分布具有較高的均衡性,所以本系統采用哈希取模的規則進行水平分片。
3.2 數據切分與整合
根據上文提到的采用哈希取模分片獲取分布較為平衡的數據。之后需要借助MyCat對數據庫表進行數據切分和整合,即在切分存儲在數據庫中,同時對外開放統一的MySQL訪問接口。而切分又分為橫向切分和垂直切分,我們采取橫向垂直相結合的切分方法,實現在不同場景的數據分布式存儲。通過配置schema.xml和rule.xml文件,結合業務的特點動態實現分片規則,以實現物流數據存儲的業務要求。基本流程的基本原理如圖3所示。
3.3 SQL解析
SQL的解析原理是:首先接收用戶前段發來的SQL語句,先由MyCat處理。之后MyCat對SQL語句的分片函數進行解析,并通過前文提到的分片規則得到需要實際處理該SQL語句的表,最后根據哈希模分片規則找到相對應的存儲節點,讓數據庫執行SQL語句。執行結束后獲取查詢結果,將處理后的節點按照分片規則在MyCat上進行整合和處理,最后將結果返回給用戶。MyCat查詢流程如圖4所示。
4 基于數據分級加密的安全存儲方法
根據完成物流業務的實際需求,所以將數據設置不同級別的權限。這樣相關物流工作人員從數據庫中提取數據不需要也沒有權限提取全部的客戶信息,只需要提取其相關負責的業務信息。也就是說業務員只需要提取他需要的為下一個節點服務的當前節點的數據,大大提高了用戶隱私數據的安全性。
該原理的主要思想是:將個人隱私信息加密存儲[7],同時給物流中轉流程中的節點收件人、節點發件人、配件人、派件人設置從1到Ⅳ的不同權限級別,之后自動將物流個人隱私按照相應的物流中轉機制將信息分割為中轉節點,組成相關的業務表單數據,從而完成物流中轉過程中的工作人員的業務操作。這樣預防了因物流員工控制混亂而導致的用戶隱私泄漏等情況的發生。關于數據安全存儲方法如圖5所示。
5 實驗驗證
5.1 實驗環境
為驗證MyCat分布式數據庫性能與可用性,本實驗采用8臺服務器模擬搭建物流信息管理分布式數據庫,并通過配置好的軟件對數據庫標準查詢性能以及HAProxy可用性進行測試,具體的軟件配置如下:
操作系統:CentOS-6.5-x86_64(Windows下可通過Cygwin進行配置1
JDK: jdkl.7.0_80
HAproxy: HAproxy-1.5.19
Mycat: Mycat-server-I.6
Keepalived: Keepalived-I.2.18
MySQL: Mysql-5.6
5.2 實驗結果
通過將分布式數據庫設置在1000線程下,模擬請求查詢n條隨機數據,查詢結果見表1所列。
通過對比實驗,將分布式數據庫與集中式數據庫進行比較,可以看出分布式系統查詢效率比單節點提升了接近一倍,這樣在查詢像物流信息這樣龐大的數據時,能極大地降低訪問的延時性,擴展了整體存儲空間,提高了性能。
6 結束語
本文針對物流信息系統中數據的安全存儲問題進行了簡單分析,介紹了使用開源框架MyCat和MySQL搭建分布式數據庫環境解決龐大的物流數據量的存儲問題。并且采用了模擬實驗驗證了該方法的有效性和可行性,解決了現存的一些關于數據存儲及安全性的問題。
隨著物流快遞的飛速增長,本文提到的方案還有很多研究上的不足,比如效率以及安全等問題,還需要進一步的深入研究。
參考文獻:
[1] Solove D J,Hartzog W. The FTC and the New Common Lawof Privacy[J]. Columbia Law Review. 2014, 114 (3):583-676.
[2] Boyaci B,Zografos K.et al.An optimization framework for thedevelopment of effcient one-way carsharing system[J].Europe-an Journal of Operational Research, 2015, 240(3):718-733.
[3] Gaunitz B J,Roth M,Franczyk B.Dynamic and scalable real-time analysis in logistics combining Apache Storm with Com-plex Event Processing for enabling new business models in lo-gistics[C].Evaluation of Novel Approches to Sofiware Engineer-mg。2015:289-294.
[4] ZHANG X,Ll H,YANG Y,et al.LIPPS: logistics informa-tion privacy protection system Based on encrypted QR code[C]//IEEE Trustcom/BigDataSE/lSPA. 2016: 996-1000.
[5]周繼鋒,馮鉆優,陳勝尊.分布式數據庫框架及企業實踐:基于Mycat中間件[M].北京:電子工業出版社,2016.
[6]吳曉龍.高可用性集群系統在醫院信息系統中的應用[J].廣西科學院報.2002,2(18,1):19-21.
[7] Zhang Lei,Li Jing,Yang Songtao,Wang Bin.Privacy preservingin cloud environment for obstructed shortest path query. Wire-less personal communications.2017,96(issue2):2305-2322.
【通聯編輯:王力】
基金項目:省級創業創新項目(201910222093)
作者簡介:張馳(1998-),男,黑龍江齊齊哈爾人,佳木斯大學信息電子技術學院計算機科學與技術專業學生,本科,研究方向為信息安全、大數據分析。