Patents by Inventor Susan Kotsovolos

Susan Kotsovolos 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: 8949220
    Abstract: Techniques for managing XML data associated with multiple execution units ensure that execution units are able to use XML data coming from other execution units. Such techniques are applicable when, but for the technique, an XML type value is produced in a particular form by one execution unit and is supposed to be consumed by another execution unit that is unable to process data in the particular form, and involves detecting that the foregoing situation exists and annotating information sent to an XML producer execution unit to cause the XML type value to be transformed into a canonical form that can be shared by all relevant execution units.
    Type: Grant
    Filed: March 26, 2004
    Date of Patent: February 3, 2015
    Assignee: Oracle International Corporation
    Inventors: Zhen Liu, Muralidhar Krishnaprasad, Anand Manikutty, Ravi Murthy, James Warner, Thomas H. Chang, Vikas Arora, Susan Kotsovolos
  • Patent number: 7873645
    Abstract: Disclosed is a method and mechanism for processing expressions and operator trees. An approach is particularly useful to optimize processing of XML statements with respect to SQL operators. A top-down processing approach can be taken to directly output data from operators to a data stream. In addition, multiple processing approaches can be taken within a single expression tree, with some operators processed using the top-down approach and other operators processed with the bottom-up approach. Even data that can not be streamed is copied fewer times using this approach, intermediate values from bottom-up processing may still be streamed if it is used by an operator that is eligible for top-down processing.
    Type: Grant
    Filed: September 5, 2003
    Date of Patent: January 18, 2011
    Assignee: Oracle International Corporation
    Inventors: James W. Warner, Muralidhar Krishnaprasad, Anand Manikutty, Zhen Liu, Ravi Murthy, Susan Kotsovolos, Vikas Arora
  • Patent number: 7853619
    Abstract: Methods and apparatus for enabling a plurality of table columns arranged to be associated with large objects (LOBs) to share a single LOB data segment within a database are disclosed. According to one aspect of the present invention, a method for allocating space associated with at least a first column arranged to accommodate LOB data and a second column arranged to accommodate LOB data includes allocating a first LOB data segment. The method also includes associating both the first column and the second column with the first LOB data segment.
    Type: Grant
    Filed: September 23, 2004
    Date of Patent: December 14, 2010
    Assignee: Oracle International Corporation
    Inventors: Qin Yu, Muralidhar Krishnaprasad, Subramanian Muralidhar, Thomas Chang, Susan Kotsovolos
  • Patent number: 7788285
    Abstract: A method and apparatus for updating databases are disclosed. An update vector for an object is created for identifying updated attributes. A dependent object is identified and a dependency vector of the dependent object is compared with update vector to determine whether the dependent object depends on the updated attributes.
    Type: Grant
    Filed: May 14, 2004
    Date of Patent: August 31, 2010
    Assignee: Oracle International Corporation
    Inventors: Kumar Rajamani, Susan Kotsovolos, Russell J. Green, Rajagopalan Govindarajan, Jaebock Lee, Ho Chak Hung, Guhan Viswanathan
  • Patent number: 7739219
    Abstract: A method for optimizing queries is described. A query, which includes a first expression for determining whether each of a set of values evaluates to NULL or NOT NULL, is received. At compile-time, a first representation of the query is generated, where the first representation indicates that the query is to be performed based on the first expression. Based on the first expression, a second expression is determined. The second expression is such that the first expression would evaluate to any NOT NULL value if and only if the second expression would evaluate to any NOT NULL value. The second expression, when evaluated, is much more computationally efficient compared with the evaluation of the first expression. Based on the first representation, a second representation of the query is generated, where the second representation indicates that the query is to be performed based on the second expression. Thereafter, the query is executed based on the second representation.
    Type: Grant
    Filed: September 8, 2006
    Date of Patent: June 15, 2010
    Assignee: Oracle International Corporation
    Inventors: Zhen Hua Liu, Muralidhar Krishnaprasad, Hui Joe Chang, Anand Manikutty, James W. Warner, Vikas Arora, Susan Kotsovolos
  • Patent number: 7730080
    Abstract: A method for processing queries is provided. A first representation of a query is generated, where the query includes a certain operator that is to be performed based on an XPath expression that is expandable into multiple location paths. The first representation of the query is rewritten into a second representation that corresponds to an equivalent query, where rewriting the first representation includes expanding the XPath expression into the plurality of location paths and, based on the certain operator, including a plurality of operators in the second representation, where the plurality of operators include: a first set of operators that is to be performed based on each of the plurality of location paths, and a second set of operators that is to be performed based on data returned from at least one operator included in the first set of operators. The query may thereafter be executed based on the second representation.
    Type: Grant
    Filed: June 23, 2006
    Date of Patent: June 1, 2010
    Assignee: Oracle International Corporation
    Inventors: Zhen Hua Liu, Muralidhar Krishnaprasad, Hui Joe Chang, Anand Manikutty, James W. Warner, Vikas Arora, Susan Kotsovolos
  • Patent number: 7689542
    Abstract: Dynamic return type generation in a database system. A request is received to execute a first function. A second function is executed if the first function is defined to return data in a first type of data structure. When executed, the second function returns formatting information that indicates an arrangement of fields of data within the first type of data structure. The first function is executed to obtain a collection of data formatted according to the first type of data structure, and the collection of data is organized according to the formatting information returned by the second function.
    Type: Grant
    Filed: January 29, 2004
    Date of Patent: March 30, 2010
    Assignee: Oracle International Corporation
    Inventors: Adiel M. Yoaz, Qin Yu, Ravi Murthy, Susan Kotsovolos
  • Patent number: 7512599
    Abstract: A request to execute a query is received in a database system. In response, the database system determines that a collection of data elements to be returned by the query corresponds to a first data structure not defined within a type dictionary of the database system. The database system obtains attribute values that describe respective data fields within the first data structure, and records, within the type dictionary, a first data type definition that specifies the data fields described by the attribute values.
    Type: Grant
    Filed: January 29, 2004
    Date of Patent: March 31, 2009
    Assignee: Oracle International Corporation
    Inventors: Qin Yu, Adiel M. Yoaz, Subramanian Muralidhar, Visar Nimani, Susan Kotsovolos
  • Publication number: 20080065674
    Abstract: A method for optimizing queries is described. A query, which includes a first expression for determining whether each of a set of values evaluates to NULL or NOT NULL, is received. At compile-time, a first representation of the query is generated, where the first representation indicates that the query is to be performed based on the first expression. Based on the first expression, a second expression is determined. The second expression is such that the first expression would evaluate to any NOT NULL value if and only if the second expression would evaluate to any NOT NULL value. The second expression, when evaluated, is much more computationally efficient compared with the evaluation of the first expression. Based on the first representation, a second representation of the query is generated, where the second representation indicates that the query is to be performed based on the second expression. Thereafter, the query is executed based on the second representation.
    Type: Application
    Filed: September 8, 2006
    Publication date: March 13, 2008
    Inventors: Zhen Hua Liu, Muralidhar Krishnaprasad, Hui Joe Chang, Anand Manikutty, James W. Warner, Vikas Arora, Susan Kotsovolos
  • Publication number: 20070299834
    Abstract: A method for processing queries is provided. A first representation of a query is generated, where the query includes a certain operator that is to be performed based on an XPath expression that is expandable into multiple location paths. The first representation of the query is rewritten into a second representation that corresponds to an equivalent query, where rewriting the first representation includes expanding the XPath expression into the plurality of location paths and, based on the certain operator, including a plurality of operators in the second representation, where the plurality of operators include: a first set of operators that is to be performed based on each of the plurality of location paths, and a second set of operators that is to be performed based on data returned from at least one operator included in the first set of operators. The query may thereafter be executed based on the second representation.
    Type: Application
    Filed: June 23, 2006
    Publication date: December 27, 2007
    Inventors: Zhen Hua Liu, Muralidhar Krishnaprasad, Hui Joe Chang, Anand Manikutty, James W. Warner, Vikas Arora, Susan Kotsovolos
  • Patent number: 7305414
    Abstract: A method and apparatus for rewriting a database command containing an embedded XML expression such that the rewritten database command recites a text function, in lieu of the embedded XML expression, is provided. Advantageously, a DBMS may take advantage of the efficiencies in storing XML data within the database, while avoiding the generation of unnecessary XML elements in processing the query when the XML elements contribute nothing to the outcome of the query. Cost-base or rule-based analysis may be performed to determine how to rewrite a received database command. The database server may functionally evaluate the text function or may use an index defined on a column of the database. The text function may function as a primary filter or may reference a column upon which an index is defined, wherein the index operates at the same or higher level than a column being referenced in the embedded XML expression.
    Type: Grant
    Filed: April 5, 2005
    Date of Patent: December 4, 2007
    Assignee: Oracle International Corporation
    Inventors: Anand Manikutty, Muralidhar Krishnaprasad, Zhen Hua Liu, James Warner, Rohan Angrish, Vikas Arora, Susan Kotsovolos, Ravi Murthy, Wesley Lin
  • Publication number: 20070239681
    Abstract: XML table indexes provide a more efficient mechanism for searching data stored in aggregate form. XML table indexes are a set of tables created to project out in column form commonly sought metadata from stored XML documents. By projecting the data includes into column form, queries on the XML documents can be efficiently processed as they can leverage the enhanced functionality provided by the database tables. The XML table indexes may use aliases, partitioning, constraints and other functions to further improve query flexibility and performance.
    Type: Application
    Filed: March 31, 2006
    Publication date: October 11, 2007
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Muralidhar Krishnaprasad, Zhen Liu, Hui Chang, Vikas Arora, Susan Kotsovolos
  • Publication number: 20060224627
    Abstract: A method and apparatus for rewriting a database command containing an embedded XML expression such that the rewritten database command recites a text function, in lieu of the embedded XML expression, is provided. Advantageously, a DBMS may take advantage of the efficiencies in storing XML data within the database, while avoiding the generation of unnecessary XML elements in processing the query when the XML elements contribute nothing to the outcome of the query. Cost-base or rule-based analysis may be performed to determine how to rewrite a received database command. The database server may functionally evaluate the text function or may use an index defined on a column of the database. The text function may function as a primary filter or may reference a column upon which an index is defined, wherein the index operates at the same or higher level than a column being referenced in the embedded XML expression.
    Type: Application
    Filed: April 5, 2005
    Publication date: October 5, 2006
    Inventors: Anand Manikutty, Muralidhar Krishnaprasad, Zhen Liu, James Warner, Rohan Angrish, Vikas Arora, Susan Kotsovolos, Ravi Murthy, Wesley Lin
  • Publication number: 20060179068
    Abstract: To associate XML data objects (“child objects”), stored in rows of relational or object-relational tables, with the appropriate XML data objects (“parent objects”) from which the child objects descend, tables that contain child objects (“out-of-line” tables) are constructed with an additional column. In one embodiment, this column stores values that identify the root objects, in the appropriate table, from which the respective child objects descend. Hence, the root object from which any given object descends is traceable by following the respective value back to the corresponding root object. In one embodiment, this column stores values that identify the complete XML hierarchical path, through multiple tables, back to the root object from which the respective child objects descend. Consequently, XML query language queries against XML documents stored in such tables can be rewritten as SQL queries against the data in the tables, even in the presence of cyclic constructs.
    Type: Application
    Filed: February 10, 2005
    Publication date: August 10, 2006
    Inventors: James Warner, Abhyudaya Agrawal, Hui Zhang, Muralidhar Krishnaprasad, Ravi Murthy, Zhen Liu, Nipun Agarwal, Vikas Arora, Susan Kotsovolos, Anand Manikutty, Rohan Angrish
  • Publication number: 20060136351
    Abstract: A database server that manages a database retrieves metadata that is stored, within the database, in association with a procedure that is stored in the database. Based on the metadata, a Web service definition is automatically constructed to describe the procedure as a Web service. The WSDL definition can be referenced to construct SOAP messages with the appropriate arguments and in the appropriate format which, when received, are converted to a suitable format for invoking execution of the procedure by the database server.
    Type: Application
    Filed: December 8, 2004
    Publication date: June 22, 2006
    Inventors: Rohan Angrish, James Warner, Zhen Liu, Muralidhar Krishnaprasad, Anand Manikutty, Vikas Arora, Susan Kotsovolos
  • Publication number: 20060075006
    Abstract: Methods and apparatus for enabling a plurality of table columns arranged to be associated with large objects (LOBs) to share a single LOB data segment within a database are disclosed. According to one aspect of the present invention, a method for allocating space associated with at least a first column arranged to accommodate LOB data and a second column arranged to accommodate LOB data includes allocating a first LOB data segment. The method also includes associating both the first column and the second column with the first LOB data segment.
    Type: Application
    Filed: September 23, 2004
    Publication date: April 6, 2006
    Applicant: Oracle International Corporation
    Inventors: Qin Yu, Muralidhar Krishnaprasad, Subramanian Muralidhar, Thomas Chang, Susan Kotsovolos
  • Publication number: 20060031204
    Abstract: Techniques are provided for processing a query, including receiving the query, where the query specifies certain operations to be performed, including (a) a first set of one or more operations that are to be performed on a markup language data source and (b) a second set of one or more operations that are to be performed on a second data source. Then it is determined that a first server that manages the markup language data source is capable of performing the first set of operations. A request is sent to the first server to perform the first set of operations. A response is received, where the response contains results of performing the first set of operations on the markup language data source. Finally, results are generated for the query based at least in part on the results of performing the first set of operations.
    Type: Application
    Filed: September 22, 2004
    Publication date: February 9, 2006
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Zhen Liu, Muralidhar Krishnaprasad, Anand Manikutty, James Warner, Qin Yu, Hui Zhang, Karuna Muthiah, Ying Lu, Vikas Arora, Susan Kotsovolos
  • Publication number: 20060004828
    Abstract: A method and apparatus for updating databases are disclosed. An update vector for an object is created for identifying updated attributes. A dependent object is identified and a dependency vector of the dependent object is compared with update vector to determine whether the dependent object depends on the updated attributes.
    Type: Application
    Filed: May 14, 2004
    Publication date: January 5, 2006
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Kumar Rajamani, Susan Kotsovolos, Russell Green, Rajagopalan Govindarajan, Jaebock Lee, Ho Hung, Guhan Viswanathan
  • Publication number: 20050289125
    Abstract: Techniques are provided for processing a query including receiving the query, where the query specifies certain operations; determining that the query includes a first portion in a first query language and a second portion in a second query language; generating a first in-memory representation for the first portion; generating a second in-memory representation for the second portion; generating a third in-memory representation of the query based on the first in-memory representation and the second in-memory representation; and performing the certain operations based on the third in-memory representation.
    Type: Application
    Filed: September 22, 2004
    Publication date: December 29, 2005
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Zhen Liu, Muralidhar Krishnaprasad, Anand Manikutty, James Warner, Hui Zhang, Vikas Arora, Susan Kotsovolos
  • Publication number: 20050154715
    Abstract: Dynamic return type generation in a database system. A request is received to execute a first function. A second function is executed if the first function is defined to return data in a first type of data structure. When executed, the second function returns formatting information that indicates an arrangement of fields of data within the first type of data structure. The first function is executed to obtain a collection of data formatted according to the first type of data structure, and the collection of data is organized according to the formatting information returned by the second function.
    Type: Application
    Filed: January 29, 2004
    Publication date: July 14, 2005
    Applicant: Oracle International Corporation
    Inventors: Adiel Yoaz, Qin Yu, Ravi Murthy, Susan Kotsovolos