近幾年,隨著硬碟介質**的大幅度下降,各位電腦迷們的個人硬碟容量越來越大,動輒五六十g,甚至上百g都不足為奇,這在前幾年是無法想象的。但是硬碟大了,存放的文件多了,查詢速度慢的煩惱也隨之來了。其實在windows 2000/xp的作業系統中,有乙個索引服務的功能,可以有效提高查詢文件的速度,尤其在進行全文檢索的時候,其執行效率可以和 google 媲美。
一、索引服務的概念
索引服務(index service)被用來對硬碟上文件及文件屬性進行索引,並儲存在編錄(catalog)中,可以使用索引服務來查詢文件。
索引服務從一組文件中提取相關資訊(包含文件中的文字,文件的特性和引數,如作者姓名等),並進行索引,一旦索引被建立後,你就可以查詢這些包含關鍵字或屬性資訊的索引。例如,你可以查詢所有包含「產品」這個詞的文件,或者你可以查詢所有由某一作者撰寫的所有 office 文件。
通過 windows 中的「搜尋」功能、索引服務查詢介面或 web 瀏覽器就可以使用索引服務提供的功能,索引服務將返回所有滿足查詢條件的文件列表。
在索引的過程中,索引服務使用一種稱為「文件過濾器」(document filter)的東西來查閱整個文件,並將文字資訊和屬性提取出來,傳遞給索引器。
索引服務可以對以下文件進行索引:
索引服務被設計為自動執行,需要很少的維護。一旦被正確設定後,所有操作都是自動的,包括索引的建立,索引的更新,掉電時索引破壞後的恢復。
管理員和應用開發人員可以使用microsoft platform sdk來其它文件開發自定義的文件過濾器。
二、索引服務的安裝
預設情況下,windows xp 是不安裝索引服務的,可以通過以下步驟來手動安裝索引服務:
1) 進入「控制面板」,點選「新增或刪除程式」,然後選擇「新增/刪除 windows 元件」
2) 在「windows 元件嚮導」對話方塊中,選中「indexing service」,如圖所示:
3) 單擊「下一步」按紐完成安裝。
安裝完成後,索引伺服器無需任何配置和操作人員的干預,就可以自動執行。
三、增加編錄和索引
安裝索引服務後,系統會自動建立兩個編錄,如圖所示,分別是:
web 編錄:用來儲存web伺服器內檔案的索引資訊
如果想要給自己的目錄增加索引資訊,則進行如下操作就可以了:
1) 選擇儲存文件的資料夾,點選右鍵,選擇「屬性」
2) 在「常規」選項卡上單擊「高階」按鈕
3) 在「高階屬性」對話方塊中,在「存檔和編制索引屬性」中選中「為了快速搜尋,允許索引服務編制該資料夾的索引」選擇項
4) 單擊「確定」退出對話方塊,單擊「確定」退出資料夾屬性對話方塊。
如果不想對目錄中的文件進行索引,則從編錄的目錄列表中刪除即可,或者清除目錄屬性中索引服務的標記即可。
四、索引服務的使用
2、索引服務查詢表單
操作步驟如下:
1) 進入「控制面板」
2) 選擇「計算機管理」
3) 在開啟的 mmc 視窗中,選擇並展開「服務和應用程式」
4) 展開「索引服務」結點,選擇 system 編錄下的「查詢編錄」項
5) 在「索引服務查詢窗體」中輸入要查詢的文字內容,單擊「查詢」就可以查詢文件了,如圖所示。
兩種使用方式各有優缺點,總結如下:
1) 搜尋助理使用較為簡單方便,且不一定依賴索引服務,但如果不使用索引服務,則搜尋效率低,速度慢。
2) 索引服務查詢表單效率高,查詢速度極快,不但能對文件內容進行檢索,而且可以對文件的屬性(如作者、標題等)進行檢索。
3) 搜尋助理可以對所有檔案進行搜尋,而索引服務查詢表單僅對有意義的,具有過濾器的文件進行檢索。
4) 使用查詢表單,可以生成文件的摘要,而普遍搜尋則不能。
五、使用提示(本文發表於《電腦迷》)
如何快速查詢IP歸屬地
這兩天遇到這麼乙個問題,就是查詢乙個ip的歸屬地。當然我會有乙個ip段的分配列表,格式如下 16777472 16778239 xx省 xx市 第一列是ip段的起始ip,第二列是ip段的終止ip,第三列是對應的省份。一共大概200萬條左右。那麼好了,如何進行查詢呢?想到的最簡單的辦法,就是二分查詢。...
快速查詢演算法
在日常的演算法中,查詢是乙個經常涉及到的話題,而如何提高查詢的速度,也是很多程式設計師 軟體研究的話題。先看乙個例子。有這樣乙個資料型別s 學生姓名 name 性別 年齡 age 現在假設有這樣乙個需求 檔案a b中分別存放大量s 的記錄,需要將a b中重複的記錄去掉。我們用c 來演示今天的話題 t...
快速查詢素數
題目 時間限制 1000 ms 記憶體限制 65535 kb 難度 3 描述 現在給你乙個正整數n,要你快速的找出在2.n這些數裡面所有的素數。輸入給出乙個正整數數n n 2000000 但n為0時結束程式。測試資料不超過100組 輸出將2 n範圍內所有的素數輸出。兩個數之間用空格隔開 樣例輸入 5...