TECHNIQUES FOR FAST AND SCALABLE XML GENERATION AND AGGREGATION OVER BINARY XML
First Claim
1. A computer-implemented method comprising:
- receiving an extended markup language (XML) query that requests data from one or more XML documents;
evaluating the XML query to determine one or more XML results of the XML query, wherein for a particular XML result, of the one or more XML results, evaluating the XML query comprises;
instantiating, in volatile memory, a particular data structure that represents the particular XML result, wherein the particular data structure is encoded in accordance with one or more tags that are specified in the XML query, but the particular data structure does not store the one or more tags; and
storing, in the particular data structure, one or more locators that respectively point to one or more fragments in the one or more XML documents, wherein the particular data structure stores the one or more locators but does not store the one or more fragments pointed to by the one or more locators;
in response to a request indicating the particular XML result, generating a serialized representation of the particular XML result based at least on the particular data structure;
wherein the method is performed by one or more computing devices.
1 Assignment
0 Petitions
Accused Products
Abstract
Techniques for fast and scalable generation and aggregation of XML data are described. In an example embodiment, an XML query that requests data from XML documents is received. The XML query is evaluated to determine one or more XML results. For each particular XML result, evaluating the XML query comprises: instantiating a particular data structure that represents the particular XML result, where the particular data structure is encoded in accordance with tags specified in the XML query but does not store the tags; and storing, in the particular data structure, one or more locators that respectively point to one or more fragments in the XML documents, where the particular data structure stores the one or more locators but does not store the one or more fragments. On demand, in response to a request indicating the particular XML result, a serialized representation of the particular XML result is generated based at least on the particular data structure.
44 Citations
28 Claims
-
1. A computer-implemented method comprising:
-
receiving an extended markup language (XML) query that requests data from one or more XML documents; evaluating the XML query to determine one or more XML results of the XML query, wherein for a particular XML result, of the one or more XML results, evaluating the XML query comprises; instantiating, in volatile memory, a particular data structure that represents the particular XML result, wherein the particular data structure is encoded in accordance with one or more tags that are specified in the XML query, but the particular data structure does not store the one or more tags; and storing, in the particular data structure, one or more locators that respectively point to one or more fragments in the one or more XML documents, wherein the particular data structure stores the one or more locators but does not store the one or more fragments pointed to by the one or more locators; in response to a request indicating the particular XML result, generating a serialized representation of the particular XML result based at least on the particular data structure; wherein the method is performed by one or more computing devices. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. One or more storage media storing one or more sequences of instructions which, when executed by one or more processors, cause the one or more processors to perform steps comprising:
-
receiving an extended markup language (XML) query that requests data from one or more XML documents; evaluating the XML query to determine one or more XML results of the XML query, wherein for a particular XML result, of the one or more XML results, evaluating the XML query comprises; instantiating, in volatile memory, a particular data structure that represents the particular XML result, wherein the particular data structure is encoded in accordance with one or more tags that are specified in the XML query, but the particular data structure does not store the one or more tags; and storing, in the particular data structure, one or more locators that respectively point to one or more fragments in the one or more XML documents, wherein the particular data structure stores the one or more locators but does not store the one or more fragments pointed to by the one or more locators; in response to a request indicating the particular XML result, generating a serialized representation of the particular XML result based at least on the particular data structure. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28)
-
Specification