專利名稱::一種分布式rfid發(fā)現服務實現方法和系統(tǒng)的制作方法
技術領域:
:本發(fā)明涉及一種分布式RFID發(fā)現服務實現方法和系統(tǒng),尤其涉及基于跟蹤供應鏈型模式的分布式RFID發(fā)現服務實現方法和系統(tǒng)。
背景技術:
:無線射頻識別(RadioFrequencyIdentification,RFID)技術是一種非接觸、多目標、移動目標識別的自動識別技術,許多國家都在不遺余力地推廣這種技術,特別是RFID開環(huán)應用技術得到了世界各國的廣泛關注。在RFID開環(huán)應用中,EPCGLobal的核心服務之一發(fā)現服務(DiscoveryService,以下簡稱DS)是指查詢物品在供應鏈的各環(huán)節(jié)發(fā)生的一系列動態(tài)信息,這些動態(tài)信息是由供應鏈的各環(huán)節(jié)分別捕獲到,并存儲在各自的RFID信息服務中。發(fā)現服務的作用在于,當供應鏈的結構非常復雜,其節(jié)點之間相互不知道對方的存在時,如何進行物品動態(tài)信息的查詢?;谶@些日益龐大的物品動態(tài)信息,發(fā)現服務捕獲龐大的物品動態(tài)信息,經過信息分析處理,進而協(xié)助企業(yè)做出更準確的決策。
發(fā)明內容本發(fā)明所要解決的問題是提供一種基于跟蹤供應鏈型模式的分布式RFID發(fā)現服務系統(tǒng)。為解決上述技術問題,本發(fā)明公開了一種分布式RFID發(fā)現服務的實現方法,包括跟蹤步驟,它是沿物流流向,從每個供應鏈節(jié)點獲取部分信息,然后將全部節(jié)點信息拼接出完整物流信息鏈;追溯步驟,它是逆物流流向,同樣從供應鏈每個節(jié)點獲取部分信息,然后將全部節(jié)點信息拼接出完整的物流信息鏈,從中定位特定物品所在的位置;跟蹤步驟具體包括如下步驟(l)發(fā)起查詢步驟通過編碼解析服務查找到物品生產廠商的信息服務地址,然后從生產商信息服務開始發(fā)起查詢,查找本地信息服務中的相關事件,獲取本地查詢結果;(2)查詢處理及查詢路由步驟分析查詢結果,如果該物品被拆為幾個物品,則將原查詢語句重寫為一組查詢語句,分別查詢各個組成部分的供應鏈信息,并將查詢請求發(fā)送到相應的供應鏈下游結點,并獲取遠程查詢結果,合并查詢結果,遞歸運行上述步驟;如果物品被組裝成另一種物品,將原查詢語句修改為查詢這種新物品的供應鏈信息,并獲取遠程查詢結果,合并查詢結果,遞歸運行上述步驟;若無上述情況,則不重寫查詢語句,而是繼續(xù)向供應鏈下游節(jié)點發(fā)出查詢請求,并獲取遠程查詢結果,合并查詢結果,遞歸運行上述步驟;(3)查詢結果整合步驟將本地查詢結果和遠程查詢結果整合,并進行處理,得到最終查詢結果,返回給客戶端;追溯步驟具體包括如下步驟(l)發(fā)起查詢步驟通過編碼解析服務查找到物品零售商的信息服務地址,然后從該地址開始發(fā)起查詢查找本地信息服務中的相關事件,獲取本地查詢結果;(2)查詢處理及查詢路由步驟分析查詢結果,如果該物品是由幾種物品打包而成,則將原查詢語句重寫為一組查詢語句,分別查詢各個組成部分的供應鏈信息,并將查詢請求發(fā)送到相應的供應鏈上游結點,并獲取遠程查詢結果,合并查詢結果,遞歸運行上述步驟;如果物品被組裝成另一種物品,則將查詢語句修改為查詢這種新物品的供應鏈信息,并將查詢請求發(fā)送到相應的供應鏈上游結點,并獲取遠程查詢結果,合并查詢結果,遞歸運行上述步驟;若無上述情況,則不重寫查詢語句,繼續(xù)向供應鏈上游節(jié)點發(fā)出查詢請求,并獲取遠程查詢結果,合并查詢結果,遞歸運行上述步驟;(3)查詢結果整合步驟將本地查詢結果和遠程查詢結果整合,并進行處理,得到最終查詢結果,返回給客戶端。圖1是分布式RFID發(fā)現服務系統(tǒng)的用況;圖2是系統(tǒng)的總體架構;圖3是事件類型分層圖4是根據本發(fā)明實施的分布式RFID發(fā)現服務實現流程;圖5是根據本發(fā)明實施例的跟蹤查詢流程;圖6是根據本發(fā)明實施例的追溯查詢流程;圖7是根據本發(fā)明實施例的查詢引擎模塊的框圖;圖8是根據本發(fā)明實施例的發(fā)布訂閱模塊的框圖9是根據本發(fā)明實施例的發(fā)布訂閱模塊的通信機制的順序圖10是根據本發(fā)明實施例的系統(tǒng)數據庫的實體關系圖ll是根據本發(fā)明實施例的算法關系圖12是根據本發(fā)明實施例的查詢處理算法;圖13是根據本發(fā)明實施例的本地查詢算法;圖14是根據本發(fā)明實施例的重寫查詢結果算法;圖15是根據本發(fā)明實施例的轉發(fā)路由算法;圖16是根據本發(fā)明實施例的合并查詢結果算法。具體實施例方式圖1是分布式RFID發(fā)現服務系統(tǒng)的用況圖。RFID發(fā)現服務主要負責查詢物品在供應鏈中的動態(tài)信息,它與編碼解析服務、信息服務等共同組成了RFID公共服務的核心服務。RFID發(fā)現服務的基本功能包括查詢物品供應鏈信息、單品及包裝物品的定位、問題物品追溯查詢等。RFID發(fā)現服務有兩類用戶一類是應用系統(tǒng),另一類是系統(tǒng)管理者,其中應用系統(tǒng)分為上層的客戶程序和下層的捕獲應用。供應鏈中每個組織、企業(yè)作為網絡中的一個節(jié)點,每個節(jié)點擁有獨立的RFID信息服務(IS)和本地的RFID編碼解析服務。IS負責捕獲該組織、企業(yè)內部發(fā)生的所有RFID事件,存儲在本地,并向直接上、下游節(jié)點提供對本地RFID事件的訪問。編碼解析服務已經建立起來,通過編碼解析服務可以查詢物品的生產商所維護的IS地址。"onest印back-onest印forward"原貝'J是指供應鏈中的節(jié)點擁有它直接上游節(jié)點和直接下游節(jié)點的地址,除非它沒有直接上游節(jié)點或者直接下游節(jié)點。圖2是系統(tǒng)的總體架構。分布式RFID發(fā)現服務系統(tǒng)要適應大規(guī)才莫應用,適應跨地域、跨供應鏈(開環(huán))應用以及滿足數據安全方面的需求,供應鏈各個節(jié)點的信息服務對本地的事件數據有絕對的安全控制和了解,基于"跟蹤供應鏈型模式""設計了該系統(tǒng)的總體架構。在總體架構中,供應鏈的每一個節(jié)點都具有分布式發(fā)現服務查詢引擎,查詢引擎和信息服務、Web服務接口構成了一個三層結構的系統(tǒng),第一層是Web服務層,將系統(tǒng)表示層和業(yè)務邏輯層分開,為客戶提供應用服務的圖形界面,有助于理解和高效定位應用服務,對外提供查詢接口;第二層是查詢引擎,是系統(tǒng)的主要業(yè)務邏輯層,負責查詢信息服務層的事件,以及進行查詢分析、查詢路由轉發(fā)、結果整合等;第三層是信息服務,負責捕獲來自中間件層的業(yè)務事件,并對上層查詢引擎提供事件查詢接口。層次功能Web服務接口對客戶程序提供查詢接口,包括單個物品跟蹤查詢、物品定位、問題物品追溯;基于包裝關系物品的跟蹤查詢、物品定位、問題物品追溯;為供應鏈節(jié)點的直接上、下游節(jié)點提供發(fā)布、訂閱接口;為供應鏈節(jié)點和消息中間件提供發(fā)送和接收消息的接口;基于編碼解析服務,為物品提供查詢靜態(tài)信息的接口;提供單個物品和包裝物品的完整供應鏈信息查詢接口。分布式發(fā)現服務查詢引擎負責查詢來自信息服務層的事件進行轉換、存儲;對客戶端發(fā)起的查詢進行查詢分析;對分析后的查詢進行查詢路由轉發(fā);對來自本地的查詢結果和異地的查詢結果進行整合;提供查詢物品完整供應鏈信息的功能。信息服務層捕獲來自中間件的業(yè)務事件并進行轉換、存儲;提供發(fā)布訂閱功能,對發(fā)布內容和訂閱內容進行匹配,將匹配結果發(fā)送給訂閱者;對上層查詢引擎提供基于時間戳的查詢、基于包裝關系的查詢、基于靜態(tài)屬性的查詢。表1—系統(tǒng)的各層次功能圖3是事件類型分層圖。根據EPCGlobal的體系結構框架,將數據分為Tag數據、事件數據、企業(yè)IS數據、公共服務數據。下圖為各個層次所對應具體的數據類型。下表詳細描述幾種常用數據類型<table>tableseeoriginaldocumentpage10</column></row><table>其中ParentID表示的是CID的集合,通過來表示,MAP表示ParentID和<table>tableseeoriginaldocumentpage11</column></row><table>表2事件數據類型物品在供應鏈中流轉時,當在某個節(jié)點發(fā)生事件時,根據"onest印back-onestepforward"原則,該節(jié)點擁有其直接上游節(jié)點和直接下游節(jié)點的地址,故需要在DS事件數據中添加SendTo和ReceiveFrom兩個元素。圖4是根據本發(fā)明實施例的分布式RFID發(fā)現服務實現流程,其中有兩個主要的流程跟蹤和追溯。跟蹤是沿物流流向,從每個供應鏈節(jié)點獲取部分信息,然后將全部節(jié)點信息拼接出完整物流信息鏈,主要作用是跟蹤一批物品,確定這批物品的物流軌跡。追溯是逆物流流向,同樣從供應鏈每個節(jié)點獲取部分信息,然后將全部節(jié)點信息拼接出完整的物流信息鏈,主要作用是定位某問題物品,找出產品來源,確定問題產品操作環(huán)節(jié)的責任。圖5是根據本發(fā)明實施例的跟蹤查詢流程,包括通過編碼解析服務查找到物品生產廠商的信息服務地址,然后從生產商信息服務開始發(fā)起查詢,查找本地信息服務中的相關事件,獲取本地查詢結果。此處的相關事件是生產商向制造商傳遞了一個物品A;分析查詢結果,如果該物品被拆為幾個物品(例如在制造商處將物品A拆為物品B、物品C和物品D。其中物品B傳遞給一個分銷商,物品C和D傳遞給另一個經銷商),則將原查詢語句重寫為一組查詢語句,分別查詢各個組成部分的供應鏈信息,將查詢請求發(fā)送到相應的供應鏈下游結點,并獲取遠程查詢結果,合并查詢結果,遞歸運行上述步驟;如果物品被組裝成另一種物品,將原查詢語句4務改為查詢這種新物品的供應鏈信息(例如一個分銷商將物品B轉換為物品E),并將查詢請求發(fā)送到相應的供應鏈下游結點,并獲取遠程查詢結果,合并查詢結果,遞歸運行上迷步驟;若無上述情況,則不重寫查詢語句,而是繼續(xù)向供應鏈下游節(jié)點發(fā)出查詢請求,并獲取遠程查詢結杲,合并查詢結果,遞歸運行上述步驟;將本地查詢結果和遠程查詢結果整合,并進行處理,得到最終查詢結果,返回給客戶端。圖6是根據本發(fā)明實施例的追溯查詢流程,包括通過編碼解析服務查找到物品經銷商的信息服務地址,然后從該地址開始發(fā)起查詢,查找本地信息服務中的相關事件,獲取本地查詢結果;分析查詢結果,如杲該物品是由幾種物品打包而成,則將原查詢語句重寫為一組查詢語句,分別查詢各個組成部分的供應鏈信息,并將查詢請求發(fā)送到相應的供應鏈上游結點,并獲取遠程查詢結果,合并查詢結果,遞歸運行上述步驟;如果物品被組裝成另一種物品,則將查詢語句修改為查詢這種新物品的供應鏈信息,并將查詢請求發(fā)送到相應的供應鏈上游結點,并獲取遠程查詢結果,合并查詢結果,遞歸運行上述步驟;若無上述情況,則不重寫查詢語句,繼續(xù)向供應鏈上游節(jié)點發(fā)出查詢請求,并獲取遠程查詢結果,合并查詢結果,遞歸運行上述步驟;將本地查詢結果和遠程查詢結果整合,并進行處理,得到最終查詢結果,返回給客戶端。圖7是根據本發(fā)明實施例的查詢引擎模塊的結構圖。查詢引擎模塊是系統(tǒng)的核心模塊,它負責查詢物品在供應鏈各個節(jié)點的所產生的事件信息,并將這些事件信息進行整合、處理、存儲,然后把完整的供應鏈信息返回給Web服務層。查詢引擎由四個子模塊構成查詢分析、查詢分配、本地查詢、查詢結果處理。查詢分析子模塊接收客戶端發(fā)來的查詢請求,并根據本地的查詢結果,將查詢分為本地查詢和遠程查詢。查詢分配子模處理各種查詢,將遠程查詢發(fā)送給相應供應鏈節(jié)點的查詢引擎。本地查詢子模塊主要查詢本地信息服務的相12關事件。查詢結果處理子模塊是將結杲進行處理,整合出供應鏈信息,將它返回給客戶端。信息服務層負責捕獲、整理新增的物品事件,本地查詢模塊主要查詢本地信息服務的相關事件。圖8是根據本發(fā)明實施例的發(fā)布訂閱模塊的框結構圖。在RFID發(fā)現服務系統(tǒng)中,交互各方使用了發(fā)布/訂閱技術,以減少交互模塊之間的耦合性。發(fā)布訂閱模塊是RFID分布式發(fā)現服務系統(tǒng)的核心模塊之一,各供應鏈節(jié)點分別向上游節(jié)點訂閱各自負責的物品編碼,各供應鏈節(jié)點信息服務層分別向下游節(jié)點發(fā)布各自生產或受理的所有物品編碼,發(fā)布訂閱模塊對發(fā)布內容和訂閱內容進行匹配,并把匹配結果"推送"給訂閱的供應鏈節(jié)點。發(fā)布訂閱模塊設計把供應鏈上、下游節(jié)點的交互過程分為三個階段:發(fā)布訂閱階段供應鏈下游節(jié)點訂閱期望接收到的物品信息,供應鏈上游節(jié)點發(fā)布物品信息內容;匹配階段當訂閱者的訂羊閱內容與發(fā)布者所發(fā)布的內容相匹配時,返回訂閱者唯一標識給發(fā)布者;數據發(fā)送階段供應鏈節(jié)點將匹配結果推送給訂閱的供應鏈下游節(jié)點。圖9是根據本發(fā)明實施例的發(fā)布訂閱模塊的通信機制的順序圖。(1)訂閱者向發(fā)布訂閱中心發(fā)出訂閱事件(subscribe),調用訂閱服務,對感興趣的物品信息進行訂閱,并向發(fā)布訂閱中心注冊自己的地址。(2)發(fā)布者發(fā)布物品信息內容(publish),調用發(fā)布訂閱中心提供的發(fā)布服務,向發(fā)布訂閱中心登記發(fā)布的物品信息。(3)發(fā)布訂閱中心根據發(fā)布的物品信息,與所有訂閱者的所訂閱的物品信息進行匹配。(4)如果發(fā)布的物品信息與訂閱的物品信息匹配,則把訂閱者的地址返回給發(fā)布者(notify—a)。(5)發(fā)布訂閱中心將匹配結果以推模式的方式推送給訂閱者(notify-b)。圖10是根據本發(fā)明實施例的系統(tǒng)數據庫的實體關系圖。根據上文描述的流程以及各核心模塊的設計可以歸納如下判斷本地節(jié)點是否在物品的供應鏈上;查詢物品在本地節(jié)點存在哪些行為,具體說來有一下幾種物品接收自某一供應鏈節(jié)點;物品發(fā)送至某些供應鏈節(jié)點;和其它物品組裝成一種新物品,由其它物品組裝而成,物品是本地節(jié)點生產的,查詢本地節(jié)點是否為物品當前所在的位置,供應鏈的每個節(jié)點上都擁有數據庫來存儲物品所產生的事件。下面列出數據庫中一些主要的表和字段。表名RawEvent列名數據類型(精度范圍)空/非空約束條件EventIDInteger非空EventTypeString非空ProductIDCID-V非空LocalAddressString非空TimeDate非空^卜充i兌明主鍵EventID表3RawEvent表表示物品編碼為CID的物品于時刻Time在本地節(jié)點LocalAddress產了某種事件EventID,具體事件類型EventType需要根據以后定義的幾個關系才能得知。需要注意的是,物品發(fā)生任何一種事件都會被本地信息服務捕獲。表名Pack列名數據類型(精度范圍)空/非么約束條件EventIDInteger非空EventTypeString非空ParentCIDCID-V非空ChildCIDCID-V非空LocalAddressString非空TimeDate非空^卜充i兌明主鍵EventID表4Pack表表示編碼為ParentEventID的物品于時刻Time在本地節(jié)點LocalAddress發(fā)生了某種行為EventType,EventType有兩種打包、拆包。表名SendAridReceive列名數據類型(精空/非約束條件<table>tableseeoriginaldocumentpage15</column></row><table>表格5SendAndReceive表表示編碼為EventID的物品于時刻Time在本地節(jié)點LocalAddress發(fā)生了某種行為EventType,EventType有兩種發(fā)送、接收。判斷本地節(jié)點是否在物品的供應鏈上,只需要判斷Event表中是否存在CID為物品編碼的記錄;判斷物品是否由本地節(jié)點生產,直接判斷Produce表中是否存在CID為物品編碼記錄;判斷物品是否是一種新物品的組成部分時,判斷Contain表中是否存在CID為物品編碼的記錄;判斷物品是否是由其它物品組成的一種新物品時,判斷Contain表中是否存在CID為物品編碼的記錄;需要注意的是,上述處理辦法并沒有考慮在本地節(jié)點里,組合得到的新物品能夠繼續(xù)和其它物品組成另外新物品的情況,即現有物品A、B組成了新物品C,C和物品D又組成了新物品E。這就要求在更新數據庫時先將這樣的組合關系完全展開,即認為E物品是由A、B、D組成的。最后,考慮最復雜的一種情況,即判斷物品是發(fā)送出去的還是接收進來的??紤]下列幾中情況物品是在本地節(jié)點生產的或者是由其它物品組成的,這時如果表SendAndReceive中沒有物品編碼為CID的記錄時,則物品仍然留在本地節(jié)點。物品是在本地節(jié)點和其它物品一起被組裝成新物品時,這時如果關系SendAndReceive中存在CID為物品編碼的一條記錄,則物品來自地址為LocalAddress的供應鏈節(jié)點。除了上述幾種情況外,表SendAndReceive中存在2個CID值為物品編碼的記錄,這時表示物品只是途經本地節(jié)點,并沒有進行其它操作,將時間進行那個排序,小的時間值是接收物品的時間,大的時間值是發(fā)送物品的時間。圖11是根據本發(fā)明實施例的算法關系圖。系統(tǒng)在供應鏈每個節(jié)點上都安裝有查詢引擎,每個查詢引擎僅為其節(jié)點的直接上、下游節(jié)點提供訪問接口,才艮據上文系統(tǒng)架構圖、算法關系圖,系統(tǒng)查詢的處理流程總結如下(1)發(fā)起查詢初始,供應鏈上的任一節(jié)點通過查詢客戶端向本地節(jié)點的查詢引擎發(fā)出查詢請求,主要參數為物品標簽編碼及其可以被RFID讀寫器讀取到或人工獲得的零部件的標簽編碼。具體的,客戶端通過RFID讀寫器等方式獲得需要查詢的物品標簽集合,給查詢賦予一個隨機的queryID。row^7yp6..A卯fe7>p6表6:查詢的數據結構Query表示查詢的結構queryID是查詢的唯一標識;epcList是查詢中包含的所有EPC編碼;queryType表示查詢的類型,查詢的類型有S艮蹤、追溯,routeTo表示查詢的目標供應鏈節(jié)點地址。①本地查詢引擎首先查詢現有的編碼解析服務,將所有標簽編碼交給編碼解析網絡進行解析。②編碼解析服務返回本地查詢引擎所有標簽編碼的生產商企業(yè)的信息服務地址,相當于生產商節(jié)點的查詢引擎地址。③本地查詢引擎向所有已知的生產商節(jié)點的查詢引擎(包括本地查詢引擎)并行的發(fā)出相應的查詢。(2)查詢處理及查詢路由該過程是處理查詢的核心過程,叫做"processandroute"。每個節(jié)點的查詢引擎首先查詢其本地信息服務的相關事件,然后根據本地查詢結杲生成與其直接上游和直接下游相關的新的查詢請求;如果本地查詢引擎已經處理過相同的查詢,則停止處理。然后,每個節(jié)點的查詢引擎并發(fā)的向其直接上游或直接下游發(fā)送新的查詢請求。最后,每個節(jié)點的查詢引擎并發(fā)的將其本地查詢結果返回給發(fā)起查詢的節(jié)點。G)查詢結果整合客戶端將在預定的等待時間內將接收到的查詢結果整理排序,得到最終查詢結果。因為各節(jié)點是并發(fā)的返回結果,那么客戶端需要分辨哪些結果屬于同一個初始查詢,為此,需要保證所有轉發(fā)的查詢的queryID與初始查詢保持一致。_表7Result的數據結構Result表示查詢結果的數據結構,包含一個查詢唯一標識,同時包含一組查詢返回的事件列表(放到數據結構算法)下面將詳細描述查詢流程中的各個主要算法,包括查詢處理算法、本地查詢算法、重寫查詢結構算法、轉發(fā)路由算法、合并查詢結果算法等。圖12是根據本發(fā)明實施例的查詢處理算法。該過程是處理查詢的核心過程,每個節(jié)點的查詢引擎首先查詢其本地信息服務的相關事件,然后沖艮據本地查詢結果生成與其直接上、下游相關的新的查詢請求;如果本地查詢引擎已經處理過相同的查詢,則停止處理。圖13是根據本發(fā)明實施例的本地查詢算法。該算法負責對本地信息服務執(zhí)行查詢首先檢查Cache中是否有該查詢的結果,如果沒有,則查詢信息服務層。最后將本地查詢結果填加到Cache中,并返回給客戶端所在的查詢引擎。圖14是^^艮據本發(fā)明實施例的重寫查詢結果算法。該算法負責4艮據本地查詢引擎在本地的查詢結果將查詢重寫成與其直接上、下游節(jié)點相關的新查詢請求因為ObservationEvent和Q腿tityEvent記錄了本地節(jié)點與其直接上、下游節(jié)點之間的物品收發(fā)關系,所以需要在本地查詢結果中的這兩類事件進行分析,一方面,才艮據receiveFrom判斷與該事件相關的CID來源于本節(jié)點的直17接上游,從而生成向直接上游轉發(fā)的新查詢,其中新查詢的queryID必須與原查詢一致,新查詢的CID集合是該事件的CID集合與本地查詢得到的所有相關CID集合的并集,以過濾該事件中不相關的CID.另一方面,沖艮據seridTo判斷與該事件相關的CID被發(fā)送到本節(jié)點的直接下游,從而生成向直接下游轉發(fā)的新查詢。然后,對所得的所有新查詢,將具有相同routeTo的查詢的epcList進行合并,這樣多個查詢可以合并為一個查詢。最后,通過檢查新查詢是否已在ResultCache中緩存(只需判斷q認yID和epcList是否相同),可以消除重復查詢,最終得到一組新查詢。圖15是根據本發(fā)明實施例的轉發(fā)路由算法。該算法負責將查詢以及查詢類型發(fā)送給相應的供應鏈節(jié)點。圖16是根據本發(fā)明實施例的合并查詢結果算法??蛻舳藢⒃陬A定的等待時間內將接收到的查詢結果整理排序,得到最終查詢結果。因為各節(jié)點是并發(fā)的返回結果,那么客戶端需要分辨哪些結果屬于同一個初始查詢,為此,需要保證所有轉發(fā)的查詢的queryID與初始查詢保持一致。當然,本發(fā)明還可有其他實現方式,在不背離本發(fā)明精神及其實質的情況些相應的改變和變形都應屬于本發(fā)明權利要求的保護范圍。權利要求1、一種分布式RFID發(fā)現服務的實現方法,包括跟蹤步驟,是沿物流流向,從每個供應鏈節(jié)點獲取部分信息,然后將全部節(jié)點信息拼接出完整物流信息鏈;以及追溯步驟,是逆物流流向,同樣從供應鏈每個節(jié)點獲取部分信息,然后將全部節(jié)點信息拼接出完整的物流信息鏈,從中定位特定物品所在的位置;跟蹤步驟具體包括如下步驟第一發(fā)起查詢步驟通過編碼解析服務查找到物品生產廠商的信息服務地址,然后從生產商信息服務開始發(fā)起查詢,查找本地信息服務中的相關事件,獲取本地查詢結果;第一查詢處理及查詢路由步驟分析查詢結果,如果該物品被拆為幾個物品,則將原查詢語句重寫為一組查詢語句,分別查詢各個組成部分的供應鏈信息,將查詢請求發(fā)送到相應的供應鏈下游結點,并獲取遠程查詢結果,合并查詢結果,遞歸運行上述步驟;如果物品被組裝成另一種物品,將原查詢語句修改為查詢這種新物品的供應鏈信息,并獲取遠程查詢結果,合并查詢結果,遞歸運行上述步驟;若無上述情況,則不重寫查詢語句,而是繼續(xù)向供應鏈下游節(jié)點發(fā)出查詢請求,并獲取遠程查詢結果,合并查詢結果,遞歸運行上述步驟;第一查詢結果整合步驟將本地查詢結果和遠程查詢結果整合,并進行處理,得到最終查詢結果,返回給客戶端。追溯步驟具體包括如下步驟第二發(fā)起查詢步驟通過編碼解析服務查找到物品零售商的信息服務地址,然后從該地址開始發(fā)起查詢,查找本地信息服務中的相關事件,獲取本地查詢結果;第二查詢處理及查詢路由步驟分析查詢結果,如果該物品是由幾種物品打包而成,則將原查詢語句重寫為一組查詢語句,分別查詢各個組成部分的供應鏈信息,并將查詢請求發(fā)送到相應的供應鏈上游結點,并獲取遠程查詢結果,合并查詢結果,遞歸運行上述步驟;如果物品被組裝成另一種物品,則將查詢語句修改為查詢這種新物品的供應鏈信息,并將查詢請求發(fā)送到相應的供應鏈上游結點,并獲取遠程查詢結果,合并查詢結果,遞歸運行上述步驟;若無上述情況,則不重寫查詢語句,繼續(xù)向供應鏈上游節(jié)點發(fā)出查詢請求,并獲取遠程查詢結果,合并查詢結果,遞歸運行上述步驟;第二查詢結果整合步驟將本地查詢結果和遠程查詢結果整合并進行處理,得到最終查詢結果,返回給客戶端。2、如權利要求1所述的分布式RFID發(fā)現服務的實現方法,其中,在執(zhí)行跟蹤步驟和追溯步驟前,更進一步包括發(fā)布訂閱步驟,具體為供應鏈下游節(jié)點訂閱期望接收到的物品信息,供應鏈上游節(jié)點發(fā)布物品信息內容。當訂閱者的訂單與發(fā)布者所發(fā)布的內容相匹配時,返回訂閱者唯一標識給發(fā)布者;供應鏈節(jié)點將匹配結果推送給訂閱的供應鏈下游節(jié)點。3、如權利要求2所述的分布式RFID發(fā)現服務的實現方法,其中,所述發(fā)布訂閱步驟包括如下通信機制訂閱者向發(fā)布訂閱中心發(fā)出訂閱事件,調用訂閱服務,對感興趣的物品信息進行訂閱,并向發(fā)布訂閱中心注冊自己的地址;發(fā)布者發(fā)布物品信息內容,調用發(fā)布訂閱中心提供的發(fā)布服務,向發(fā)布訂閱中心登記發(fā)布的物品信息;發(fā)布訂閱中心才艮據發(fā)布的物品信息,與所有訂閱者的所訂閱的物品信息進4亍匹配;如果發(fā)布的物品信息與訂閱的物品信息匹配,則把訂閱者的地址返回給發(fā)布者;發(fā)布訂閱中心將匹配結果,例如以推^^莫式的方式,推送給訂閱者。4、如權利要求1所述的分布式RFID發(fā)現服務的實現方法,其中,第一查詢發(fā)起步驟和第二查詢發(fā)起步驟具體為本地查詢引擎首先查詢現有的編碼解析服務,將所有標簽編碼交給編碼解析網絡進行解析;編碼解析服務向返回本地查詢引擎所有標簽編碼的生產商企業(yè)的信息服務地址,相當于生產商節(jié)點的查詢引擎地址;本地查詢引擎向所有已知的生產商節(jié)點的查詢S1擎并行的發(fā)出相應的查詢。5、一種分布式RFID發(fā)現服務的實現系統(tǒng),包括跟蹤裝置,用于沿物流流向,從每個供應鏈節(jié)點獲取部分信息,然后將全部節(jié)點信息拼接出完整物流信息鏈;以及追溯裝置,用于逆物流流向,同樣從供應鏈每個節(jié)點獲取部分信息,然后將全部節(jié)點信息拼接出完整的物流信息鏈;所述跟蹤裝置具體包括第一發(fā)起查詢單元用于通過編碼解析服務查找到物品生產廠商的信息服務地址,然后從生產商信息服務開始發(fā)起查詢,查找本地信息服務中的相關事件,獲取本地查詢結果;第一查詢處理及查詢路由單元用于分析查詢結果,如果該物品被拆為幾個物品,則將原查詢語句重寫為一組查詢語句,分別查詢各個組成部分的供應鏈信息,并將查詢請求發(fā)送到相應的供應鏈下游結點,并獲取遠程查詢結果,合并查詢結果,遞歸運行上述步驟;如果物品被組裝成另一種物品,將原查詢語句修改為查詢這種新物品的供應鏈信息,并獲取遠程查詢結果,合并查詢結果,遞歸運行上述步驟;若無上述情況,則不重寫查詢語句,而是繼續(xù)向供應鏈下游節(jié)點發(fā)出查詢請求,并獲取遠程查詢結果,合并查詢結果,遞歸運行上述步驟;第一查詢結果整合單元用于將本地查詢結果和遠程查詢結果整合并進行處理,得到最終查詢結果,返回給客戶端。所述追溯裝置具體包括第二發(fā)起查詢單元用于通過編碼解析服務查找到物品零售商的信息服務地址,然后從該地址開始發(fā)起查詢查找本地信息服務中的相關事件,獲取本地查詢結果;第二查詢處理及查詢路由單元用于分析查詢結果,如果該物品是由幾種物品打包而成,則將原查詢語句重寫為一組查詢語句,分別查詢各個組成部分的供應鏈信息,并將查詢請求發(fā)送到相應的供應鏈上游結點,并獲取遠程查詢結果,合并查詢結果,遞歸運行上述步驟;如果物品被組裝成另一種物品,則將查詢語句修改為查詢這種新物品的供應鏈信息,并將查詢請求發(fā)送到相應的供應鏈上游結點,并獲取遠程查詢結果,合并查詢結果,遞歸運行上述步驟;若無上述情況,則不重寫查詢語句,繼續(xù)向供應鏈上游節(jié)點發(fā)出查詢請求,并獲取遠程查詢結果,合并查詢結果,遞歸運行上述步驟;第二查詢結果整合單元用于將本地查詢結果和遠程查詢結果整合并進行處理,得到最終查詢結果,返回給客戶端。6.—種程序,用于執(zhí)行如權利要求1所述的方法。全文摘要本發(fā)明公開了一種分布式RFID發(fā)現服務的實現方法,包括跟蹤步驟,是沿物流流向,從每個供應鏈節(jié)點獲取部分信息,然后將全部節(jié)點信息拼接出完整物流信息鏈;以及追溯步驟,是逆物流流向,同樣從供應鏈每個節(jié)點獲取部分信息,然后將全部節(jié)點信息拼接出完整的物流信息鏈,從中定位特定物品所在的位置。文檔編號G06Q10/00GK101625742SQ200910087478公開日2010年1月13日申請日期2009年6月25日優(yōu)先權日2009年6月25日發(fā)明者張世琨,文趙,鄧鵬鵬,雨黃申請人:北京大學