胡勇祥
摘? 要: 傳統(tǒng)的智慧圖書館推送系統(tǒng)由于圖書館信息資源量過(guò)大,導(dǎo)致所需推送時(shí)間過(guò)長(zhǎng),為此設(shè)計(jì)一種基于大數(shù)據(jù)驅(qū)動(dòng)的智慧圖書館推送系統(tǒng)。通過(guò)應(yīng)用表示層、業(yè)務(wù)邏輯層和數(shù)據(jù)存儲(chǔ)層完成系統(tǒng)總體架構(gòu)設(shè)計(jì)。根據(jù)系統(tǒng)架構(gòu),通過(guò)用戶終端、交換機(jī)、服務(wù)器和數(shù)據(jù)存儲(chǔ)器等完成系統(tǒng)硬件設(shè)計(jì);通過(guò)設(shè)計(jì)系統(tǒng)的功能模塊,利用MapReduce分析計(jì)算用戶信息、爬蟲技術(shù)爬取與用戶需求相關(guān)的圖書館信息,完成系統(tǒng)軟件設(shè)計(jì)。至此,完成基于大數(shù)據(jù)驅(qū)動(dòng)的智慧圖書館推送系統(tǒng)設(shè)計(jì)。實(shí)驗(yàn)結(jié)果表明,與傳統(tǒng)的智慧圖書館推送系統(tǒng)相比,提出的基于大數(shù)據(jù)驅(qū)動(dòng)的智慧圖書館推送系統(tǒng)能夠更快速地為用戶推送信息。
關(guān)鍵詞: 智慧圖書館; 推送系統(tǒng); 系統(tǒng)設(shè)計(jì); 大數(shù)據(jù)驅(qū)動(dòng); 信息提取; 對(duì)比驗(yàn)證
中圖分類號(hào): TN919?34; TP39? ? ? ? ? ? ? ? ? ? ?文獻(xiàn)標(biāo)識(shí)碼: A? ? ? ? ? ? ? ? ? ? ?文章編號(hào): 1004?373X(2020)20?0102?03
Design of smart library push system based on big data driver
HU Yongxiang
(Huanggang Normal University, Huanggang 438000, China)
Abstract: As the traditional smart library push system takes too much push time due to the excessive amount of library information resources, a smart library push system based on big data driver is designed. The overall system architecture design is completed by the application of presentation layer, business logic layer and data storage layer. According to the system architecture, the system hardware design is completed by means of the user terminal, switch, server, data storage, etc. By designing the functional modules of the system, MapReduce is used to analyze and calculate user information, and crawler technology is used to crawl library information related to user needs, so as to complete the software design of system. Thus the design of smart library push system based on big data driver is completed. The experimental results show that, in comparison with the traditional smart library push system, the proposed smart library push system based on big data driver can push information for users more quickly.
Keywords: smart library; push system; system design; big data driver; information extraction; comparison validation
0? 引? 言
智慧圖書館是將智能技術(shù)運(yùn)用到圖書館建設(shè)中而形成的智能化圖書館[1?2]。在智慧圖書館的建設(shè)中,智慧圖書館推送系統(tǒng)是其中的核心系統(tǒng)之一,該系統(tǒng)通過(guò)感知和預(yù)測(cè)讀者的需求,為讀者提供智慧化的、高精準(zhǔn)度的資源和服務(wù)[3?4]。隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展,信息資源的數(shù)量也隨之呈指數(shù)增長(zhǎng)。面對(duì)海量的信息資源,圖書館讀者需要快速、精準(zhǔn)地獲取自己需要的信息。要想為讀者提供更為快速、精準(zhǔn)的信息,就要感知和預(yù)測(cè)讀者的需求,為讀者提供智能化的推送服務(wù)。然而,現(xiàn)有的智慧圖書館推送系統(tǒng)在感知讀者需求的方面,還存在推送精準(zhǔn)度差、所需推送時(shí)間長(zhǎng)等問題[5]。
近年來(lái),在大數(shù)據(jù)環(huán)境下,物聯(lián)網(wǎng)、云計(jì)算、人工智能等技術(shù)得到了廣泛的應(yīng)用[6?7]。根據(jù)上述分析,基于大數(shù)據(jù)驅(qū)動(dòng)設(shè)計(jì)智慧圖書館推送系統(tǒng),使智慧圖書館更加高效、智能地為讀者提供智能化服務(wù)。
1? 基于大數(shù)據(jù)驅(qū)動(dòng)的智慧圖書館推送系統(tǒng)設(shè)計(jì)
采用大數(shù)據(jù)技術(shù)中的爬蟲技術(shù)和MapReduce,基于大數(shù)據(jù)驅(qū)動(dòng),設(shè)計(jì)智慧圖書館推送系統(tǒng)。首先,設(shè)計(jì)智慧圖書館系統(tǒng)的總體架構(gòu),根據(jù)總體架構(gòu),通過(guò)用戶終端、交換機(jī)、服務(wù)器和數(shù)據(jù)存儲(chǔ)器等硬件完成系統(tǒng)的硬件設(shè)計(jì),利用MapReduce對(duì)用戶信息作分析計(jì)算,再利用爬蟲技術(shù)爬取與用戶需求相關(guān)的圖書館信息,完成系統(tǒng)的軟件設(shè)計(jì)。
1.1? 基于大數(shù)據(jù)驅(qū)動(dòng)的智慧圖書館推送系統(tǒng)總體架構(gòu)
智慧圖書館推送系統(tǒng)的總體架構(gòu)由應(yīng)用表示層、業(yè)務(wù)邏輯層、數(shù)據(jù)存儲(chǔ)層3個(gè)層次組成。系統(tǒng)總體架構(gòu)圖如圖1所示。
應(yīng)用表示層為圖書館用戶提供一個(gè)可視化的用戶界面,是智慧圖書館推送系統(tǒng)的門戶和功能接入口。用戶通過(guò)訪問Web登錄智慧圖書館推送系統(tǒng),實(shí)現(xiàn)與圖書館推送系統(tǒng)中應(yīng)用程序的對(duì)話。在該層設(shè)有用戶管理模塊、用戶定制管理模塊、信息收集模塊。在用戶管理模塊,用戶可以執(zhí)行注冊(cè)登錄、信息管理、權(quán)限管理等操作。在信息收集模塊,可以收集用戶操作記錄等用戶信息,并作出預(yù)處理設(shè)置。在用戶定制管理模塊,可以執(zhí)行用戶定制數(shù)據(jù)的錄入、修改、保存、刪除等操作。
業(yè)務(wù)邏輯層在應(yīng)用表示層和數(shù)據(jù)存儲(chǔ)層之間,是圖書館推送系統(tǒng)對(duì)用戶的需求、系統(tǒng)的數(shù)據(jù)業(yè)務(wù)處理的部分,此層將應(yīng)用表示層和數(shù)據(jù)存儲(chǔ)層連接起來(lái)。在該層設(shè)有信息推送模塊、綜合查詢管理模塊。在綜合查詢管理模塊,將其分為3個(gè)子模塊,分別為綜合查詢、統(tǒng)計(jì)報(bào)表、打印輸出。在信息推送模塊,當(dāng)用戶在瀏覽圖書館網(wǎng)頁(yè)時(shí),該模塊會(huì)提取用戶操作記錄的關(guān)鍵詞等信息發(fā)送到后臺(tái),后臺(tái)服務(wù)程序在接收到客戶端提供的信息后,向用戶推送與用戶操作記錄相關(guān)的信息。信息推送的流程如圖2所示。
數(shù)據(jù)存儲(chǔ)層用于存儲(chǔ)用戶的操作記錄、瀏覽歷史、圖書館圖書等信息數(shù)據(jù),同時(shí),也是數(shù)據(jù)頁(yè)和圖書館推送系統(tǒng)的緩沖區(qū),是將圖書館推送系統(tǒng)中的各類數(shù)據(jù)統(tǒng)一實(shí)行管理的層面,所使用的數(shù)據(jù)庫(kù)是SQL Server? 2005。在該層設(shè)有數(shù)據(jù)庫(kù)維護(hù)模塊。
1.2? 基于大數(shù)據(jù)驅(qū)動(dòng)的智慧圖書館推送系統(tǒng)硬件設(shè)計(jì)
根據(jù)基于大數(shù)據(jù)驅(qū)動(dòng)的智慧圖書館推送系統(tǒng)的總體架構(gòu),設(shè)計(jì)系統(tǒng)的硬件結(jié)構(gòu)。在智慧圖書館系統(tǒng)中,圖書館存儲(chǔ)器為NS8800D,其中的HDFS具有可擴(kuò)展和容錯(cuò)存儲(chǔ)性能,將存儲(chǔ)的文件拆分為多個(gè)塊(每個(gè)塊的大小為64 MB或128 MB),復(fù)制在智慧圖書館推送系統(tǒng)中的多個(gè)節(jié)點(diǎn)上,因而具有非常大的容錯(cuò)性。此智慧圖書館推送系統(tǒng)中的HDFS,通過(guò)持續(xù)監(jiān)視各個(gè)節(jié)點(diǎn),以及各個(gè)節(jié)點(diǎn)所管理的塊,以確保智慧圖書館推送系統(tǒng)中數(shù)據(jù)的可用性。各個(gè)塊都受到HDFS的檢查和控制,在對(duì)系統(tǒng)中的數(shù)據(jù)以塊的形式讀取后,確定系統(tǒng)中數(shù)據(jù)的正確性。MapReduce提供了并行計(jì)算功能,針對(duì)智慧圖書館推送系統(tǒng)中海量的數(shù)據(jù),將其通過(guò)主節(jié)點(diǎn)分配給各個(gè)節(jié)點(diǎn),再收集計(jì)算結(jié)果,以便快速、精確地為用戶提供推送服務(wù)[8?9]。
1.3? 基于大數(shù)據(jù)驅(qū)動(dòng)的智慧圖書館推送系統(tǒng)軟件設(shè)計(jì)
在硬件設(shè)計(jì)的基礎(chǔ)上,設(shè)計(jì)智慧圖書館推送系統(tǒng)的軟件。系統(tǒng)中主要功能模塊如圖4所示。智慧圖書館推送系統(tǒng)的開源軟件選用Apache Hadoop,其支持分布式數(shù)據(jù)密集型應(yīng)用程序和MapReduce計(jì)算,允許智慧圖書館推送系統(tǒng)對(duì)大量數(shù)據(jù)并行處理。
智慧圖書館數(shù)據(jù)推送系統(tǒng)的主要目的是在給定時(shí)間內(nèi),根據(jù)用戶的操作記錄等信息,將圖書館信息快速、高效地推送給用戶,以滿足用戶需求。
在為用戶推送相關(guān)信息時(shí),先要采集用戶操作記錄的相關(guān)信息,要對(duì)關(guān)鍵詞等文本信息進(jìn)行統(tǒng)計(jì)和分析。利用統(tǒng)計(jì)量的大小比較,精準(zhǔn)地獲取用戶操作記錄的主要信息。統(tǒng)計(jì)量的計(jì)算公式如下:
[x2ti,Cj=NAD-CBA+CB+DA+BC+D] (1)
式中:[x2]為統(tǒng)計(jì)量;[N]為提取用戶操作記錄的文本個(gè)數(shù);[ti]為用戶操作記錄特征;[Cj]為一個(gè)類別;[A]為[Cj]中具有特征[ti]的文本個(gè)數(shù);[C]是[Cj]中不存在特征[ti]的文本個(gè)數(shù);[B]是[Cj]外具有特征[ti]的文本個(gè)數(shù);而[D]是[Cj]外不存在特征[ti]的文本個(gè)數(shù)[10?11]。根據(jù)式(1)確定提取的關(guān)鍵詞信息。將一條操作記錄看作是一個(gè)空間向量[Dt1,w1;t2,w2;…;tn,wn],利用向量之間的夾角[cos θ]值,獲取與用戶操作記錄相似的文本信息,即計(jì)算文本相似度[SimD1,D2]:
[SimD1,D2=cos θ]? ? ? ? ?(2)
[cos θ=k=1nw1k·w2kk=1nw21kk=1nw22k]? ? ? ? ? (3)
式中:[D1]和[D2]為相比較的兩個(gè)文本信息;[wi]為每個(gè)特征對(duì)文本內(nèi)容表示的重要程度;[n]為比較次數(shù)[12?14]。通過(guò)式(2)和式(3),計(jì)算出文本相似度。智慧圖書館推送系統(tǒng)會(huì)根據(jù)文本相似度,利用MapReduce分析計(jì)算用戶信息,再利用爬蟲技術(shù)爬取與用戶操作記錄相關(guān)的信息,針對(duì)用戶需求,為用戶提供智能化推送服務(wù)。
綜上,通過(guò)硬件和軟件設(shè)計(jì),完成基于大數(shù)據(jù)驅(qū)動(dòng)的智慧圖書館推送系統(tǒng)設(shè)計(jì)。
2? 實(shí)? 驗(yàn)
為了驗(yàn)證提出的基于大數(shù)據(jù)驅(qū)動(dòng)的智能圖書館推送系統(tǒng)能否更快速地為用戶推送信息,將其與傳統(tǒng)的智慧圖書館推送系統(tǒng)進(jìn)行了對(duì)比實(shí)驗(yàn)。
2.1? 實(shí)驗(yàn)過(guò)程
利用智慧圖書館推送系統(tǒng),將推送文章數(shù)據(jù)量設(shè)為100篇、300篇、600篇、1 000篇和1 500篇,針對(duì)不同的智慧圖書館推送系統(tǒng),測(cè)試其推送不同數(shù)量的文章所需推送時(shí)間的多少。
2.2? 實(shí)驗(yàn)結(jié)果分析
本文提出的基于大數(shù)據(jù)驅(qū)動(dòng)的智慧圖書館推送系統(tǒng)與傳統(tǒng)推送系統(tǒng)所需推送時(shí)間對(duì)比結(jié)果如圖5所示。
由圖5可知,在3個(gè)智慧圖書館推送系統(tǒng)中,隨著推送文章數(shù)量的增加,推送時(shí)間都隨之變長(zhǎng)。然而,在兩個(gè)傳統(tǒng)推送系統(tǒng)中,隨著推送文章數(shù)量的增加,推送所需時(shí)間增長(zhǎng)較多;而本文設(shè)計(jì)系統(tǒng)隨著推送文章數(shù)量的增加,所需推送時(shí)間增長(zhǎng)的并不多。
通過(guò)分析發(fā)現(xiàn),采用大數(shù)據(jù)驅(qū)動(dòng)的系統(tǒng)隨著數(shù)據(jù)量的增多,對(duì)數(shù)據(jù)的分析、計(jì)算速度越快。因此,與傳統(tǒng)的智慧圖書館推送系統(tǒng)相比,推送同樣數(shù)量的文章,本文設(shè)計(jì)系統(tǒng)所需時(shí)間更少,表明其能夠更高效地為用戶提供推送服務(wù)。
3? 結(jié)? 語(yǔ)
針對(duì)傳統(tǒng)智慧圖書館推送系統(tǒng)存在的推送時(shí)間長(zhǎng)的問題,本文設(shè)計(jì)基于大數(shù)據(jù)驅(qū)動(dòng)的智慧圖書館推送系統(tǒng)。采用MapReduce、爬蟲技術(shù)等完成硬件和軟件設(shè)計(jì),并將所設(shè)計(jì)系統(tǒng)與傳統(tǒng)的智慧圖書館推送系統(tǒng)進(jìn)行了對(duì)比實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果表明,提出的基于大數(shù)據(jù)驅(qū)動(dòng)的智慧圖書館推送系統(tǒng)能夠更為高效地為用戶服務(wù)。
參考文獻(xiàn)
[1] 陳臣.基于大數(shù)據(jù)挖掘與知識(shí)發(fā)現(xiàn)的智慧圖書館構(gòu)建[J].現(xiàn)代情報(bào),2017,37(8):85?91.
[2] 李欣.強(qiáng)關(guān)聯(lián)規(guī)則挖掘在智慧圖書館個(gè)性化推送服務(wù)中的應(yīng)用研究[J].情報(bào)科學(xué),2018,36(4):95?99.
[3] 曹樹金,劉慧云,王連喜.大數(shù)據(jù)驅(qū)動(dòng)的圖書館精準(zhǔn)服務(wù)研究[J].大學(xué)圖書館學(xué)報(bào),2019,37(4):54?60.
[4] 常青,楊武健,龔景興.智慧圖書館建設(shè)誤區(qū)與建設(shè)策略[J].圖書情報(bào)工作,2018,62(19):13?18.
[5] 張潔,袁輝.智慧圖書館系統(tǒng)支撐下的學(xué)科服務(wù)實(shí)踐[J].圖書館論壇,2017,37(7):27?32.
[6] 許新龍,楊永霞.新一代智慧圖書館信息系統(tǒng)研究[J].國(guó)家圖書館學(xué)刊,2018,27(6):48?53.
[7] 楊妮.基于“互聯(lián)網(wǎng)+”的高校智慧圖書館系統(tǒng)建設(shè)的思考[J].湖北函授大學(xué)學(xué)報(bào),2017,30(9):49?50.
[8] 羅寰.論人工智能時(shí)代新一代智慧圖書館系統(tǒng)構(gòu)建[J].中國(guó)中醫(yī)藥圖書情報(bào)雜志,2019,43(1):1?3.
[9] 胡泰然,曹鵬彬,陳緒兵.基于RFID與XBEE的CIRCLE智慧圖書館的設(shè)計(jì)與開發(fā)[J].微型機(jī)與應(yīng)用,2017,36(14):98?101.
[10] 于成龍.基于移動(dòng)增強(qiáng)現(xiàn)實(shí)技術(shù)的圖書館文獻(xiàn)推送系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].農(nóng)業(yè)圖書情報(bào)學(xué)刊,2017,29(2):65?68.
[11] 朱寧.構(gòu)建智慧圖書館智能服務(wù)系統(tǒng)[J].辦公自動(dòng)化,2017,22(24):51?52.
[12] 高艷麗.大數(shù)據(jù)驅(qū)動(dòng)的SOC設(shè)計(jì)平臺(tái)IC?ONE[J].中國(guó)集成電路,2017,26(9):43?48.
[13] 張潔,汪俊亮,呂佑龍,等.大數(shù)據(jù)驅(qū)動(dòng)的智能制造[J].中國(guó)機(jī)械工程,2019,30(2):127?133.
[14] 孫遠(yuǎn)芳,段翠華,張培穎.大數(shù)據(jù)驅(qū)動(dòng)的未來(lái)網(wǎng)絡(luò):體系架構(gòu)與應(yīng)用場(chǎng)景[J].中國(guó)電子科學(xué)研究院學(xué)報(bào),2017(5):25?30.