黃玉昌
摘要:隨著我國經(jīng)濟(jì)及信息技術(shù)的快速發(fā)展,信息系統(tǒng)已廣泛應(yīng)用于商業(yè)銀行的管理、生產(chǎn)等領(lǐng)域,同時銀行內(nèi)部各系統(tǒng)間的文件傳輸需求也在成倍增長,單純依靠增加網(wǎng)絡(luò)帶寬已很難滿足文件傳輸需求。數(shù)據(jù)壓縮技術(shù)可有效降低數(shù)據(jù)的實(shí)際傳輸量,且實(shí)現(xiàn)成本較低。該文在研究成熟的數(shù)據(jù)壓縮算法基礎(chǔ)上,提出了一種適用于商業(yè)銀行內(nèi)部系統(tǒng)間的“邊壓邊傳”的數(shù)據(jù)壓縮傳輸解決方案,并進(jìn)行了實(shí)現(xiàn)和驗(yàn)證。
關(guān)鍵詞:數(shù)據(jù)壓縮;商業(yè)銀行;文件傳輸;邊壓邊傳
中圖分類號:TN911.2 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2018)08-0200-01
1引言
隨著信息技術(shù)在商業(yè)銀行管理、生產(chǎn)等領(lǐng)域的不斷發(fā)展應(yīng)用,大量的信息系統(tǒng)也相繼建成使用。出于客戶需求、業(yè)務(wù)發(fā)展、異地災(zāi)備等各種因素考慮,這些系統(tǒng)往往會跨區(qū)域分布部署。系統(tǒng)間的大量文件交互,導(dǎo)致數(shù)據(jù)傳輸需求增長和實(shí)際網(wǎng)絡(luò)帶寬增長比例失調(diào),受限于網(wǎng)絡(luò)帶寬限制,特別是很多網(wǎng)點(diǎn)分布在偏遠(yuǎn)欠發(fā)達(dá)地區(qū),網(wǎng)絡(luò)帶寬過低,很多實(shí)時性要求較高的數(shù)據(jù)往往不能夠及時送達(dá),影響業(yè)務(wù)辦理。
為滿足數(shù)據(jù)傳輸、存儲的爆炸式增長,人們一直在致力于開發(fā)更好的傳輸與存儲技術(shù),并已經(jīng)取得了很大進(jìn)步,可以在無壓縮情況下存儲和傳輸越來越多的信息。但根據(jù)帕金森第一法則的推論,對大容量存儲與傳輸能力需求的增長,至少是存儲與傳輸能力增長速度的兩倍。
“信息爆炸”促使了壓縮技術(shù)的快速發(fā)展和廣泛應(yīng)用,而壓縮技術(shù)也成為了解決存儲能力和傳輸能力不足的一大利器。
2數(shù)據(jù)壓縮技術(shù)
2.1數(shù)據(jù)壓縮原理
數(shù)據(jù)壓縮就是以最小的數(shù)碼(比特數(shù))表示信源所發(fā)出的信號,減少必須分配給指定消息集合或數(shù)據(jù)采樣集合的信號空間的數(shù)值。信號空間,即數(shù)據(jù)壓縮的對象,它可以是:物理空間,如內(nèi)存、磁盤、光盤等數(shù)據(jù)存儲介質(zhì);時間間隔,如傳輸特定大小消息所需要的時間;電磁頻譜波段,為特定時間傳輸特定大小消息所需要的帶寬。因此,信號空間是指給定消息集合所占的空域、時域和頻域空間。這些形式的信號空間是相互關(guān)聯(lián)的,存儲空間的減少意味著傳輸時間的減少或帶寬的減少。數(shù)據(jù)壓縮的本質(zhì)就是設(shè)法去掉各種冗余(如空間冗余、時間冗余、信息熵冗余),保留真正有用的信息。從數(shù)學(xué)的角度來說,就是將原始數(shù)據(jù)轉(zhuǎn)換為從統(tǒng)計角度盡可能不相關(guān)的數(shù)據(jù)集。
2.2數(shù)據(jù)壓縮算法
數(shù)據(jù)壓縮算法有多種分類方法,最常用的按照數(shù)據(jù)的可逆性分為無損壓縮和有損壓縮。無損壓縮指對壓縮后的數(shù)據(jù)進(jìn)行重構(gòu),重構(gòu)后的數(shù)據(jù)與原數(shù)據(jù)完全相同。一般要求重構(gòu)的數(shù)據(jù)與原始數(shù)據(jù)完全一致的場合,如對文本數(shù)據(jù)、可執(zhí)行程序等的壓縮。常用的無損壓縮算法有行程編碼、哈夫曼編碼、LZ77及其變種等等,有損壓縮指使用壓縮后的數(shù)據(jù)進(jìn)行重構(gòu),重構(gòu)后的數(shù)據(jù)與原來的數(shù)據(jù)有所不同,但不會影響人對原始數(shù)據(jù)表達(dá)信息的理解,常用的有損壓縮算法有JPEG、MPEG、MP3等等。
3基于傳輸過程的數(shù)據(jù)壓縮
3.1傳統(tǒng)預(yù)壓縮技術(shù)
預(yù)壓縮即在文件傳輸前進(jìn)行預(yù)先壓縮,無損預(yù)壓縮可以在不改變信息總量前提下有效降低傳輸數(shù)據(jù)量,提高文件的網(wǎng)絡(luò)傳輸效率,而且各平臺均有成熟的壓縮軟件可供使用。但預(yù)壓縮需要消耗額外的磁盤空間來存放壓縮后的文件,而這些壓縮后的文件可能僅供傳輸使用,這對于存儲介質(zhì)來說是一筆不小的開銷。
3.2邊壓邊傳技術(shù)
邊壓邊傳則在傳輸過程中實(shí)現(xiàn)了數(shù)據(jù)的壓縮,發(fā)送方將文件從磁盤讀取到內(nèi)存后,先對數(shù)據(jù)進(jìn)行壓縮,然后發(fā)出,接受方先對接受到的數(shù)據(jù)先進(jìn)行解壓縮,然后再存入磁盤,邊壓邊傳可以消除額外的磁盤消耗,且傳輸中的數(shù)據(jù)一定程度上實(shí)現(xiàn)了加密,有利于數(shù)據(jù)安全傳輸,但需要收發(fā)雙方安裝使用相同壓縮及解壓縮算法的傳輸工具,適合企業(yè)內(nèi)部開發(fā)使用。
3.3商業(yè)銀行文件傳輸壓縮方案選取
商業(yè)銀行各系統(tǒng)間傳輸?shù)奈募酁閳蟊?、賬務(wù)性文本文件,這類文件要求收發(fā)雙方的數(shù)據(jù)內(nèi)容完全一致,所以只能選擇無損壓縮算法。商業(yè)銀行各系統(tǒng)部署平臺多元化導(dǎo)致預(yù)壓縮在使用中極為不便,例如windows系統(tǒng)壓縮軟件產(chǎn)生的.rar文件在UNIX或LINUX系統(tǒng)中無法使用,同時考慮到減少存儲空間的額外消耗,開發(fā)使用基于數(shù)據(jù)壓縮的傳輸工具更為合適。
4壓縮效果測試
4.1壓縮評價指標(biāo)
壓縮比是衡量無損壓縮算法系統(tǒng)性能好壞的一個常用指標(biāo)。其定義為:
CR又稱bpc(bit percent character),表示壓縮一個字符平均所需的比特數(shù)。
4.2傳輸數(shù)據(jù)壓縮實(shí)驗(yàn)
本次實(shí)驗(yàn)使用模擬商業(yè)銀行賬務(wù)數(shù)據(jù)的可讀性文本文件5個,大小從50MB到300MB不等,文件總大小為800MB。分別針對主流的無損壓縮算法Gzip、Deflate、Snappy、LZ4進(jìn)行了壓縮測試,實(shí)驗(yàn)工具使用JAVA語言編寫,對實(shí)際網(wǎng)絡(luò)傳輸數(shù)據(jù)大小進(jìn)行了統(tǒng)計輸出,以上四種壓縮算法均有成熟穩(wěn)定的Java包可供引用。實(shí)驗(yàn)機(jī)器為兩臺ThinkPad E450(CORE 15,4G內(nèi)存),兩臺機(jī)器通過千兆局域網(wǎng)連接。實(shí)驗(yàn)結(jié)果如下:
通過表1中各壓縮算法的壓縮比實(shí)驗(yàn)可以發(fā)現(xiàn)幾種主流無損壓縮算法針對文本文件的壓縮比在2.5到6之間,壓縮比與采用主流壓縮軟件進(jìn)行預(yù)壓縮的效果相當(dāng)。但本文采取的傳輸過程中壓縮方式無需額外的存儲消耗。
5小結(jié)
本文針對商業(yè)銀行中的文件傳輸需求,提出了不同于傳統(tǒng)預(yù)壓縮的“邊壓邊傳”解決方案,并進(jìn)行了壓縮效果驗(yàn)證。實(shí)驗(yàn)證明,傳輸中壓縮可以在無需額外存儲消耗的情況下達(dá)到與預(yù)壓縮軟件同樣的壓縮效果。該方案已在某農(nóng)村商業(yè)銀行進(jìn)行了成功實(shí)施,有效緩解了網(wǎng)絡(luò)帶寬不足對大量文件的及時傳輸帶來的壓力。