Routing XML queries
First Claim
1. A method for accessing data over a wide area network comprising:
- providing a decentralized architecture comprising a plurality of data nodes and a plurality of routers, the data nodes having databases, routing information, query processors, and a path indexes, the routers having routing states;
restricting communication between the plurality of routers in accordance with an agreement;
initiating communication between at least two of the plurality of routers in accordance with the agreement, wherein initiating communication comprises sending an advertisement comprising at least one of a path insertion or path deletion by a first one of the plurality of routers to at least one of the plurality of routers with which the first one of the plurality of routers has the agreement; and
blocking propagation of the advertisement by the at least one of the plurality of routers with which the first one of the plurality of routers has the agreement when the at least one of the plurality of routers has more than one next-hop router in a routing state for path information associated with the advertisement.
1 Assignment
0 Petitions
Accused Products
Abstract
A vast amount of information currently accessible over the Web, and in corporate networks, is stored in a variety of databases, and is being exported as XML data. However, querying this totality of information in a declarative and timely fashion is problematic because this set of databases is dynamic, and a common schema is difficult to maintain. The present invention provides a solution to the problem of issuing declarative, ad hoc XPath queries against such a dynamic collection of XML databases, and receiving timely answers. There is proposed a decentralized architectures, under the open and the agreement cooperation models between a set of sites, for processing queries and updates to XML data. Each site consists of XML data nodes. (which export their data as XML, and also pose queries) and one XML router node (which manages the query and update interactions between sites). The architectures differ in the degree of knowledge individual router nodes have about data nodes containing specific XML data. There is therefore provided a method for accessing data over a wide area network comprising: providing a decentralized architecture comprising a plurality of data nodes each having a database, a query processor and a path index, and a plurality of router nodes each having a routing state, maintaining a routing state in each of the router nodes, broadcasting routing state updates from each of the databases to the router nodes, routing path queries to each of the databases by accessing the routing state.
-
Citations
17 Claims
-
1. A method for accessing data over a wide area network comprising:
-
providing a decentralized architecture comprising a plurality of data nodes and a plurality of routers, the data nodes having databases, routing information, query processors, and a path indexes, the routers having routing states; restricting communication between the plurality of routers in accordance with an agreement; initiating communication between at least two of the plurality of routers in accordance with the agreement, wherein initiating communication comprises sending an advertisement comprising at least one of a path insertion or path deletion by a first one of the plurality of routers to at least one of the plurality of routers with which the first one of the plurality of routers has the agreement; and blocking propagation of the advertisement by the at least one of the plurality of routers with which the first one of the plurality of routers has the agreement when the at least one of the plurality of routers has more than one next-hop router in a routing state for path information associated with the advertisement. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A system comprising:
a network having a decentralized architecture, the network comprising; a plurality of data nodes each having a database, routing information, a query processor, and a path index; and a plurality of router nodes each having a routing state, communication between the plurality of router nodes being restricted in accordance with an agreement, said routing nodes configured to; broadcast routing information updates to said routing state from said databases to said router nodes; create mapping indices to data items utilizing said routing state; route path queries to said databases by following said mapping indices, said routing performed by initiating communication between at least two of the plurality of routers in accordance with the agreement, wherein initiating communication comprises sending an advertisement representing at least one of a path insertion or path deletion from a first one of the plurality of routers to at least one of the plurality of routers with which the first one of the plurality of routers has the agreement; and block propagation of the advertisement by the at least one of those of the plurality of routers with which the first one of the plurality of routers has the agreement when the at least one of the plurality of routers has more than one next-hop router in a routing state for path information associated with the advertisement. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17)
Specification