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 each having a database and routing information, a query processor and a path index, and a plurality of router nodes each having a routing state;
restricting communication between the plurality of router nodes in accordance with an agreement;
maintaining a routing state in said router nodes;
aggregating path information associated with a routing state by combining data paths to form a common data path, thereby reducing a number of data paths stored in memory of said router nodes;
broadcasting routing information updates to said routing state from said databases to said router nodes;
creating mapping indices utilizing said routing state to data items;
initiating communication between at least two of the plurality of routers in accordance with the agreement, the communication concerning enabling access to one or more of said data items from at least one data node through at least one of the plurality of routers and being based on said mapping indices, wherein initiating communication comprises sending an advertisement comprising 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
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.
39 Citations
12 Claims
-
1. 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 and routing information, a query processor and a path index, and a plurality of router nodes each having a routing state; restricting communication between the plurality of router nodes in accordance with an agreement; maintaining a routing state in said router nodes; aggregating path information associated with a routing state by combining data paths to form a common data path, thereby reducing a number of data paths stored in memory of said router nodes; broadcasting routing information updates to said routing state from said databases to said router nodes; creating mapping indices utilizing said routing state to data items; initiating communication between at least two of the plurality of routers in accordance with the agreement, the communication concerning enabling access to one or more of said data items from at least one data node through at least one of the plurality of routers and being based on said mapping indices, wherein initiating communication comprises sending an advertisement comprising 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 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. 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 and routing information, a query processor and a path index, and a plurality of router nodes each having a routing state; restricting communication between the plurality of router nodes in accordance with an agreement; maintaining in said router nodes a data path for a set of said data nodes; updating routing information to said data path in said router nodes; aggregating path information associated with a routing state by combining data paths to form a common data path, thereby reducing a number of data paths stored in memory of said router nodes; creating mapping indices utilizing said routing state to data items; and initiating communication between at least two of the plurality of routers in accordance with the agreement, the communication concerning enabling access to one or more of said data items from at least one data node through at least one of the plurality of routers based one said mapping indices, wherein initiating communication comprises sending an advertisement comprising 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 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 (7, 8)
-
-
9. A system comprising:
a network having a decentralized architecture, the network comprising; a plurality of data nodes each having a database and 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; maintain said routing state in said router nodes; aggregate path information associated with said routing state by combining data paths to form a common data path, thereby reducing a number of data paths stored in memory of said router nodes; broadcast routing information updates to said routing state from said databases to said router nodes; create mapping indices utilizing said routing state to data items; 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, the communication concerning enabling access to information from at least one data node through at least one of the plurality of routers, wherein initiating communication comprises sending an advertisement comprising 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)
Specification