孔 建
(黑龍江省科學技術情報研究院,哈爾濱 150028)
各種知識數據庫、數字圖書館、自建數據庫等電子信息資源豐富了人們的知識面,拓寬了讀者查找信息的途徑。數字資源的檢索系統之間存在著很大的差異,為了使用不同的檢索系統,用戶需要花費一定的時間來適應和熟悉。科研機構和大學圖書館通常有幾十個甚至數百個數據庫可供選擇,研究人員在搜索信息時不僅要選擇與主題對應的數據庫,還要了解每個數據庫中的搜索定義,熟悉每個數據庫中的接口規則[1]。
大多數文獻數據庫存在重復內容,影響了用戶的檢索效率[2]。用戶搜索信息往往需要在好幾個數據庫中反復搜索,而數據庫中的大多數資源記錄是獨立的,其相關性并不高,因此很難在用戶網絡之間建立連接。人的知識系統是關聯的、互相影響的,數據庫系統中孤立的資源記錄無法反映相互關聯的知識需求。
跨庫檢索技術的應用能夠解決以上問題,此技術已引起了廣泛關注,目前已開發出了各種相關的解決方案和跨數據庫檢索系統。跨數據庫檢索系統主要基于Web搜索代理模式,用戶通過搜索頁面發送搜索命令,資源主機指定數據庫來檢索經由網站超文本傳輸協議的信息,每個數據庫的網站完成摘要后返回HTML[3]。這種方法可實現統一的跨數據庫檢索,但檢索緩慢,需要復雜的維護,數據編目缺乏統一標準,難以擴展。

