[發明專利]多核分片XML并行解析方法無效
| 申請號: | 201110317045.8 | 申請日: | 2011-10-18 |
| 公開(公告)號: | CN102495722A | 公開(公告)日: | 2012-06-13 |
| 發明(設計)人: | 唐雪飛;陳科;汪海良;李應洪 | 申請(專利權)人: | 成都康賽電子科大信息技術有限責任公司 |
| 主分類號: | G06F9/38 | 分類號: | G06F9/38;G06F9/50;G06F17/30 |
| 代理公司: | 電子科技大學專利中心 51203 | 代理人: | 周永宏 |
| 地址: | 610054 四川省成都市*** | 國省代碼: | 四川;51 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 多核 分片 xml 并行 解析 方法 | ||
技術領域
本發明屬于計算機信息分析與數據處理領域,具體涉及一種多核分片XML并行解析方法。
背景技術
XML(Extensible?Markup?Language)是Internet上數據表示和數據交換的標準,是由互聯網聯合組織(W3C)指定的。XML提供了將數據庫外的物理數據轉換成與之相關的元數據的統一標準。越來越多的數據使用XML的標準進行表示和存儲。從數據庫的角度來看,在這些大量的XML文檔中所包含的數據可以進行抽取和分析。那么如何對XML文檔內容進行高效率的查詢變得越來越重要。
XML技術廣泛地應用在分布式計算、Web?Service、SOA等現代信息技術中,XML解析是XML處理的基本手段,但傳統單線程的XML讀寫方式不能充分利用多處理器和多核心處理器的優勢,因此XML處理效率不高。
如何充分利用當今計算機多處理器、多核心處理器以及大內存的優勢,提高XML訪問速率和處理效率是本發明的主要創新點。本發明所涉及的現有技術包括:
1.XML?DOM解析技術
XML?DOM是用于XML的標準對象模型、用于XML的標準編程接口。DOM中立于平臺和語言,是W3C的標準。XML?DOM定義了所有XML元素的對象和屬性,以及訪問它們的方法(接口)。因此,XML?DOM是用于獲取、更改、添加或刪除XML元素的標準。
XML?DOM把XML文檔視為一棵節點樹(node-tree)。樹中的所有節點彼此之間都有關系。這種樹結構被稱為節點樹,可通過這棵樹訪問所有節點。可以修改或刪除它們的內容,也可以創建新的元素。這顆節點樹展示了節點的集合,以及它們之間的聯系。
這棵樹從根節點開始,然后在樹的最低層級向文本節點長出枝條。節點樹中的節點彼此之間都有等級關系。父、子和同級節點用于描述這種關系。父節點擁有子節點,位于相同層級上的子節點稱為同級節點(兄弟或姐妹)。在節點樹中,頂端的節點成為根節點,根節點之外的每個節點都有一個父節點。節點可以有任何數量的子節點。葉子是沒有子節點的節點,同級節點是擁有相同父節點的節點。因為XML數據是按照樹的形式進行構造的,所以可以在不了解樹的確切結構且不了解其中包含的數據類型的情況下,對其進行遍歷。
大多數瀏覽器都內建了供讀取和操作XML的XML解析器。解析器把XML轉換為編程語言可存取的對象。
2.多線程并行與互斥技術
每個正在系統上運行的程序都是一個進程。每個進程包含一到多個線程。進程也可能是整個程序或者是部分程序的動態執行。線程是一組指令的集合,或者是程序的特殊段,它可以在程序里獨立執行。也可以把它理解為代碼運行的上下文。所以線程基本上是輕量級的進程,它負責在單個程序里執行多任務。通常由操作系統負責多個線程的調度和執行。
當有多個線程并行運行時,采用線程池對多線程進行管理。線程池是一種多線程處理形式,處理過程中將任務添加到隊列,然后在創建線程后自動啟動這些任務。線程池線程都是后臺線程。每個線程都使用默認的堆棧大小,以默認的優先級運行,并處于多線程單元中。如果某個線程在托管代碼中空閑(如正在等待某個事件),則線程池將插入另一個輔助線程來使所有處理器保持繁忙。如果所有線程池線程都始終保持繁忙,但隊列中包含掛起的工作,則線程池將在一段時間后創建另一個輔助線程,但線程的數目永遠不會超過最大值。超過最大值的線程可以排隊,但他們要等到其他線程完成后才啟動。
在多線程環境下,采用信號量完成線程的互斥和同步。信號量是在多線程環境下使用的一種設施,是可以用來保證兩個或多個關鍵代碼段不被并發調用。在進入一個關鍵代碼段之前,線程必須獲取一個信號量;一旦該關鍵代碼段完成了,那么該線程必須釋放信號量。其它想進入該關鍵代碼段的線程必須等待直到第一個線程釋放信號量。為了完成這個過程,需要創建一個信號量(VI),然后將獲取信號量(Acquire?Semaphore?VI)以及釋放信號量(Release?Semaphore?VI)分別放置在每個關鍵代碼段的首末端,確認這些信號量(VI)引用的是初始創建的信號量。
3.多處理器分配和負載均衡技術
多處理器任務分配和負載均衡是在多處理器核心的環境下,對處理任務進行動態分配和調試,從而提高處理器利用率,實現多線程并行的高速XML解析。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于成都康賽電子科大信息技術有限責任公司,未經成都康賽電子科大信息技術有限責任公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110317045.8/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種分色戒指的加工方法
- 下一篇:一種蘭花盆景無土栽培方法





