彭智彬 羅曉瑩 朱弘揚 韓曉強


摘 要:當今信息化時代,學生面對多種多樣的信息會產生迷茫,特別是面對圖書館內龐大的信息,更是難以找尋適合自己的學習資料。本系統是針對大學生而設計的高效率人性化圖書館管理系統。該系統采用分布式數據庫Hbase來實現對超大規模數據的實時隨機訪問,并保證系統的穩定性。大數據模塊還會根據用戶信息與日志信息,從而通過一系列的指標進行個性化推薦,這種方法可以大大地提高學生學習效率,充分地利用好圖書館內的資源。
關鍵詞:圖書館;分布式數據庫Hbase個性化推薦
DOI:10.12249/j.issn.1005-4669.2020.25.160
基金項目:大學生創新創業訓練計劃項目”智能圖書館大數據研究“(項目編號:570119130)。
信息時代數據的變革必然給圖書館帶來沖擊,對圖書館的知識服務提出更高的要求和前所未有的挑戰,對一般傳統的手工檢索而言,不僅學生無法達到高效性學習,圖書館本身也難以靈活地給學生以個性化服務。為了更好地提高學生自學效率和時間利用率,實現1+i的學習,大學圖書館的智能推薦系統對我校現有的圖書數據進行挖掘,以標簽的形式分門別類,對學生的專業和年齡性別進行匹配并推薦圖書。
1 項目描述
這是一款根據學生專業和興趣來推薦相應的書籍與習題的智能系統:高校圖書館的智能推薦系統,主要根據學生的訪問行為與個人信息,如專業,則可以匹配到學校圖書館里有相關聯系的學習書籍與習題,從而推薦給學生去查閱。同時,這些書籍都是通過有效數據處理而分成不同的閱讀難度,這樣能更好地提高學生自學效率和時間利用率,實現i+1的學習。
此外,智能圖書館還會添加題庫功能供學生學習和備考,收集各科教科書上習題以及考試題型,為每科復習提供考點題型復習,習題練習與解析,錯題相同考點題目練習。為學生提供良好的復習平臺。
2 核心技術說明
2.1 分布式數據庫Hbase
本系統采用分布式數據庫Hbase,HBase(HadoopDatabase),是一個高可靠,高性能,面向列,可伸縮的分布式數據庫,主要用來存儲非結構化和半結構化的松散數據的NoSQL的分布式數據存儲系統,實現對大型數據的實時、隨機的讀寫訪問。該數據庫是建立在HDFS之上,同樣是基于這種主從式的一種運行機制,即用一個master節點協調管理多個slave從屬機。其中,HBase位于結構化存儲層,利用HadoopHDFS作為其文件存儲系統,利用HadoopMapReduce來處理HBase中的海量數據,Zookeeper為其提供分布式協同服務,使得查找數據,訪問速度快,如圖1所示。
此外,該系統使用了數據-->flume-->kafka-->flume-->HDFS的數據采集模型,分布式發布訂閱消息系統Kafka提供了對數據的緩存,保證了系統的高吞吐量,當收集信息遇到峰值時,Flume會在數據生產者和數據收容器之間做出調整,保證其能夠在兩者之間提供平穩的數據。由于采集到HBase的原生數據的格式無法滿足我們對數據處理的基本要求,且數據量過于龐大,難以全部加載到內存中進行分析,這時HadoopMapReduce會將數據分到集群的每個節點進行運算,每個節點得到的數據又會構建成平衡二叉樹的結構,通過對平衡二叉樹進行遍歷,就可以得到我們需要的數據,MapReduce高性能的計算能力方便了我們后面的統計分析,可以使我們根據不同的業務需求對數據進行處理。
2.2 個性化推薦技術
用戶在訪問智能圖書館系統時,系統會對用戶的訪問行為產生相應的埋點日志(比如點擊、收藏、搜索等),這些埋點日志會被發送給系統的后臺服務器,大數據模塊會根據這些日志信息分析再結合用戶的個人信息分析用戶的訪問行為,并得出一系列統計指標,根據這些統計指標進行系統的書籍推薦、廣告推薦等工作。
上報到后臺服務器的日志信息數據會經過數據采集、過濾、存儲、分析、可視化這5個步驟,系統通過對海量用戶行為數據的分析,可以針對用戶建立精準的用戶畫像或者說是用戶分類。同時,系統將根據對用戶的行為分析,進行書籍推薦和廣告推薦等工作。
用戶在進入智能圖書館系統之后,session將會開始記錄用戶的操作,用戶在訪問系統的過程,就稱之為一次session,當用戶操作完畢、離開網站、關閉瀏覽器或者長時間沒有做操作,那session就結束了。簡單理解,session就是某一天某一個時間段內,某個用戶進入系統,并進行了某些操作,最后退出的過程,就叫做session。
可以將session當做系統中的最基本的數據。對用戶進行大數據分析,最基本的就是對用戶訪問session/用戶訪問行為的分析。
日志信息發送給后臺web服務器(nginx),nginx將日志數據負載均衡到多個Tomcat服務器上,Tomcat服務器將會不斷將日志數據寫入Tomcat日志文件中,之后日志采集系統Flume會將采集到的數據寫入到消息隊列Kafka之中,之后消息隊列Kafka會將數據存入分布式存儲系統HBase,計算框架MapReduce將會從分布式存儲系統HBase中拉取數據,然后根據數據信息對用戶進行行為分析和分類,最后將提取出來的有效數據存入MySQL數據庫。
3 結論與展望
為了更好地實現高校圖書館信息化,利用高校圖書館的智能推薦系統對我校現有的圖書數據進行挖掘,實現對學生進行推薦圖書的功能。圖書館的圖書智能推薦系統的實現提高了學生自學效率和時間利用率并且改善對傳統圖書館系統使用的流暢性。該系統通過大數據采集、過濾、存儲、分析為高校學生實現個性化推薦,并且能夠為圖書館帶來更好的內在潛力和系統價值。
參考文獻
[1]謝琳惠.推薦系統在高校數字圖書館的應用研究[J].現代情報,2006(11):72-74.
[2]丁雪.基于數據挖掘的圖書智能推薦系統研究[J].情報理論與實踐,2010(33):107-110.
[3]李衛華.淺談數字圖書館個性化信息推薦系統[J].科技廣場,2007(7):109-110.
[4]謝地.基于HBase的海量數據存儲和快速檢索[J].電腦知識與技術,2019(15).
[5]莊沅英.圖書館智能管理系統設計[J].計算機產品與流通,2018(10).