×

Secondary index and indexed view maintenance for updates to complex types

  • US 7,769,770 B2
  • Filed: 07/14/2004
  • Issued: 08/03/2010
  • Est. Priority Date: 07/14/2004
  • Status: Expired due to Fees
First Claim
Patent Images

1. A method of processing a data modification statement on a database in a computing device, comprising:

  • receiving a data modification statement to modify data within the database;

    determining a tree representation for the received data modification statement;

    receiving a data structure comprising an indexed view of the database, the indexed view expressing a result of a predefined query applied to the database, the indexed view to be employed when a query similar to the predefined query is applied to the database;

    determining an operator tree as a relational tree that defines the received indexed view, the operator tree including a plurality of relational operators, each relational operator having child scalar expressions; and

    for each relational operator in the determined operator tree;

    obtaining the child scalar expressions of the relational operator;

    comparing the obtained child scalar expressions to the determined tree representation for the received data modification statement to determine that a corresponding field of the indexed view of the database is affected by the data modification statement, and based thereon modifying a query plan corresponding to the data modification statement so as to update the indexed view of the database to be consistent with the modified data within the database,wherein the data modification statement comprises an update command and the data structure comprises a user-defined type (UDT) derived by way of inheritance from another UDT, the derived UDT including each field of the another UDT and at least one additional field, the operator tree determined from the data structure referencing the another UDT and including an operator directing that the another UDT be treated as the derived UDT so as to access the at least one additional field, andwherein comparing the obtained child scalar expressions to the determined tree representation comprises walking the determined tree representation, matching subfields used in the child scalar expressions with subfields updated in the determined tree representation, and generating for each match a query execution plan to propagate the corresponding updated subfield to the index.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×