Patents by Inventor Nipun Agarwal
Nipun Agarwal has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 8346725Abstract: XML schema evolutions can be performed on an XML-type database using partial data copy techniques. The partial data copy techniques provide mechanisms to identify a minimal set of data in the database that needs be copied out in order for schema evolution operations to occur. Identifying the minimal set of data involves comparing an existing XML schema to a new XML schema and determining the differences between the two schemas. Based on those differences, a minimal set of data can be determined. That data can then be copied to a temporary storage location, while the XML schema and its associated database structure are updated to conform to the new XML schema. Then, the minimal set of data is copied back into the modified database structure.Type: GrantFiled: September 15, 2006Date of Patent: January 1, 2013Assignee: Oracle International CorporationInventors: Thomas Baby, Abhyudaya Agrawal, Sam Idicula, Nipun Agarwal
-
Patent number: 8326839Abstract: A two-level cache to facilitate resolving resource path expressions for a hierarchy of resources is described, which includes a system-wide shared cache and a session-level cache. The shared cache is organized as a hierarchy of hash tables that mirrors the structure of a repository hierarchy. A particular hash table in a shared cache includes information for the child resources of a particular resource. A database management system that manages a shared cache may control the amount of memory used by the cache by implementing a replacement policy for the cache based on one or more characteristics of the resources in the repository. The session-level cache is a single level cache in which information for target resources of resolved path expressions may be tracked. In the session-level cache, the resource information is associated with the entire path expression of the associated resource.Type: GrantFiled: November 9, 2009Date of Patent: December 4, 2012Assignee: Oracle International CorporationInventors: Sam Idicula, Sabina Petride, Bhushan Khaladkar, Nipun Agarwal
-
Patent number: 8301620Abstract: The approaches described herein provide an efficient way for a database server to process certain kinds of queries that require the evaluation of an aggregation function over XML data stored in an object-relational database. An aggregation function takes multiple inputs and generates a single output. A database server first determines whether the query qualifies for this particular kind of optimization, then creates a query execution plan that specifies the use of an enhanced path-based row source, eliminating the need for a second path-based row source for computing the aggregation function. The enhanced path-based row source specified in the query execution plan computes an aggregation function and stores the result of that function computation in a column of each row. The XPath evaluation results that are the individual inputs to the aggregation function are only stored temporarily until they are used to compute the aggregation function.Type: GrantFiled: May 28, 2009Date of Patent: October 30, 2012Assignee: Oracle International CorporationInventors: Balasubramanyam Sthanikam, Sam Idicula, Nipun Agarwal
-
Publication number: 20120272137Abstract: Data used and generated by the process of validating XML documents is divided into two categories: compile-time static data and runtime data. Runtime data may be specific to a particular XML document and changes when validating the XML document, while compile-time data does not change in this way. For example, compile-time data may be data that defines, according to a schema, the descendant elements and ordering between them. Runtime data is information generated to track which descendants occurred in a particular XML document being validated. Compile-time static data, once generated to validate a particular XML document, is cached within a shared volatile memory. Once the compile-time data is cached, the compile-time static data may be used to validate other XML documents without the need to regenerate the compile-time static data.Type: ApplicationFiled: June 26, 2012Publication date: October 25, 2012Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: VIJAY MEDI, SAM IDICULA, NIPUN AGARWAL
-
Patent number: 8255372Abstract: Data used and generated by the process of validating XML documents is divided into two categories: compile-time static data and runtime data. Runtime data may be specific to a particular XML document and changes when validating the XML document, while compile-time data does not change in this way. For example, compile-time data may be data that defines, according to a schema, the descendant elements and ordering between them. Runtime data is information generated to track which descendants occurred in a particular XML document being validated. Compile-time static data, once generated to validate a particular XML document, is cached within a shared volatile memory. Once the compile-time data is cached, the compile-time static data may be used to validate other XML documents without the need to regenerate the compile-time static data.Type: GrantFiled: January 18, 2010Date of Patent: August 28, 2012Assignee: Oracle International CorporationInventors: Vijay Medi, Sam Idicula, Nipun Agarwal
-
Patent number: 8250062Abstract: A database system may perform a streaming evaluation of an XPath expression by utilizing an XPath evaluation component in tandem with an XML event-streaming component. For a more optimal filtered streaming evaluation, the XML event-streaming component may provide an interface whereby the evaluation component sends certain criteria to the event-streaming component when requesting an XML event. The criteria may be based on a next unmatched step in the XPath expression. In response to the request for an XML event, the event-streaming component may only return events that match the criteria. The evaluation component may be, for example, a compiled state machine for the XPath expression. The criteria may be pre-compiled for each possible state in the state machine. The event-streaming component may also utilize the criteria along with schema information to skip parsing of certain segments of XML data.Type: GrantFiled: November 9, 2007Date of Patent: August 21, 2012Assignee: Oracle International CorporationInventors: Ning Zhang, Sivasankaran Chandrasekar, Nipun Agarwal, Sam Idicula
-
Patent number: 8239373Abstract: The approaches described herein provide an efficient way to process certain kinds of queries that retrieve XML data stored in an object-relational database. A technique determines whether a query comprises a plurality of iteration expressions that exhibit a particular relationship to one another, and if so, re-writes the query and produces an optimized query execution plan. The query execution plan specifies an XPath-based row source with caching enabled. A very small cache structure is used, and reference locators are stored in the cache that point into binary-encoded data rather than copying XMLType data into the cache. Row data may be cached on the first use of the path-based row source and re-used in subsequent requests for rows. Once there is a subsequent request for rows from the optimized path-based row source, the cache may be reorganized to efficiently produce the rows of the row source.Type: GrantFiled: May 18, 2009Date of Patent: August 7, 2012Assignee: Oracle International CorporationInventors: Balasubramanyam Sthanikam, Sam Idicula, Nipun Agarwal
-
Patent number: 8224837Abstract: Techniques are provided for accessing and storing files within a virtual folder. A virtual folder is a folder that is logically a part of a hierarchical folder structure of a file system repository, but the contents of the virtual folder are not physically stored in the file system repository. A client may issue, to an access mechanism, a request to perform a file operation on a file in a virtual folder. The access mechanism, which may be a database server or a component therein, may perform the file operation on the file in the virtual folder as if the file was stored in a particular folder within the hierarchical folder structure implemented by the file system repository. Advantageously, files may be physically stored outside of the file system repository, but still be a part of the hierarchical folder structure implemented by the file system repository.Type: GrantFiled: June 29, 2005Date of Patent: July 17, 2012Assignee: Oracle International CorporationInventors: Namit Jain, Nipun Agarwal, Vikram Kapoor, Syam Pannala, Ravi Murthy
-
Patent number: 8219569Abstract: A method and system for the in-place evolution of XML schemas is disclosed. To automatically evolve an existing XML schema, a schema evolver receives both an existing XML schema and an XML document as input. The XML document indicates changes to be made to the existing XML schema. Based on the existing XML schema and the XML document, the schema evolver evolves the existing XML schema into a new XML schema that incorporates the changes indicated in the XML document. According to one aspect, the schema evolver generates one or more SQL statements based on the new XML schema. The SQL statements, when executed by a database server, cause the database server to evolve database structures that were based on the formerly existing XML schema so that the database structures conform to the new XML schema. This is accomplished “in place,” without copying the data in the database structures.Type: GrantFiled: August 25, 2003Date of Patent: July 10, 2012Assignee: Oracle International CorporationInventors: Sam Idicula, Sivasankaran Chandrasekar, Nipun Agarwal, Ravi Murthy
-
Patent number: 8209361Abstract: Techniques are described herein for efficient and scalable processing of complex sets of XML schemas. The techniques described herein provide for reducing duplication of schema elements in volatile memory by building an XML schema in-memory model that stores repeating schema elements in in-memory data structures that are separate from in-memory data structures that store the parent schema elements which logically include or otherwise refer to the repeating schema elements. The techniques described herein also provide for faster generation of an in-memory model of an XML schema by pre-loading, in data structures on persistent storage, of schema elements from dependent XML schemas that are referenced and/or incorporated by the XML schema.Type: GrantFiled: January 19, 2010Date of Patent: June 26, 2012Assignee: Oracle International CorporationInventors: Sam Idicula, Asha Tarachandani, Sivasankaran Chandrasekar, Vijay Medi, Ali Tabar, Nipun Agarwal
-
Patent number: 8209352Abstract: A method, mechanism, and computer program product for storing, accessing, and managing XML data is disclosed. The approach supports efficient evaluation of XPath queries and also improves the performance of data/fragment extraction. The approach can be applied to schema-less documents. The approach is applicable to all database systems and other servers which support storing and managing XML content. In addition, the approach can be applied to store, manage, and retrieve other types of unstructured or semi-structured data in a database system.Type: GrantFiled: January 13, 2009Date of Patent: June 26, 2012Assignee: Oracle International CorporationInventors: Ravi Murthy, Nipun Agarwal, Eric Sedlar
-
Publication number: 20120150865Abstract: Techniques are provided to achieve performance improvements for path-based access to hierarchical data and for utilizing an extensible indexing framework. Extensible operators may be optimized by evaluating the operators using functions native to the database system instead of using functions defined through an extensible indexing mechanism. Furthermore, the database system may resolve a resource path of a query when the query is compiled, and may store the mapping of the resource path to one or more resources in a cursor for the query execution plan to avoid resolving the resource path each time the cursor is used to run the query. The cursor may be made dependent on the one or more resources to which the resource path refers at compile time. This takes advantage of the observation that the mapping of the resource path to particular resources rarely changes between evaluations of a particular query.Type: ApplicationFiled: January 17, 2012Publication date: June 14, 2012Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Asha Tarachandani, Bhushan Khaladkar, Sam Idicula, Adiel Yoaz, Nipun Agarwal
-
Patent number: 8200679Abstract: Techniques are provided for estimating the cardinality of a virtual result table that is produced by executing path-based table functions within a query, such as the XMLTABLE function. Some path-based table functions apply a path expression to input from a base table of XML documents to select rows to produce the result table. Path statistics are collected for the path expressions for the base table. The path statistics are used to estimate the cardinalities of the result table. The estimated cardinality of the result table is useful for estimating costs of query execution plans that are generated for the query.Type: GrantFiled: December 4, 2008Date of Patent: June 12, 2012Assignee: Oracle International CorporationInventors: Ning Zhang, Sam Idicula, Sivasankaran Chandrasekar, Nipun Agarwal
-
Publication number: 20120143919Abstract: A method for storing XML documents a hybrid navigation/streaming format is provided to allow efficient storage and processing of queries on the XML data that provides the benefits of both navigation and streaming and ameliorates the disadvantages of each. Each XML document to be stored is independently analyzed to determine a combination of navigable and streamable storage format that optimizes the processing of the data for anticipated access patterns.Type: ApplicationFiled: December 6, 2010Publication date: June 7, 2012Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Sam Idicula, Balasubramanyam Sthanikam, Nipun Agarwal
-
Patent number: 8180791Abstract: A query is rewritten to combine streaming evaluation and XML index evaluation. The query is rewritten to include a streaming operator (e.g. function) that, when executed, uses streaming evaluation. Further, the query is rewritten so that XML index evaluation of a path expression also produces location information that identifies the location of a node within an XML document. The streaming operator is able to exploit the location information to begin and end scanning rather than scanning the entire XML document.Type: GrantFiled: November 8, 2007Date of Patent: May 15, 2012Assignee: Oracle International CorporationInventors: Ning Zhang, Thomas Baby, Sivasankaran Chandrasekar, Nipun Agarwal
-
Patent number: 8176007Abstract: A method and apparatus for performing an action in response to a file system event is provided. According to one aspect, sets of “event listeners” are associated with a file hierarchy and/or the nodes thereof. Each event listener contains a set of “event handlers.” Each event handler corresponds to a separate type of event that may occur relative to the file hierarchy's nodes. When an event is going to occur relative to the hierarchy or a node thereof, all event listeners that are associated with that hierarchy/node are inspected to determine whether those event listeners contain any event handlers that correspond to the event's type. Those event handlers that correspond to the event's type are placed in an ordered list of event handlers to be invoked. As the event handlers in the list are invoked, programmatic mechanisms that correspond to those event handlers are executed to perform customized user-specified actions.Type: GrantFiled: February 11, 2011Date of Patent: May 8, 2012Assignee: Oracle International CorporationInventors: Thuvan Hoang, Sam Idicula, Nipun Agarwal, Ravi Murthy, Asha Tarachandani, Namit Jain, Eric Sedlar
-
Patent number: 8161035Abstract: The approaches described herein provide an efficient way for a database server to process certain kinds of queries over XML data stored in an object-relational database that require the evaluation of a predicate expression with one or more path-based operands. A predicate expression part of a XQuery or SQL WHERE clause that returns a boolean value. A database server first determines whether the query qualifies for this particular kind of optimization, then rewrites the query using an enhanced query operator syntax for specifying the predicate expression to be evaluated. The enhanced query operator subsumes the work of a second path-based query operator, resulting in the suppression of the WHERE EXISTS subquery. The rewritten query operator is used to generate a query execution plan that provides for several query execution optimizations.Type: GrantFiled: June 4, 2009Date of Patent: April 17, 2012Assignee: Oracle International CorporationInventors: Ning Zhang, Sam Idicula, Balasubramanyam Sthanikam, Nipun Agarwal
-
Patent number: 8161074Abstract: A modular repository is described, where operational features may be implemented without the need to scan every resource included in the modular repository. A modular repository includes a dedicated set of database objects containing all information needed to access the resources in the repository. For example, the database objects of a modular repository may include those user identifier mappings and ACL mappings, etc., to which metadata in the modular repository refers. A database system may also include a mechanism through which a modular repository may be mounted under a subdirectory of a common directory in the database system. The resources of a modular repository that are mounted under the common directory may be accessed through the common directory. Further, a client may query the resources of any modular repository mounted under the common directory by making the federated repository, represented by the common directory, the context of the query.Type: GrantFiled: September 15, 2009Date of Patent: April 17, 2012Assignee: Oracle International CorporationInventors: Sivasankaran Chandrasekar, Sam Idicula, Nipun Agarwal, Viswanathan Krishnamurthy
-
Patent number: 8145993Abstract: Systems, methods, and other embodiments associated with providing an XML-based translation service are described. One method embodiment includes accessing a translation-aware XML document that may comply with a translation-enabling XML schema. The document may store a first XML element that stores translatable data and a second XML element that stores a translation of the translatable data. The schema may describe that the first XML element includes a first identifier that identifies the first element as storing translatable data. The schema may also describe that the second XML element includes a second identifier that identifies the second element as storing a translation for translatable data. The method may also include establishing a session language identifier and providing a virtual view of the translation-aware XML document, the virtual view being determined, at least in part, by the session language identifier.Type: GrantFiled: January 3, 2007Date of Patent: March 27, 2012Assignee: Oracle International CorporationInventors: Nipun Agarwal, Sanket Malde, Bhushan Khaladkar, Eric Sedlar
-
Publication number: 20120066271Abstract: A modular repository is described, where operational features may be implemented without the need to scan every resource included in the modular repository. A modular repository includes a dedicated set of database objects containing all information needed to access the resources in the repository. For example, the database objects of a modular repository may include those user identifier mappings and ACL mappings, etc., to which metadata in the modular repository refers. A database system may also include a mechanism through which a modular repository may be mounted under a subdirectory of a common directory in the database system. The resources of a modular repository that are mounted under the common directory may be accessed through the common directory. Further, a client may query the resources of any modular repository mounted under the common directory by making the federated repository, represented by the common directory, the context of the query.Type: ApplicationFiled: November 21, 2011Publication date: March 15, 2012Inventors: Sivasankaran Chandrasekar, Sam Idicula, Nipun Agarwal, Viswanathan Krishnamurthy