×

System and methods for invalidation to enable caching of dynamically generated content

  • US 7,228,318 B2
  • Filed: 05/04/2005
  • Issued: 06/05/2007
  • Est. Priority Date: 02/26/2001
  • Status: Expired due to Fees
First Claim
Patent Images

1. In a system for producing dynamically generated content in response to user content requests that generate database queries, a method for invalidating dynamically generated content stored in caches of network devices, comprising:

  • receiving updates to a database of the system;

    periodically performing processing on a set of received queries to identify queries for which corresponding dynamically generated content will be invalidated as a result of said updates; and

    sending invalidation messages to devices storing said corresponding content of said identified queries,wherein said processing comprises, for a given query Q,determining whether a results set is empty or non-empty, the results set consisting of the results;


    [(R+1custom characterRnew,2custom character . . . custom characterRnew,n)∪

    . . . ∪

    (Rnew,1custom character . . . custom characterR+jcustom character . . . custom characterRnew,n)∪

    . . . ∪

    (Rnew,1custom character . . . custom characterRnew,n−

    1
    custom characterR+n)]∪


    [(R

    1custom characterRold, 2custom character . . custom characterRold,n) ∪

    . . . ∪

    (Rold,1custom character . R

    jcustom character . . . custom characterRold,n)∪

    . . . ∪

    (Rold,1custom character . . . custom characterRold,n−

    1
    custom characterR

    n)]where each Rn is a relation involved in the query Q, each Rold,n is a state of the relation Rn as of the beginning of a preceding processing cycle, each Rnew,n is a state of the relation Rn as of the beginning of the current processing cycle, each R

    n is a subset of tuples deleted from the relation Rn since the beginning of a preceding processing cycle, and each R+n is a subset of tuples added to the relation Rn since the beginning of a preceding processing cycle, andonly when said results sets is non-empty, designating said query Q as one of said identified queries.

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