圖1 跨庫檢索基本原理Fig.1 Basic principle of cross-library retrieval
跨庫檢索(Cross-Database search)是指用戶使用多個分布式的異構信息數據源做為最終檢索對象節點的一種文獻數據庫檢索系統。其提供一致的搜索界面,當用戶輸入搜索命令查詢時,跨庫檢索系統會在不同的資源數據庫信息中查找數據,統一顯示出搜索結果并排序。跨數據庫檢索系統提高了檢索資源的準確性和用戶訪問權限,增強了搜索資源數據庫的效率和資源廣度。
目前,國內外已開發出了較多成熟的跨庫檢索系統,1998年,美國洛斯阿拉莫斯國家實驗室開發完善了跨庫檢索系統FlashPoint。美國加利福尼亞大學的數字圖書館開發了跨庫檢索系統SearchLight。我國也自主開發了跨庫檢索系統[4]:清華同方在數字圖書館管理系統中使用了自主開發的異構數據庫,提供了統一的檢索平臺USP(UnionSearchPlatform)。USP是基于智能網絡數據庫的跨庫檢索平臺,用戶可通過文獻檢索界面,實現跨多個文獻信息數據庫的搜索,對分布在網絡上的各種檢索工具進行智能集成。
中國科學院文獻信息中心實施的中國國家科學數字圖書館(CSDL)項目,研發了CSDL集成檢索系統。此系統于2003年由CSDL開發并投入使用,CSDL的跨庫檢索系統已整合了不同來源和結構的6大類近100種數據資源,包括全文數據庫、摘要索引數據庫、電子書資源、無網絡資源、國內外OPAC關鍵資源及通用目錄資源。
但是,以上的跨庫檢索系統存在著一些問題,如工作效率不高,沒有公開的數據共享接口,復雜的結構難以維持,相關數據描述不通用等,很難進行多個數據庫之間的信息交換。
跨庫檢索系統提供了一個統一的搜索界面,以多分布的、異構數據源為對象,按照不同的數據源特性為用戶搜索,將其處理成相應的搜索表達式,再發送到各數據源來檢索數據,待搜索結果返回、去重、排序等操作后,為用戶呈現出最終信息。
網上各種數據庫資源的分布是異構的,具有獨特的登錄認證、不同的頁面布局、各種文件格式,會給讀者使用資源造成一定的困難。跨庫檢索技術可縮短人們獲取文獻所花費的時間,促進資源共享,提高科技文獻資源的利用率。
傳統的C/S模式需要客戶安裝軟件,初次使用系統的用戶操作起來較為煩瑣。因此,跨庫檢索系統采用B/S模式設計,主要包括以下幾部分:一是身份注冊認證模塊。用以核實身份,區分授權用戶與非授權用戶,分配相應的權限。二是檢索模塊。作為核心,用戶可以自由匹配搜索條件,可以按照標題、作者、時間檢索其他項目,也可以選擇一些資源對象的檢索,檢索文檔類型可以指定,還可以讓用戶使用自定義的搜索界面。三是資源管理模塊。允許系統管理員添加或配置各類數據庫,以支持跨數據庫檢索系統資源。四是管理用戶信息的模塊。包括信息管理、搜索歷史。
元搜索引擎是一種調用其他獨立搜素引擎的引擎,即通過用戶界面幫助用戶選擇和使用適當的搜索引擎,在多個搜索引擎中實現搜索操作,其基于全球分布網絡對各種搜索工具進行控制[5]。
元搜索引擎具有以下特點:一是搜索提交后訪問的數據庫轉為多個。這些多個數據庫皆為異構,它們部署在不同的存儲器內,并使用各自單獨的檢索引擎。元搜索引擎用戶發送的搜索指令被搜索引擎發送到多個數據庫執行并搜索,用戶可以通過單一的搜索指令來統一檢索多個數據庫的搜索引擎。不同的索引數據庫有著不同的要求,搜索引擎針對使用者提交的搜索要求,進行匹配轉換。二是通過深度分析搜索引擎來得到信息。雖然元搜索引擎的最終結果是基于各單獨搜索引擎得到的數據,但它需要對各獨立的搜索引擎數據結果進行深入分析,如重復數據消除、合成、排序等。三是標記記錄。每個記錄皆由搜索引擎源碼標出,每個記錄的源碼都會標注清楚來源等。總結跨數據庫的搜索結果,記錄每個數據庫的連接。
元搜索引擎存在著一些問題,即如何調用另一個文獻數據庫掛載搜索引擎的索引數據庫,在其他搜索引擎中獲取查詢結果,并對結果進行評估、排序和呈現。為了解決這些問題,采用了用戶自主提交、判斷搜索結果的輸出,深度優化檢索機制的設計及加強分布式文獻數據庫的調用等技術[6]。
元搜索引擎通常調用單獨的搜索引擎結果頁面,無須在單獨搜索引擎的索引數據庫交換文獻數據信息。但在早期開發元搜索引擎時,需要通過數據庫驗證方式訪問單獨搜索引擎,其調用多個數據庫來源時要考慮其合法性及相應的搜索引擎索引數據庫處理查詢。不同的數據商為各個搜索引擎提供相關資源時,往往有不同的訪問方式來對其數據進行檢索,所以需要用一種相對的分布式對象技術。為了實現元搜索引擎對數據搜索的要求,通常會并發訪問每個數據庫獨立的檢索引擎,需要等待全部搜索引擎將搜索結果提交匯總并得出結果。每個搜索引擎返回的時間不同,搜索的結果也不一致,這對元搜索引擎檢索完成有所影響。
數據集成是集成所有記錄的匯總信息資源數據庫,將其納入到跨庫檢索系統的數據庫中。使用者使用檢索系統來搜索數據,檢索程序在本地檢索到的數據與基于元搜索引擎檢索到的數據相比,其檢索效率得到了提升。文獻數據資源原文的獲取一般采用以下兩種方式:一是專業文獻數據庫。其通常需要付費,針對有需求的用戶群。其擁有的付費專業數據庫資源會提供相關文獻摘要信息,將其導入目錄跨庫檢索系統相應的資源條件下。跨庫檢索系統在信息檢索時,使用者需要提交查看全文的請求,獲得相應的資源數據庫提供的鏈接。二是其他文獻數據庫。其原始數據不由數據庫供應商提供,可以使用Web爬蟲程序分析所有的數據,總結資源網站,將其引入跨庫檢索系統記錄中。文獻信息資源都保存在本地數據庫中,當用戶提交檢索時,是在自由數據庫中搜索,因此,該方法與元搜索引擎相比,文獻資源集成方法無法反映其相關變化。
中間件技術是為了使用戶在進行跨庫檢索時,通過調用數據庫中的技術令各獨立數據庫全部參與檢索,不需要對原文獻數據做詳細概述。中間件技術將用戶不同文獻的檢索數據轉化為相應的對象要求,通過數據訪問接口提供一個資源對象,返回給用戶實時訪問并整合結果。其最大的優點是實時,當資源對象的數據發生變化時,對象發送的檢索需求可以得到及時的反饋。其文本由文獻資源通過中間件來遞交,不需要去指定數據庫提供方下載,其唯一的要求是,原數據庫提供方需要用戶提供正確的訪問接口。各種數據庫因文件索引的數量不同,檢索技術平臺也不盡相同,這對檢索速度產生了影響,會影響整體檢索時間。基于中間件的檢索模式如圖2。

圖2 基于中間件的檢索模式Fig.2 Retrieval mode based on middleware
目前比較流行的中間件技術有公共網關接口,此技術是基于外部的應用程序(CGI程序)與Web服務器兩者中通信的接口標準,在CGI程序與Web服務器之間相互發送信息的一種方式。CGI中使用的程序規范允許Web服務器在執行時使用外部程序,將外部程序的相應信息反饋到Web瀏覽器,公共網管接口可以將Web的超文本文檔轉化為一個交互式媒體。
建立區域性共享的科技文獻信息資源共享服務系統是服務于科技創新體系的關鍵。目前,科研院所及院校圖書館使用的文獻信息資源系統過于分散,各檢索界面不統一,過程煩瑣,反應緩慢。基于此,分析了各類文獻信息資源的特點,建立了基于元數據的跨庫檢索系統,使用戶能夠在單一界面自定義檢索資源。此方法檢索方式靈活,結果反應迅速。基于元搜索引擎、數據集成及中間件技術,從語義、結構、句法三個方面定義了元數據的框架結構,分析了跨庫檢索系統元數據規范的設計要求。未來,跨庫檢索系統還需要提供鏈接到原始的源文件,以滿足用戶需求。