姚 敏
(重慶圖書館,重慶 400037)
隨著互聯(lián)網(wǎng)、物聯(lián)網(wǎng)和云計算的極速發(fā)展,社會早已步入知識信息經(jīng)濟(jì)時代。信息網(wǎng)絡(luò)無疑是知識經(jīng)濟(jì)發(fā)展的基礎(chǔ),而它的核心是信息來源,即數(shù)字圖書館?;谕ㄐ偶夹g(shù)、計算機(jī)網(wǎng)絡(luò)技術(shù)和數(shù)字化信息,構(gòu)建一個交互可拓展的平臺、大規(guī)模的知識庫集群。爆炸式增長的數(shù)據(jù)規(guī)模,也為構(gòu)建安全、可靠、大規(guī)模的新型圖書館科學(xué)數(shù)據(jù)倉儲提出了新的機(jī)遇和挑戰(zhàn)。在大數(shù)據(jù)背景下,如何保障數(shù)據(jù)的真實性和較高要求的數(shù)據(jù)存儲容量,如何更有力地保護(hù)用戶的安全性和隱私性,對于數(shù)字圖書館科學(xué)數(shù)據(jù)倉儲性能的要求更高。在《中國區(qū)塊鏈技術(shù)和應(yīng)用發(fā)展白皮書2016》中,區(qū)塊鏈(Blockchain)是采取分布式數(shù)據(jù)存儲技術(shù)、共識機(jī)制、點對點傳輸、加密算法等計算機(jī)技術(shù)的新型模式。區(qū)塊鏈科學(xué)研究所創(chuàng)始人Melanie Swan認(rèn)為,區(qū)塊鏈本質(zhì)上是一個公開賬本,有潛力實現(xiàn)全球性的、去中心化的有形和無形資產(chǎn)的登記、編冊和轉(zhuǎn)讓記錄。區(qū)塊鏈技術(shù)在數(shù)據(jù)管理、數(shù)據(jù)保護(hù)、用戶隱私保護(hù)等方面,為建立新型圖書館科學(xué)數(shù)據(jù)倉儲指明了新的發(fā)展方向。
傳統(tǒng)情況下存儲數(shù)據(jù)的有效性和真實性基本上都是由中心系統(tǒng)或第三方實體的信任來決定的,譬如處于系統(tǒng)中心位置的主節(jié)點、核心地位的數(shù)據(jù)庫,這個可信度還取決于它們的維護(hù)者及其他因素。然而,若其中某一環(huán)節(jié)破壞了數(shù)據(jù)的真實性,那么這個失真的數(shù)據(jù)將會變得很難甄別。而通過不接受單一方面控制的去中心化和無需信任的方式,使得所有集體參與者得以共同擁有、管理和監(jiān)督一個可靠新型數(shù)據(jù)架構(gòu)的區(qū)塊鏈技術(shù)[1-3],無疑可以很好地解決這個問題。
就其實質(zhì)而言,它是采取分布式技術(shù)與共識算法來構(gòu)造出一個全新的信任機(jī)制,利用密碼學(xué)的方法相互關(guān)聯(lián)形成一串串的數(shù)據(jù)塊,一次網(wǎng)絡(luò)交易的數(shù)據(jù)就保存在一個對應(yīng)的數(shù)據(jù)塊里面,起到驗證其數(shù)據(jù)的真實性并且產(chǎn)生一個新的區(qū)塊。簡單來說,區(qū)塊鏈就是一個交易賬本,而這個賬本是由全體參與者一起來維護(hù)的[4]。這個賬本數(shù)據(jù)的公開性可以讓全體參與者實現(xiàn)共同校驗交易與記賬的真實性,這樣的賬本有能力防止惡意篡改,成為全體參與者互信的橋梁。
區(qū)塊鏈主要有4種特征分別為:去中心化、時序數(shù)據(jù)、全體維護(hù)、可編程及真實可信等。簡而言之,去中心化與去信任的核心特征,可以達(dá)到很好地處理共享經(jīng)濟(jì)在發(fā)展期間的信息不可避免的全球不對稱、人與人之間的互信問題、交易流程繁雜導(dǎo)致成本高昂等問題。因此,區(qū)塊鏈技術(shù)被稱為是激起第五次變革人類社會生產(chǎn)的技術(shù)。顯然,區(qū)塊鏈含有兩部分“數(shù)據(jù)塊”和“鏈接”,在每一數(shù)據(jù)塊都帶有著系統(tǒng)某時段內(nèi)所加密過的交易備用數(shù)據(jù);鏈接便是上一個區(qū)塊鏈接到下一個區(qū)塊的數(shù)據(jù)關(guān)系,這兩部分形成了區(qū)塊鏈。一個系統(tǒng)在某個指定時段所有進(jìn)行過的數(shù)據(jù)都在一個特定的區(qū)塊中,故而,每個區(qū)塊都處于同等的地位,某一區(qū)塊的損壞并不造成整個系統(tǒng)的安全問題,因此,區(qū)塊鏈也具有去中心化、可靠數(shù)據(jù)庫的特征;同時,每個區(qū)塊也都包含了整個系統(tǒng)內(nèi)的全部信息。如此,也許能夠通過交叉驗證數(shù)據(jù)的真實性,進(jìn)一步保障區(qū)塊鏈中[5]數(shù)據(jù)的有效性,又兼有去信任、集體維護(hù)的典型特征。
20世紀(jì)60年代,傳統(tǒng)文件方式已經(jīng)難以適應(yīng)處理巨大信息數(shù)據(jù),數(shù)據(jù)庫技術(shù)順應(yīng)需求而產(chǎn)生。指數(shù)式增長的數(shù)據(jù)左右著人們的決斷,數(shù)據(jù)交換量速度的極大膨脹,不利于快速有效地進(jìn)行決策,故而,人們需要繼續(xù)拓展數(shù)據(jù)庫處理技術(shù)。伴隨著互聯(lián)網(wǎng)的產(chǎn)生,人們對數(shù)據(jù)的處理能力發(fā)生了巨大變化。
數(shù)據(jù)倉儲(Data Warehouse,DW)概念的創(chuàng)始人W.H.Inmom認(rèn)為:數(shù)據(jù)倉儲是面向主題的、集成的、穩(wěn)定的、隨時間變化的數(shù)據(jù)集合。數(shù)據(jù)倉儲技術(shù)是為了創(chuàng)立一種體系化的數(shù)據(jù)存儲空間,也是對原生數(shù)據(jù)的再次加工與處理,進(jìn)而生成能夠用來進(jìn)行數(shù)據(jù)分析的技術(shù)。
數(shù)據(jù)倉庫是面向主題的數(shù)據(jù)集合,具有相對穩(wěn)定性且能夠反映歷史變化。首先,從面向事務(wù)處理任務(wù)的數(shù)據(jù)庫中組織數(shù)據(jù),根據(jù)特定的主題領(lǐng)域處理數(shù)據(jù)倉庫中的數(shù)據(jù),以主題為基礎(chǔ)對不同領(lǐng)域的數(shù)據(jù)進(jìn)行分類。其次,數(shù)據(jù)是在對原數(shù)據(jù)的抽取、清理后,二次加工得到的。數(shù)據(jù)倉庫主要供企業(yè)決策分析,數(shù)據(jù)需要按時的更新。最后,系統(tǒng)記錄了服務(wù)對象各個時段的數(shù)據(jù),由此,可以利用不同時段的數(shù)據(jù)對研究對象進(jìn)行分析,并進(jìn)行發(fā)展趨勢的預(yù)測。
現(xiàn)代高校圖書館的知識與大數(shù)據(jù)技術(shù)[6]的高度融合、發(fā)展迅速,故而,如何進(jìn)行圖書館館藏資源的高效處理、維護(hù)和利用顯得尤為重要,這也是其發(fā)展中不得不處理的關(guān)鍵所在。數(shù)據(jù)倉儲技術(shù)在科學(xué)數(shù)字圖書館的基礎(chǔ)工作中起著決定性作用。數(shù)據(jù)倉庫為圖書館信息檢索和檢索服務(wù)提供數(shù)據(jù)載體,還能夠提供各種圖書訂購渠道等。當(dāng)下,讀者提出的檢索范圍要求具有不斷擴(kuò)大的知識領(lǐng)域還有知識難度增加等特點。如此,要滿足讀者要求,就需要圖書館從業(yè)人員有廣泛的知識,強(qiáng)大的專業(yè)技能,重中之重是精通信息技術(shù)。數(shù)據(jù)倉儲技術(shù)能夠為數(shù)字圖書館的建立和開發(fā)提供有力的技術(shù)支持。
分布式數(shù)據(jù)庫系統(tǒng)技術(shù)[7]是基于以下假定,第一個假定是使每個站點上的計算機(jī)是專用工作站或服務(wù)器。在數(shù)據(jù)庫管理中,數(shù)據(jù)服務(wù)器可采用計算機(jī)來進(jìn)行并行處理具有優(yōu)越性,能夠增強(qiáng)整體性能。第二個假定是在并行數(shù)據(jù)服務(wù)器中采取分布式數(shù)據(jù)庫技術(shù)。數(shù)據(jù)庫技術(shù)的發(fā)展推進(jìn)了對于新應(yīng)用領(lǐng)域的支持。這些應(yīng)用領(lǐng)域需要多方面性能的改進(jìn)。數(shù)據(jù)倉庫的建立是基于更加全面和完整的信息應(yīng)用基礎(chǔ),目的是在高層次的決策分析中起到支持作用,事務(wù)處理庫負(fù)責(zé)企業(yè)信息中的常規(guī)性運(yùn)營任務(wù)。
分布式數(shù)據(jù)庫系統(tǒng),在于高功能計算機(jī)系統(tǒng)可以由幾個較小和功能較弱的計算機(jī)系統(tǒng)代替。在于每一個站點可以由相同的局部系統(tǒng)管理,每一個站點都要設(shè)法實現(xiàn)全局?jǐn)?shù)據(jù)目錄,分布數(shù)據(jù)定義和控制,分布查詢處理和分布事務(wù)管理。通過高速互聯(lián)總線和并行處理,可以增強(qiáng)性能,即提高吞吐率,吞吐率可以用每秒處理聯(lián)機(jī)事務(wù)的個數(shù)來度量。由于這個指標(biāo)與數(shù)據(jù)的分片站點個數(shù)成線性關(guān)系,數(shù)據(jù)分片站點個數(shù)增加一倍將導(dǎo)致吞吐率增加一倍。這一性能的改進(jìn)可以通過采用如下兩個方案得到解決。第一,數(shù)據(jù)應(yīng)該被精心地分片和定位于多個站點上,這樣在處理分布式查詢時可以達(dá)到最大程度的并行性。第二,分布式數(shù)據(jù)管理[8]應(yīng)該利用分布式數(shù)據(jù)庫操作系統(tǒng)有效地進(jìn)行支持??蓴U(kuò)展性是指當(dāng)增加新站點時能平滑地擴(kuò)展系統(tǒng)。與同構(gòu)分布式數(shù)據(jù)庫系統(tǒng)類似,不管它們的規(guī)模大小,都可采用同樣的管理模式。
在數(shù)據(jù)倉庫中存在不同級別的集成,通常稱為“粒度”。粒度越大,能描述的細(xì)節(jié)水平越低,集成度越高。劃分粒度是數(shù)據(jù)倉庫設(shè)計中的一個關(guān)鍵問題。在數(shù)據(jù)倉庫環(huán)境中,主要使用分析處理的類型,層次結(jié)構(gòu)的詳細(xì)程度直接影響數(shù)據(jù)倉庫中的數(shù)據(jù)量和相應(yīng)的查詢類型。使用分段數(shù)據(jù)的優(yōu)點是查詢只對必要的數(shù)據(jù)段進(jìn)行切割存取,并且可以從表中快速地添加或刪除整個數(shù)據(jù)段??茖W(xué)數(shù)字圖書館的數(shù)據(jù)倉庫只需存儲活動的,以及最近的存取數(shù)據(jù),這能夠顯著減少數(shù)據(jù)倉庫的維護(hù)負(fù)擔(dān)。經(jīng)過數(shù)據(jù)倉庫技術(shù)的分析很容易發(fā)現(xiàn),數(shù)據(jù)倉庫的強(qiáng)大數(shù)據(jù)處理能力和穩(wěn)定性能夠有效促進(jìn)高校圖書館館藏資源的開發(fā)利用。
互聯(lián)網(wǎng)使全球互動日益緊密,隨之而來的便是信息的可靠性以及信任問題。如今,現(xiàn)存的核心數(shù)據(jù)庫架構(gòu)是私有的、分散的,在這種情況下,傳遞價值和互信的問題自然難以解決。故而,區(qū)塊鏈技術(shù)無疑能夠成為新的數(shù)據(jù)倉儲架構(gòu),并且能夠很好地解決這個難題。區(qū)塊鏈技術(shù)能夠使得科學(xué)數(shù)字圖書館系統(tǒng)建設(shè)模式拓展到更大的領(lǐng)域范圍,如全國數(shù)字圖書平臺,管理人員通過基于區(qū)塊鏈開放式界面開發(fā)本圖書館的應(yīng)用系統(tǒng),并能夠補(bǔ)充館中書籍?dāng)?shù)據(jù)的上傳和導(dǎo)入。所有對區(qū)塊鏈的訪問都是通過公鑰和私鑰進(jìn)行,公鑰是授權(quán)用戶(如圖書館)訪問數(shù)據(jù)的權(quán)限,私鑰是個人用戶對其數(shù)字圖書數(shù)據(jù)的許可權(quán)。區(qū)塊鏈的分布式數(shù)據(jù)存儲以及去中心化可以使數(shù)據(jù)更安全可靠。
圖1 基于區(qū)塊鏈技術(shù)的圖書館數(shù)據(jù)倉儲
發(fā)送區(qū)塊鏈的鏈上圖書數(shù)據(jù)交易鏈上的交易是指進(jìn)入圖書館數(shù)據(jù)倉儲區(qū)塊鏈記錄的去中心化、防篡改的交易。在區(qū)塊鏈中存入數(shù)字簽名時,能夠利用哈希算法先獲取一串定長的字符串,也就是該用戶上傳的數(shù)字簽名。然后,在區(qū)塊鏈上進(jìn)行的圖書信息的交易數(shù)據(jù),將數(shù)字簽名保存到區(qū)塊鏈上。流程如下:設(shè)定圖書館用戶發(fā)送方為主公鑰的地址,收款方為提供數(shù)據(jù)資源的用戶方的公鑰地址;在主公鑰地址上檢索并選擇輸出一個適當(dāng)?shù)慕灰醉?,然后,把這個數(shù)字簽名存入數(shù)據(jù)庫中。驗證首先對待上傳的數(shù)據(jù)進(jìn)行封包,這個簽名的依據(jù)是把私鑰地址與數(shù)據(jù)先匹配分析,然后把所得結(jié)果再進(jìn)行哈希運(yùn)算;其次,可以選用公鑰地址及簽名對數(shù)據(jù)的有效性進(jìn)行校驗。在圖2中節(jié)點A可以直接把交易發(fā)送給節(jié)點C,然后,區(qū)塊鏈中的全體節(jié)點共同確認(rèn)再一起驗證這筆交易的真實性,繼而便可以在更新公共總賬后,最后全體的節(jié)點一起同步一下最新的總賬。這樣交易真實性可以通過加密過的算法來保證賬本一致,這樣維護(hù)好這一條總賬便能夠?qū)崿F(xiàn)數(shù)據(jù)的真實有效。得到一個區(qū)塊鏈的“交易縮影”值就可以生成新的區(qū)塊鏈。
圖2 圖書館數(shù)據(jù)更新流程
在基于區(qū)塊鏈基礎(chǔ)上構(gòu)建的科學(xué)數(shù)字圖書館數(shù)據(jù)倉儲中,相鄰的區(qū)塊之間必然是依照時序銜接而成。每個區(qū)塊都可以引用前面相鄰的區(qū)塊結(jié)構(gòu),這樣能夠使所有的區(qū)塊構(gòu)成一個長鏈狀的分布式數(shù)據(jù)鏈。從第一個區(qū)塊起,到最近時期產(chǎn)生的區(qū)塊為止,系統(tǒng)內(nèi)所有的歷史交易數(shù)據(jù)都保存在了區(qū)塊鏈上。為我們提供了數(shù)據(jù)倉儲內(nèi)記錄的每一筆數(shù)據(jù)的查找功能,區(qū)塊鏈上的每筆交易數(shù)據(jù)都能夠利用區(qū)塊鏈的結(jié)構(gòu)來找到原始數(shù)據(jù),從而驗證數(shù)據(jù)的真實性。此外,區(qū)塊鏈的數(shù)據(jù)倉儲能夠利用時間點在每一個區(qū)塊上進(jìn)行記賬,來表示這個數(shù)據(jù)的錄入時間,形成一個不可偽造的數(shù)據(jù)倉儲。這樣可以保證數(shù)據(jù)質(zhì)量,而且偽造成本高,如此可以實現(xiàn)數(shù)據(jù)倉儲的質(zhì)量控制。
基于區(qū)塊鏈的圖書館數(shù)據(jù)倉儲中交流數(shù)據(jù)的驗證、存儲和維護(hù)等過程采取分布式的系統(tǒng)結(jié)構(gòu),選取分布式各個節(jié)點間的去信任的關(guān)系,來產(chǎn)生去中心化的真實有效性的分布式系統(tǒng)。在圖書館的圖書交易中,各個用戶與館員可以在該模型系統(tǒng)中進(jìn)行信息交流并系統(tǒng)能夠通過共識算法來選取特定的節(jié)點將新信息流數(shù)據(jù)區(qū)塊添加到區(qū)塊鏈中。特殊的圖書館用戶還能夠利用區(qū)塊鏈技術(shù)可編輯的腳本代碼系統(tǒng)來創(chuàng)建新的交易類型等。譬如,Ethereum平臺即供給用戶創(chuàng)建能夠?qū)崿F(xiàn)更加精細(xì)化的交易類型的圖靈腳本代碼。
科學(xué)數(shù)字圖書館是大數(shù)據(jù)信息化技術(shù)的一個綜合性極強(qiáng)的集成系統(tǒng)。數(shù)據(jù)倉儲技術(shù)與區(qū)塊鏈技術(shù)的結(jié)合為擁有大量的科學(xué)數(shù)字資源的圖書館提供了長期數(shù)據(jù)保留的安全性和效率的保障。