北京市建設工程發包承包交易中心 覃 林
摘 要:本文從北京市有形建筑市場現有狀況出發,討論了為滿足各類行業進場的招投標業務提供服務,實現“統一進場、分別監管”的要求,提出了行業招投標數據“半結構化”存儲的特點,最后,根據這些特點結合微軟SqlServer XML 數據模型技術,討論了SqlServer XML技術為各行業招投標數據整合提供的高可擴展性,并結合實例討論了在SqlServer XML中如何具體實現了“半結構化”的招投標系統。
關鍵詞:半結構化;XML;招投標
一、業務背景
北京市有形建筑市場,經過數年的努力,建立了由總包招投標系統、專業勞務(材料設備)招投標系統、園林綠化招投標系統、基礎數據庫系統、電子輔助評標系統、建筑業代征稅系統、評標專家抽取系統、合同履約監管系統、勞務合同及施工人員備案系統、信用信息記錄系統、統一門戶網站系統等組成的信息系統體系。發布包括勘察設計、建設工程、市政工程、專業承包、材料與設備招標、勞動力、工程監理、民航工程、園林綠化等15類招標信息。
由于先有的各行業招投標系統,后有各行業統一進場辦公等歷史原因。各系統之間缺乏統一招投標業務流轉機制、系統之間的數據標準不一致,導致整合各系統數據的難度大,無法有效進行數據挖掘。
新的業務系統作為承載政府對招投標工作進行監管的平臺,需要為各類進場的招投標業務提供服務;由于各門類招投標工作有很強的專業特點,業務開展程度也有很大的不同;為實現“統一進場、分別監管”的工作目標,需要按照業務管理特性,構建統一的標準化服務流程,實現規范服務;同時將政府職能部門需要實現“陽光監督”的管理節點通過業務平臺,將各類業務數據信息統一匯總,建立數據、影音的信息關聯并集中呈現,使監察機關“集中”監察的工作目標通過有形市場的業務系統落到實處。
各行業的招投標工作雖然業務特點和業務深度各不相同,但在招投標主要流程工作環節大體相同。相同的招投標流程采用標準的結構化存儲方式,不同的業務采用XML半結構化存儲方式,來靈活地適應各種專業類別的招投標工作。以后水務、鐵路等新進場的每類行業,只需要業務人員通過簡單的數據配置,系統就可以滿足該行業招投標服務需求。
二、XML半結構化技術特點
在信息社會,不是系統中所有信息都可以這樣簡單地用一個表中的字段就能對應的。信息數據按形式分成三類:
1.結構化數據
信息能夠用數據或統一的結構加以表示。這種類別的數據最好處理,只要簡單的建立一個對應的表就可以了。比如我們做一個業務系統,要保存中標公示信息:工程編號、工程名稱、建設單位、中標單位、中標日期等;我們就會建立一個對應的表,然后將對應的信息保存到相應的表中。
2.非結構化數據
信息無法用數據或統一的結構表示,像招標文件、資質證書圖片、招投標數據報表、評標監控錄像信息等等。這類信息我們通常無法直接知道它的內容,數據庫也只能將它保存在一個BLOB字段中,對以后檢索非常麻煩。一般的做法是,建立一個包含三個字段的表(編號number、內容描述varchar(1024)、內容blob)。引用通過編號,檢索通過內容描述。現在還有很多非結構化數據的處理工具,市面上常見的文件管理器就是其中的一種。
3.半結構化數據
這樣的數據和上面兩種類別都不一樣,它是結構化的數據,但是結構變化很大,可擴展性很強,這一結構載體就是XML 。
XML是一種半結構化數據描述語言,它克服了傳統Web描述語言HTML只能夠表達數據的內容,無法表達Web數據的結構特征,不便于半結構化數據查詢這一不足,正在逐步替代HTML,成為新一代Web數據描述與數據交換標準。
從SQL Server 2005 開始,SQL Server 為XML 數據處理提供了廣泛支持。可將XML 值本機存儲在根據XML 架構集合類型化或保持非類型化的xml 數據類型列中。可以對XML 列創建索引。此外,通過使用XQuery (也稱作XML Query,是一種查詢結構化或半結構化XML數據的語言,允許你提取所需的節點和元素。它由W3C定義,可用于今天的大多數主流數據庫引擎中,如Oracle、DB2和SQL Server)和XML DML (XML DML 是針對數據修改的擴展)可支持精細的數據操作。
三、 招投標業務系統與半結構化技術結合
在各行業招投標業務系統中有很多業務數據都是標準化的,如中標信息,通過簡單的結構化建表即可解決數據存儲和數據分析的問題,但更多的是差異性的業務數據,比如項目入場登記,就不像中標信息那樣一致,不同行業登記的信息大不相同。
我們統一的業務系統將通過SqlServer XML半結構化技術來解決這一問題,以項目入場登記舉例:
1.我們先將相同類型的登記信息提取出來為標準信息存為結構化的數據,如圖1所示,包括項目名稱、建設單位等,無論什么行業招投標,這些填報數據都是一致的。

圖1
2.其次將不同行業不同類型的登記信息生成不同的XML數據結構。比如建安工程的結構形式,市政工程的道路、橋梁、管道,園林綠化工程的設計單位,專業工程的專業類別以及各類行業不同的資質要求等等。以園林綠化工程為例,用業務系統配置工具生成XML半結構化數據結構,如圖2所示

圖2
3.然后將不同行業不同類型的登記信息通過業務系統上述生成的XML半結構化數據結構,自動生成數據采集界面,并存入SqlServer 數據庫的XML半結構化字段中,如圖3所示

圖3
4.最后通過SqlServer的XQuery技術對XML半結構化數據查詢,進行業務數據挖掘和統計分析,為統一的“行政監察”提供完善且靈活的行業數據。
四、小結
隨著主流數據庫對XML半結構化數據更好的支持,對相關算法的并行性、效率、動態性都做出了更高的優化,并對查詢優化、DBMS集成服務、將聚類方法應用于半結構化數據。我們應該更多地將招投標領域招標文件、投標文件、合同文件等帶關鍵性數據的結構化文檔轉化為XML半結構化文檔,方便系統通過深度數據挖掘、分析預測等方式形成綜合信息,讓決策層全面了解信息資源情況和動態更新情況,及時、準確、恰當地為其提供決策信息。
參考文獻:
[1]MSDN Library