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: 7051039
    Abstract: Techniques are provided for facilitating uniform access control to data managed by a database server that can emulate hierarchically organized systems, whether the data is accessed through hierarchical or relational access mechanisms. A database server that can emulate hierarchically organized systems uses separate relational or object-relational database tables to store the content of the resources that belong to a hierarchy (the “content structures”) and information that captures the hierarchy (the “hierarchy structures”). Both types of structures contain access control data that define consistent user access privileges. To determine access privileges for a user requesting access to data in the database, access control information is accessed in the hierarchy structures when the request is made through the hierarchical access mechanism, or accessed in the content structures when the request is made through a relational access mechanism.
    Type: Grant
    Filed: September 27, 2002
    Date of Patent: May 23, 2006
    Assignee: Oracle International Corporation
    Inventors: Ravi Murthy, Eric Sedlar, Nipun Agarwal, Sam Idicula, Nicolas Montoya
  • Patent number: 7051033
    Abstract: A hierarchy may be explicitly or implicitly reflected in existing data maintained external to hierarchy structures. Such hierarchies are referred to herein as a “pre-existing hierarchies”. Techniques are described herein for capturing a pre-existing hierarchy in hierarchy structures. After a pre-existing hierarchy has been captured, there exist two independent sets of data that reflect the hierarchy: the external hierarchy definition and the internal hierarchy definition. Changing either hierarchy definition changes the hierarchy. Therefore, to maintain a consistent reflection of the hierarchy, the internal hierarchy definition must be modified in response to changes made to the external hierarchy definition, and the external hierarchy definition must be modified in response to changes made to the internal hierarchy definition. Various techniques are described for maintaining consistency between the two hierarchy definitions.
    Type: Grant
    Filed: September 27, 2002
    Date of Patent: May 23, 2006
    Assignee: Oracle International Corporation
    Inventors: Nipun Agarwal, Eric Sedlar, Ravi Murthy, Namit Jain
  • Patent number: 7047250
    Abstract: A method and apparatus for accessing information using indexes on versioned tables is described that exploits the power of partitioned indexing to index versioned data. In partitioned indexing, an index is divided in sub-indexes, referred to as index partitions. An index may be, for example, partitioned according to a particular version identified by a version id, that is, each index partition indexes the rows in a versioned table that belong to the version identified by a particular version id. Partitioned indexes can be more efficient to use to access versioned data. The utility of partitioned indexes extends beyond indexing versioned data.
    Type: Grant
    Filed: September 27, 2002
    Date of Patent: May 16, 2006
    Assignee: Oracle International Corporation
    Inventors: Nipun Agarwal, Eric Sedlar, Ravi Murthy
  • Patent number: 7047253
    Abstract: Various techniques are provided for facilitating the management of hierarchical data within a relational database system. One such technique involves separating the storage structures used to store data that captures the information about the hierarchy (the “hierarchy structures”), from the storage structures used to store the content of the resources that belong to the hierarchy (the “content structures”). Techniques are also provided for allowing users to customize the metadata attributes associated with resources that belong to the information hierarchy. One technique involves registering XML schemas that specify the metadata attributes desired by a user. Another technique involves storing attributes that do not correspond to any declared field in a “catch-all” column within the resource table. Techniques are provided for determining how to store resources as they are added to the database. According to one technique, the database server searches the data of the resource to find content-type information.
    Type: Grant
    Filed: September 27, 2002
    Date of Patent: May 16, 2006
    Assignee: Oracle Interntional Corporation
    Inventors: Ravi Murthy, Eric Sedlar, Nipun Agarwal, Neema Jalali
  • Publication number: 20060101041
    Abstract: A hierarchy may be explicitly or implicitly reflected in existing data maintained external to hierarchy structures. Such hierarchies are referred to herein as a “pre-existing hierarchies”. Techniques are described herein for capturing a pre-existing hierarchy in hierarchy structures. After a pre-existing hierarchy has been captured, there exist two independent sets of data that reflect the hierarchy: the external hierarchy definition and the internal hierarchy definition. Changing either hierarchy definition changes the hierarchy. Therefore, to maintain a consistent reflection of the hierarchy, the internal hierarchy definition must be modified in response to changes made to the external hierarchy definition, and the external hierarchy definition must be modified in response to changes made to the internal hierarchy definition. Various techniques are described for maintaining consistency between the two hierarchy definitions.
    Type: Application
    Filed: December 21, 2005
    Publication date: May 11, 2006
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Nipun Agarwal, Eric Sedlar, Ravi Murthy, Namit Jain
  • Publication number: 20060080345
    Abstract: A method and apparatus for efficiently maintaining XML index structures in a database system is provided. Instead of immediately synchronizing the XML index structures for every change submitted to the database, the changes are stored in a PENDING table. The XML index structures are periodically synchronized, based on certain criteria or at a user's discretion. Between synchronizations, the XML index structures may be in stale mode or current mode. If in stale mode, a request to access indexed information will use the XML index structures to find the desired indexed information without checking the PENDING table. If in current mode, a request to access indexed information will search the XML index structures and also check the PENDING table to determine 1) whether the indexed information has been updated or deleted, and 2) whether information relevant to the request has been inserted or updated.
    Type: Application
    Filed: November 22, 2005
    Publication date: April 13, 2006
    Inventors: Ravi Murthy, Sivasankaran Chandrasekar, Eric Sedlar, Nipun Agarwal
  • Patent number: 7028037
    Abstract: Techniques and systems are provided for efficiently managing hierarchical relational data stored in object-relational database system by extending the syntax of the database language supported by the database system (e.g. SQL) to incorporate several new “hierarchical” operators. These operators are evaluated based on the hierarchical relationship defined for hierarchical relational data. The operators maybe incorporated in SQL queries along with relational operators.
    Type: Grant
    Filed: September 27, 2002
    Date of Patent: April 11, 2006
    Assignee: Oracle International Corporation
    Inventors: Nipun Agarwal, Ravi Murthy, Eric Sedlar, Sivasankaran Chandrasekar, Fei Ge
  • Patent number: 7020653
    Abstract: Techniques for supporting access controls on application-specific operations performed by an application include receiving first data at a server distinct from the application. The first data describes a first set of privileges for performing a first set of application-specific operations. Second data is also received at the server. The second data associates a first user of the application with a privilege in the first set of privileges. In response to receiving a request at the server from the application, it is determined whether a particular user may have the application perform a particular application-specific operation based on the first data and the second data. The request indicates the particular user and the particular application-specific operation. A response is sent to the application. The response indicates whether the particular user may have the application perform the particular application-specific operation.
    Type: Grant
    Filed: February 10, 2003
    Date of Patent: March 28, 2006
    Assignee: Oracle International Corporation
    Inventors: Sam Idicula, Nipun Agarwal, Ravi Murthy
  • Patent number: 6965903
    Abstract: Techniques for managing hierarchical data include managing a link table in a relational database. The hierarchical data includes data about a hierarchy of nodes related by multiple links. The link table includes first information, second information and link information, for each link. First information indicates a first node in the hierarchical data. Second information indicates a second node that is associated with the first node by the link. Link information indicates values for link attributes of the link between the first node and the second node, and does not indicate a value for any attribute of the first node alone or any attribute of the second node alone. The techniques support directing a single SQL statement to a path database object, constructed based on the link table, in order to obtain paths that satisfy a search on link attributes.
    Type: Grant
    Filed: November 26, 2002
    Date of Patent: November 15, 2005
    Assignee: Oracle International Corporation
    Inventors: Nipun Agarwal, Fei Ge, Sivasankaran Chandrasekar, Ravi Murthy, Eric Sedlar
  • Publication number: 20050240624
    Abstract: Cost-based optimizer functionality for an XML database repository provides means for optimizing the execution of database queries that access XML resources in the database repository. Statistics about XML resources that are stored in the database repository are gathered, stored and utilized by a query optimizer to compute computational costs associated with each of multiple methods of accessing particular XML resources requested in a database query. Hence, the optimizer is able to select the most efficient query execution plan based on the costs of possible access paths. In one embodiment, specific statistics about the hierarchical structure of XML resources stored in the XML database repository are gathered, stored in a relational table in the database management system, and used to compute the selectivity of query predicates and the index cost associated with traversing one or more indexes to access requested XML resources.
    Type: Application
    Filed: April 21, 2004
    Publication date: October 27, 2005
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Fei Ge, Sivasankaran Chandrasekar, Nipun Agarwal, Ravi Murthy, Eric Sedlar
  • Publication number: 20050228786
    Abstract: A method and system are provided for maintaining an XML index in response to piece-wise modifications on indexed XML documents. The database server that manages the XML index determines which nodes are involved in the piece-wise modifications, and updates the XML index based on only those nodes. Index entries for nodes not involved in the piece-wise modifications remain unchanged.
    Type: Application
    Filed: September 16, 2004
    Publication date: October 13, 2005
    Inventors: Ravi Murthy, Sivasankaran Chandrasekar, Ashish Thusoo, Nipun Agarwal, Eric Sedlar
  • Publication number: 20050228792
    Abstract: Techniques are provided for indexing XML documents. According to one embodiment, a PATH table created for storing one row for each indexed node of the XML documents. The PATH table row for a node includes (1) information for locating the XML document that contains the node, (2) information that identifies the path of the node, and (3) information that identifies the position of the node within the hierarchical structure of the XML document that contains the node. If the node is associated with the value, then the PATH table row for the node may also include the value. Use of the PATH table to answer XPath queries is facilitated by secondary indexes.
    Type: Application
    Filed: July 2, 2004
    Publication date: October 13, 2005
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Sivasankaran Chandrasekaran, Ravi Murthy, Ashish Thusoo, Anh-Tuan Tran, Sreedhar Mukkamalla, Eric Sedlar, Nipun Agarwal
  • Publication number: 20050228818
    Abstract: A method and system are provided for flexibly sectioning XML documents stored in a relational database system. The method includes obtaining a set of sectioning rules; receiving an XML document that is to be stored in the relational database system; and identifying a storage location for each node in the XML document based on the set of sectioning rules. The sectioning rules can also be used to determine which tables in the relational database should be queried when a query is received, and to determine which tables in the relational database should be updated when a command to update stored XML data is received.
    Type: Application
    Filed: March 18, 2005
    Publication date: October 13, 2005
    Inventors: Ravi Murthy, Eric Sedlar, Sivasankaran Chandrasekar, Ashish Thusoo, Nipun Agarwal, Sreedhar Mukkamalla
  • Publication number: 20050228828
    Abstract: A method and system are provided for extracting a valid, self-contained fragment for a node in a XML document stored in a database management system. An XML index is used to identify a location in which XML fragment data corresponding to the node is located. Ancestors of the node are identified and examined for any information needed for the proper interpretation of the fragment. If an ancestor node contains such needed information, this information is patched into the XML fragment to ensure that the fragment is a valid, self-contained XML fragment.
    Type: Application
    Filed: February 15, 2005
    Publication date: October 13, 2005
    Inventors: Sivasankaran Chandrasekar, Ashish Thusoo, Ravi Murthy, Nipun Agarwal, Eric Sedlar, Sreedhar Mukkamalla
  • Publication number: 20050229158
    Abstract: A method and apparatus is provided for translating queries, such as path expressions and SQL/XML constructs, into SQL statements to be executed against an XML index, which improves processor time as opposed to applying path expressions directly to the original XML documents to extract the desired information. Simple path expressions, filter expressions, descendant axes, wildcards, logical expressions, relational expressions, literals, and other path expressions are all translated into SQL for efficient querying of an XML index. Similarly, rules for translating SQL/XML constructs into SQL are provided.
    Type: Application
    Filed: September 16, 2004
    Publication date: October 13, 2005
    Inventors: Ashish Thusoo, Ravi Murthy, Sivasankaran Chandrasekar, Nipun Agarwal, Eric Sedlar
  • Publication number: 20050228768
    Abstract: An XPath expression is converted into a tree-based representation where each node represents an operation to be performed and the links between nodes in the tree represent the flow of data between operations. The conversion may involve creating a parse tree for the XPath expression, and then converting the parse tree into an operator tree. The operator tree is constructed in such a way that execution of the XPath expression begins at the leaf nodes of the operator tree, and the results are then passed up the tree. After each node is executed, the results are either (1) passed to a filter that filters the results with a predicate statement or (2) passed to another node to be operated upon. This occurs until no nodes remain to be executed.
    Type: Application
    Filed: September 16, 2004
    Publication date: October 13, 2005
    Inventors: Ashish Thusoo, Ravi Murthy, Sivasankaran Chandrasekar, Eric Sedlar, Nipun Agarwal
  • Publication number: 20050228791
    Abstract: A method and system are provided for determining whether a given path is an indexed path of XML documents stored in a database management system. A finite state machine is built using the path subsetting rules specified by a user. The finite state machine is traversed using the given path. If any accepting states are reached during the traversal of the finite state machine, the given path is determined to matching the path subsetting rules.
    Type: Application
    Filed: February 15, 2005
    Publication date: October 13, 2005
    Inventors: Ashish Thusoo, Sivasankaran Chandrasekar, Ravi Murthy, Nipun Agarwal, Eric Sedlar, Sreedhar Mukkamalla, Reema Koo
  • Patent number: 6950822
    Abstract: Techniques for servicing requests for database services include maintaining at a database server an available set of one or more database session data structures. Each database session data structure holds information to support one session of one or more requests for database services over a communication connection that persists for one or more communications from one client. A database session data structure in the available set is not associated with any client currently connected to the database server. These techniques allow a database server to more efficiently service more numerous requests for database services, such as generated by communications using a stateless protocol like HTTP.
    Type: Grant
    Filed: November 25, 2002
    Date of Patent: September 27, 2005
    Assignee: Oracle International Corporation
    Inventors: Sam Idicula, Eric Sedlar, Nipun Agarwal, Ravi Murthy
  • Patent number: 6947950
    Abstract: Techniques for managing multiple hierarchies of data from a single native hierarchy include registering a set of routines for each foreign hierarchy. The set of routines performs a set of operations on data in the hierarchy associated with a node. A user request is received, which indicates a particular operation on particular data that does not correspond to a node of the native hierarchy. Based on the user request, a first operation on a first set of one or more nodes of a first hierarchy that is not the native hierarchy is determined. A particular routine that corresponds to the first operation is selected from a first set of routines registered for the first hierarchy, and is invoked. These techniques allow a user to employ a consistent interface with the native hierarchy to reach data in any of the hierarchies.
    Type: Grant
    Filed: November 26, 2002
    Date of Patent: September 20, 2005
    Assignee: Oracle International Corporation
    Inventors: Ravi Murthy, Eric Sedlar, Nipun Agarwal
  • Publication number: 20050182762
    Abstract: A domain index for a partitioned database can be created using a user-defined indexing scheme. Partition maintenance operations performed on the partitioned database objects cause corresponding partition maintenance operations to be performed on the domain indexes. The user-supplied partitioning code is partition operation-unaware.
    Type: Application
    Filed: April 12, 2005
    Publication date: August 18, 2005
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Jagannathan Srinivasan, Seema Sundara, Nipun Agarwal, Ying Hu, Timothy Chorma