王佩光 汪鵬 范葉平
摘 要:隨著移動智能終端操作系統(tǒng)的發(fā)展越來越迅速,硬盤容量在不斷的擴充,存儲的信息量越來越大。操作系統(tǒng)想要搜索相應的文件并將其歸類的效率越來越低。通常搜索的時間過長,卻無法滿足客戶所要的結果。因此,我們開發(fā)出一種高效,快捷的磁盤搜索系統(tǒng),能夠更好的滿足用戶在本地硬盤搜索方面的需求,并提出本移動終端操作系統(tǒng)的磁盤檢索框架及流程。
關鍵詞:智能終端;操作系統(tǒng);磁盤檢索
一、緒論
現(xiàn)階段,以手機為代表的移動智能終端[ 1 ]技術及相關產(chǎn)品得到大量普及,移動終端通過互聯(lián)網(wǎng)便可以獲取信息。移動終端的處理能力和存儲容量越來越高,支持的業(yè)務種類和數(shù)據(jù)類型也在不斷的增多,移動終端正在逐漸的成為用戶最重要的數(shù)據(jù)倉庫。隨著移動互聯(lián)網(wǎng)的發(fā)展,移動終端的數(shù)據(jù)種類和數(shù)量將得到進一步的增加,處理難度也將提高。而人們對移動終端的要求也越來越高,更多的關注的是終端在速度上帶來的新的體驗。
因此,如何針對移動終端自身的特點,根據(jù)用戶的數(shù)據(jù)獲取需求,快速的檢索到存儲在移動終端上的用戶所需的數(shù)據(jù),成為一個迫切需要解決的問題。自主研發(fā)的國家電網(wǎng)公司移動終端操作系統(tǒng)在磁盤檢索模塊使用了全新設計方法。首先,分析了磁盤的基本構造[ 2 ],其次,提出本磁盤檢索系統(tǒng)所使用的檢索方法。最后,設計出本磁盤檢索的框架及流程。
二、磁盤檢索方法分析
(一)磁盤的構造
移動終端存儲設備由內(nèi)存儲器和外存儲器組成,外存儲器即一種直接存儲磁盤設備[ 3 ]。磁盤類似于一個扁平的圓盤,盤面上有許多磁道,用來存儲數(shù)據(jù)。可以是單片也可以是多片組成的磁組,盤組中除最頂端和最底端外,全部用來存儲信息。當磁盤驅(qū)動器執(zhí)行讀/寫功能時,盤片繞主軸高速旋轉(zhuǎn),磁道在讀/寫頭(又叫磁頭) 下通過時,就可以進行讀/寫數(shù)據(jù)。
讀/寫存儲在磁盤上的某一指定數(shù)據(jù)需要的3個步驟:
1)首先是定位或查找所需要的柱面,即根據(jù)柱面號使磁頭移動到相應的柱面上;
2)所有雙向的磁頭都定位到了不同盤面的磁道上,需要根據(jù)盤面號確定相應磁道;
3)確定盤面后,轉(zhuǎn)動并將存有數(shù)據(jù)的塊號的磁道段移動到磁頭下,開始讀/寫操作。
訪問磁盤某一信息所需時間由3部分組成:查找時間(Ts)、等待時間(Ti)及傳輸時間(Tt)。磁盤以盤塊(block)為基本單位進行數(shù)據(jù)的讀取操作[ 4 ],位于同一盤塊中的所有數(shù)據(jù)都能被一次性全部讀取出來。在磁盤檢索過程中,花費時間最長的是Ts。所以,進行大規(guī)模數(shù)據(jù)操作時,大量數(shù)據(jù)存儲在磁盤中,進行讀取/寫入塊中具體數(shù)據(jù)時,需要定位到磁盤中的某塊,因此合理高效的磁盤檢索方法能夠快速地查找磁盤中的數(shù)據(jù),現(xiàn)針對本系統(tǒng)所采用的Tracker-miner方法進行研究分析。
(二)基于Tracker-miner的搜索
國網(wǎng)移動終端操作系統(tǒng)中使用一種基于桌面語義學的搜索方法[ 5 ],Tracker是一個搜索引擎,一種搜索工具,也是一種元數(shù)據(jù)存儲系統(tǒng)。它能搜索文件的內(nèi)容和元數(shù)據(jù),其中關于NEPOMUK的桌面語義學能夠很好的實現(xiàn)搜索的功能。NEPOMUK項目的目標是將個人桌面擴展為可協(xié)作桌面,從而改進在線協(xié)作技術和個人數(shù)據(jù)管理,增強人們對于提高和組織信息的能力。NEPOMUK是桌面下訪問語義學數(shù)據(jù)的函數(shù)庫,是一個數(shù)據(jù)的提供方,它并不處理數(shù)據(jù),而是通過Strigi來實現(xiàn)對文件的簡單處理,從而能提取出文件的元數(shù)據(jù)。
語義搜索主要的應用場景有三種:
1)基于文件的內(nèi)容查找文件;
2)基于存儲獲取最簡單的對象來查找文件,例如歌曲評分、標簽等;
3)基于存儲和通過簡單關系來查找文件,例如某某用戶的圖片等。
Tracker主要通過應用與Tracker-store建立聯(lián)系并向其詢問信息,而Tracker-miner-fs結構則主要實現(xiàn)對信息的爬找功能,搜索外部信息的元數(shù)據(jù)進行分析并分類,并且當數(shù)據(jù)發(fā)生改變時,也會記錄之前的信息所屬的關系,并獲取通知實現(xiàn)重新查找的功能。圖1所示為Tracker的工作原理示意圖。
三、磁盤搜索的設計
(一)移動終端的特點及搜索需求
移動終端在硬件、操作系統(tǒng)、業(yè)務應用方面都有其特有的特點。硬件主要是CPU、內(nèi)存、屏幕等。目前,移動終端的運算處理能力相對較低。對于搜索引擎而言,分詞、索引的建立、更新以及遍歷過程對CPU的處理能力要求很高,因此在充分考慮終端自身的處理能力的情況下,選擇運算復雜度合理的搜索算法,顯得十分重要。操作系統(tǒng)方面,當前主流的操作系統(tǒng)主要有:WindowsCE、Linux、MacOS、Blackberry等,而常見的移動終端操作系統(tǒng)主要是Google推出的以Linux為內(nèi)核的Android操作系統(tǒng)。本文所提操作系統(tǒng)是在Linux基礎上,通過自主研發(fā)的國網(wǎng)移動終端操作系統(tǒng);業(yè)務應用方面主要集中表現(xiàn)為:通訊、辦公、生活以及娛樂等。
(二)移動終端搜索需求
結合以上對手機自身的特點的分析,以及可能搜索的用戶場景,對磁盤檢索的功能和性能需求進行了分析,具體如下:
1)響應時間:檢索響應時間應不多于3秒;
2)搜索覆蓋率:針對移動終端,應該保證用戶通過關鍵詞基本上可以搜索到終端上包含該關鍵詞的所有資源,同時能實現(xiàn)對內(nèi)存和外存的全面檢索;
3)擴展性:支持對搜索對象的類型范圍進行擴展;
4)匹配方式:支持用戶根據(jù)關鍵詞進行精確匹配以及模糊查詢;
5)結果排序:支持根據(jù)用戶的搜索使用情況對搜索結果進行重新排序;
6)搜索結果的分類展示:能夠?qū)⒎纤阉鳁l件的結果進行分類展示;
7)搜索結果進行操作:允許用戶直接查看、使用檢索結果;
8)索引更新方式:程序能夠根據(jù)被檢索文件的增加、刪除及修改情況,適時更新索引文件,以便于讓用戶盡早檢索到新增加的文件。
(三)檢索架構
本系統(tǒng)搜索引擎主要包括文檔格式統(tǒng)一化、分詞、建立索引、解析用戶、檢索關鍵詞、基于索引根據(jù)用戶關鍵詞遍歷索引文件、結果排序以及展示,同時結合Tracker桌面語義算法實現(xiàn)整個檢索功能。圖2為移動終端操作系統(tǒng)檢索架構,包括:適配器模塊、核心模塊、查詢及解析模塊、結果排序展現(xiàn)模塊以及用戶界面等模塊,同時,引入搜索關系庫,包含搜索的關鍵字及關鍵字所屬的關系,同時引入文件索引數(shù)據(jù)庫,以便對索引文件進行存儲。
1)核心模塊:對目標格式進行分詞及關系確立、建立索引以及對索引文件進行搜索。
a.分詞及關系確立:主要采用基于字符串匹配的分詞方法,確定文件的所屬關系;
b.建立索引:主要采用建立索引并基于索引進行檢索的方式,并實時更新索引;
c.搜索過程主要是讀取索引文件并遍歷索引的過程。對關鍵詞的遍歷,以及根據(jù)文件的關系來搜索信息。
2)適配器模塊:完成各種文件格式向目標格式轉(zhuǎn)化。
針對不同文件格式單獨開發(fā)格式轉(zhuǎn)換模塊,同時保證文件轉(zhuǎn)化模塊輸出接口的一致性。
3)查詢解析模塊:用于解析用戶的查詢邏輯,提取關鍵詞、獲取相應關系及邏輯運算符等。
4)結果排序展現(xiàn)模塊:用于將符合條件的結果加以排序并展示給用戶。
5)用戶界面:接收用戶輸入,展示檢索結果等。
6)文件索引數(shù)據(jù)庫:用于存儲索引文件。
7)關鍵詞詞庫、用戶自定義詞庫及關系庫:提供供分詞使用的關鍵詞列表,用于存儲用戶自定義的關鍵詞及相應文件間的關系數(shù)據(jù)。
(四)業(yè)務流程的介紹
如圖3所示,當用戶需要進行搜索的時,輸入相關的關鍵詞,查詢解析模塊會分析查詢關鍵詞,同時去除與查詢無關的標點、輔助詞等,然后把解析后的結果交給分詞模塊,根據(jù)相應的邏輯對關鍵詞進行分詞,并搜索文件相互對應的關系,分詞及關系確定模塊把分詞和關系確定的結果返回給查詢解析模塊,查詢解析模塊把該結果交給查詢模塊,查詢模塊會查找文件索引數(shù)據(jù)庫,查找關鍵詞對應的文件或記錄,尋找與文件有對應的文件,并把查詢的結果交給結果展現(xiàn)模塊,結果展現(xiàn)模塊會對查詢結果做相應的分類、排序等處理,然后把檢索結果展現(xiàn)給用戶。
四、結語
本文主要針對目前移動終端在數(shù)據(jù)存儲量日益增長的情況下,在自主研發(fā)的國網(wǎng)移動終端操作系統(tǒng)中,提出基于Tracker-miner的全新磁盤檢索設計方案,做了詳細的說明,并設計出相應的檢索系統(tǒng)的架構,以及檢索流程,實現(xiàn)更快捷、有效的磁盤檢索的功能。
參考文獻:
[1] 王躍,許志遠,嚴玨瑋.移動智能終端操作系統(tǒng)技術發(fā)展[J].中興通訊技術,2014,20(2):45-48.
[2] 李廷廷,焦瑞莉.快速磁盤文件檢索軟件的設計[J].計算機應用與軟件,2015,32(5):38-41.
[3] 程琳,袁立新,蘇晨晗.談模擬磁盤陣列提高光盤載體檢索速度新途徑[J].現(xiàn)代圖書情報技術,2002(s1).
[4] 劉曉風.全磁盤運行文件的自動檢索程序[J].網(wǎng)絡新媒體技術,1994(5):39-42.
[5] H Yufang,G Qian.關鍵詞:本體,信息檢索KIM[J].
作者簡介:
王佩光(1977-),男,本科,副總工程師,主要從事電力行業(yè)基礎軟硬件研發(fā)和信息安全咨詢、方案設計等工作,國網(wǎng)信通產(chǎn)業(yè)集團安徽繼遠軟件有限公司;
汪鵬(1990-),男,碩士研究生,軟件研發(fā)工程師,主要從事國產(chǎn)操作系統(tǒng)項目的開發(fā)工作,國網(wǎng)信通產(chǎn)業(yè)集團安徽繼遠軟件有限公司;
范葉平(1979-),男,本科,高級架構師,主要從事信息管理、信息集成、數(shù)據(jù)集成類項目咨詢、方案設計、研發(fā)管理工作,安徽繼遠軟件有限公司。