在Windows 7中推出了一個叫作Search Federation(聯合搜索)的搜索功能,該功能可以看做是對Windows Vista中頗受贊譽的智能搜索的一個擴展和強化。本文將對Windows 7的這一新功能進行一個解讀,希望對大家理解和使用它,提升數據管理效率有所幫助。
1、為什麼要推出Search Federation?
集成Search Federation功能無疑提升了Windows 7的搜索能力,但不僅僅如此,對於微軟強化系統搜索功能的初衷,我們比較感興趣。大家知道,在企業環境中數據不可能存放在一個地方,往往存放於不同的PC,不同的服務器,不同的移動存儲設備中等等。所以,要訪問和檢索這些數據將變得非常麻煩。Search Federation就是基於這樣的考慮,而集成於Windows 7中,同時我們也可以將其看做是Windows 7在面向企業用戶方面所做的改進。利用Search Federation技術,本地用戶並不需要部署第三方工具就能夠在局域網的其他pc中找到所需的數據文件。
我們知道,在Windows 7中可以通過“庫”來方便地管理文件、檢索文件,只不過在此前需要管理員將文件的路徑添加到庫中。而Search Federation並不依賴於“庫”,它可以檢索到“庫”以外的文件。
2、聯合搜索是如何工作的?
說到聯合搜索,就不得不提到搜索連接器。搜索連接器其實就是一個XML的腳本文件,該腳本中定義了所要進行搜索的目標站點等信息。在Windows 7中添加搜索連接器後,當用戶使用該搜索連接器進行搜索時,Windows 7就想目標站點發送HTTP請求搜索的條件,然後服務就會返回RSS的結果在客戶端顯示出來。其大致的流程如圖所示。(圖1)
3、聯合搜索的優勢是什麼?
聯合搜索在很大程度上解放了用戶,用戶並不需要知道目標地址的相應的信息,將這一切交給系統讓其完成搜索任務。此外,聯合搜索提供了豐富的用戶體驗:通過浏覽器或者Windows 7的資源管理器,用戶可以實現數據的預覽、略縮圖,了解元數據信息,並能實現數據的拖放,數據檢索時的高亮顯示。另外,其安全性也很高,並不會對源數據造成損傷,其驗證方式由Windows集成。當然,它也不會增加客戶端的負擔,因為搜索是在服務器上進行的,在客戶端上不會執行代碼,也不會非常明顯地增加客戶端的網絡流量,因為它是以輕量的流量方式進行的。還有一點,在Windows 7中聯合搜索的結果是以XML格式返回的。我們可以進行屬性的映射、略縮圖顯示和網址預覽等等。
4、使用OpenSearch進行聯合搜索
OpenSearch是Windwos 7聯合搜索的一種方式,正如其名稱所表達的這時一種開放的搜索方式。這大大方便了我們的數據搜索,搜索時,我們搜索數據,而不用管目標數據在何處。同時,它也能夠很好地保證遠程數據源的安全性。
(1).在IE 8中使用OpenSearch
我們以Widnows 7中集成的IE 8浏覽器為例。運行IE 8,可以在窗口的右上角看到一個搜索框,其實它用到的搜索方式就是OpenSearch的聯合搜索方式。OpenSearch是搜索連接器息息相關,OpenSearch搜索就是通過搜索連接器來具體實施的。大家可以看到,IE 8默認使用的是Live Search搜索連接器,當然我們也可以添加其他搜索連接器。至於搜索連接器,我們可以通過自定義的方式去手動添加和編輯。除了可以添加現成的搜索連接器,我們也可以根據需要創建搜索連接器,甚至可以將自己的站點添加到搜索連接器中,以實現對站點內容的檢索。
下面我們實例操作,看看如何創建或者添加一個搜索連接器。運行IE 8,在窗口的右上角可以看到一個搜索框,其默認的搜索連接器就是Live Search。點擊搜索框右側的下拉箭頭可看到此前添加的搜索連接器,另外還有3個操作項。筆者此前曾經添加過一個新浪的“天氣查詢”,如果要添加新的搜索連接器,點擊“查找更多提供程序”項,會進入微軟提供的一個“可視化搜索”的網頁。在該網頁中,列出了非常多的搜索連接器工具。在網頁的左側有各種搜索器分類,大家可展開某類找到自己需要的搜索連接器。(圖2)
比如,我們添加一個新浪的“股票搜索”,點擊其下面的“添加到Internet Explorer”按鈕,然後彈出對話框詢問你是否要添加,點擊“添加”後則該搜索工具就添加到IE 8的搜索連接列表中。在列表中點擊剛才添加的“股票搜索”工具,則其成為搜索框的當前搜索工具。在搜索框中輸入你所關心的股票名稱或者代碼,就會在搜索框下看到該股票的走勢等信息。同樣的,點擊搜索列表中的“天氣查詢”工具,在搜索框中輸入要查詢的城市的名稱就會看到該城市的天氣信息。當然對於某些網站它們開發了自己是搜索工具,我們都可以將其添加進來,一說實現信息的快速檢索。以上就是使用OpenSearch進行聯合搜索的一個例子,利用這種搜索方式,我們完全不用關心數據在什麼地方,可以平滑發現。(圖3)
(2).自定義的OpenSearch
除了可以在通過IE 8以及相關現成的搜索連接器檢索Internet中的信息外,我們還可以手動添加相應的搜索連接器實現對局域網中數據的快速檢索。對於公司的IT人員來說,根據需要將數據文件以搜索連接器的方式進行檢索或者共享是非常可行和節約成本的一種方式。
OpenSearch窗口概覽
如圖所示,這是以Windows 7的OpenSearch方式檢索和共享數據的一個截圖。這是Windows 7的資源管理器窗口,窗口被分成3部分。在左側導航區中管理器創建了不少搜索連接器,這些連接器囊括了企業數據可被檢索和訪問的所有索引。當我們點擊左窗格中的某個搜索連接器後,就會在中間的窗格中列出該索引所對應的數據文件的列表。如果某個搜索連接器檢索到的文件數據比較多,我們可在右上角的搜索框中輸入關鍵詞進行進一步的檢索。這樣會在中間窗格中,除了顯示文件的名稱外,還會以高亮顯示關鍵詞。最左側是預覽窗格,點擊中間窗格中的對應文件,在右側就會以預覽的方式顯示出來,以確保我們找到自己所需要的文件。此外,在Windows 7的資源管理器的最下面是細節窗格,當在中間的創建中點選某數據文件後就會在此我們可以查看數據的大小、創建時間等元數據信息。(圖4)
手動添加現成的搜索連接器
下面我們做一個演示,看看如何手動添加一個搜索連接器。搜索連接器,大家可以去相應的網站下載或者自己手動編輯。筆者下載一個flick的是搜索連接器,其文件是flickr.osdx。打開Windows 7的資源管理器,筆者已經添加了3個搜索連接器WotNews、MSDN、Channel 9,現在我們就將bing的搜索連接器添加進來。雙擊bing.osdx文件,彈出對話詢問是否添加,我們點擊“add”,可以看到Bing Serach已經添加進來了。我們點擊該搜索連接器,然後在搜索框中輸入Windows 7,可以看到系統訪問bing的網站,然後搜索與Windows 7相關的內容並在右側窗格中顯示出來。點擊窗口上部的“預覽”按鈕窗口自動分成3部分,點擊中間窗格中的某一內容就會在右側顯示預覽。(圖5)
編輯搜索連接器
很明顯,現成的搜索連接器並不能滿足我們的需要,通常情況下管理員需要手動去編輯自己需要的搜索連接器。其實,搜索連接器文件打開後就是一個XML語言的腳本,如果要純手動編寫代碼對於不少管理員來說是有難度的。不過,我們可以采取一個取巧的方法,就是通過修改搜索連接器模板以創建自己需要的連接器。如圖所示就是一個搜索連接器的目標文件的截圖,我們只需替換圖中紅色的部分即可。
其中Sevenforums標簽是設置連接器的名稱,我們只需將Sevenforums更改為自己需要的名稱即可。標簽中是設置連接器的描述,大家可以自己依據實際情況去填寫。template後面是設置要搜索的網站的URL地址,大家只需將其更改為目標網站的URL地址即可。當然,對於企業用戶來說,也可以將其更改為啟用內部Web的URL地址。通過對圖中4部分紅色的修改,我們就完成了一個搜索連接器的文件代碼的創建。接下來我們可將該文件保存為一個osdx格式的文件,最後按照上面添加搜索連接器的添加方法直接雙擊該文件即可。當然,通過這種方式創建的搜索連接器有可能會存在一定的問題,需要大家進行相應的調試。不過,建議大家還是下載比較專業的網站為其量身定做的搜索連接器。(圖6)
5、發布搜索連接器
在Windows 7中,我們創建的搜索連接器一般都是保存在“C:users用戶名Searches”即用戶的“搜索”文件夾下。對於創建的搜索連接器我們可以將其進行發布,搜索連接器的發布有兩層含義。其一是,將其發布到系統的其它位置使它無處不在,這樣方便我們調用。例如,當我們執行“開始”→“搜索”在搜索框中輸入搜索關鍵詞後會在上面顯示該搜索連接器以方便我們選擇。除了這個位置之外,當我們在Windows 7的資源管理器的搜索框中輸入關鍵詞進行搜索,當搜索完畢後會在窗口下面列出所有的搜索連接器可供用戶選擇使用哪個搜索連接器進行搜索。默認情況下它是以本機的“計算機”為目標進行搜索,當我們點擊其他的連接器比如MSDN這個連接器後,就會從MSDN的網站中進行檢索。其二是,在域環境中通過組策略將其集中發布到域內的其他客戶端中,實現搜索連接器的域內共享。本文只說說搜索連接器在本機的發布,其實在AD中的發布其組策略配置是一樣的。
搜索連接器在系統中的發布,我們可以通過添加相應的注冊表項來完成,當然最簡單的方式是通過組策略來完成。執行“開始”→“運行”,輸入gpedit.msc打開組策略編輯器,依次展開“用戶配置”→“管理模板”→“Windows 組件”→“Windows資源管理器”,在右側找到並打開“Pin Librahim or Search Connectors to the ‘Search again’links and the Shart menu”組策略項。首先選擇“啟用”該策略,然後在“選項”下面可以添加相應的搜索連接器進行發布,在此最多只能發布5個搜索連接器。將C:users用戶名Searches”目錄中對應的搜索連接器的完整路徑復制到文本框中,例如“C:usersAdministratorSearchesMSDN.searchConnector-ms”,按照同樣的方法將其它的搜索連接器進行發布,這樣搜索連接器就會出現在上面所示的位置中。(圖7)
總結:上面關於Windows 7的Search Federation(聯合搜索)功能的解讀和使用范例,主要是基於個人用戶的,其實在域環境中其聯合搜索更顯示了它的靈活和強大。相信隨著Windows 7正式版的發布,以及其在企業環境中的部署,聯合搜索功能將會在數據文件的檢索和搜索方面極大地解放IT人員。