System for replication-driven repository cache invalidation across multiple data centers
First Claim
1. A method, performed by a computer system including one or more processors at a first data center, for invalidating items using a distributed cache invalidation system at the first data center, where application servers located at two or more data centers are served application data from databases stored at the two or more data centers and where a database replication program is utilized to assure that databases at different data centers store a same copy of the application data and where database table rows are represented by repository items having properties corresponding to database columns and with repository items including an item descriptor that maps the repository item to a database table and configuration settings which describe rules for reading, writing, storing and deleting the item descriptor, the method comprising:
- writing to a notifier table, by the computer system, metadata obtained from a replication message stream transmitted by the database replication program on a wide area network (WAN) connecting the first data center and second data center, with the replication message stream indicating updates made to the tables of the database at the second data center that are to be replicated as updates to corresponding ones of the tables of the database at the first data center, where the second data center is remote from the first data center and where the first and second data centers include application servers having a cache memory local to each application server and with the cache memories at each of the first and second data centers holding a portion of the database and participating in the distributed cache invalidation system;
representing, by the computer system, items in the notifier table as notification items in a replication update repository, with each notification item holding metadata including a name of an updated first table of the database at the first data center and a name/value pair;
creating, by the computer system, a mapping data structure mapping having a key being a table name for each table in the database and with each key having values being only repository items having configuration settings indicating participation in the distributed cache invalidation system;
identifying, by the computer system and using the mapping structure and based on the table name read from a first accessed notification item in the replication update repository, one or more identified repository items that participate in the distributed cache invalidation system;
constructing, by the computer system, a unique identification (ID) value for an identified repository item representing an updated row of the table updated at the second data center using one or more name/value pairs stored in the first accessed notification item; and
invoking, by the computer system, a Transport Control Protocol (TCP) distributed cache invalidation system implemented only at the first data center to invalidate the repository item identified by the unique ID value.
1 Assignment
0 Petitions
Accused Products
Abstract
A distributed cache invalidation system operating on multiple data centers utilizes metadata, read from a replication stream transmitted between data centers, to identify cached items to be invalidated.
-
Citations
20 Claims
-
1. A method, performed by a computer system including one or more processors at a first data center, for invalidating items using a distributed cache invalidation system at the first data center, where application servers located at two or more data centers are served application data from databases stored at the two or more data centers and where a database replication program is utilized to assure that databases at different data centers store a same copy of the application data and where database table rows are represented by repository items having properties corresponding to database columns and with repository items including an item descriptor that maps the repository item to a database table and configuration settings which describe rules for reading, writing, storing and deleting the item descriptor, the method comprising:
-
writing to a notifier table, by the computer system, metadata obtained from a replication message stream transmitted by the database replication program on a wide area network (WAN) connecting the first data center and second data center, with the replication message stream indicating updates made to the tables of the database at the second data center that are to be replicated as updates to corresponding ones of the tables of the database at the first data center, where the second data center is remote from the first data center and where the first and second data centers include application servers having a cache memory local to each application server and with the cache memories at each of the first and second data centers holding a portion of the database and participating in the distributed cache invalidation system; representing, by the computer system, items in the notifier table as notification items in a replication update repository, with each notification item holding metadata including a name of an updated first table of the database at the first data center and a name/value pair; creating, by the computer system, a mapping data structure mapping having a key being a table name for each table in the database and with each key having values being only repository items having configuration settings indicating participation in the distributed cache invalidation system; identifying, by the computer system and using the mapping structure and based on the table name read from a first accessed notification item in the replication update repository, one or more identified repository items that participate in the distributed cache invalidation system; constructing, by the computer system, a unique identification (ID) value for an identified repository item representing an updated row of the table updated at the second data center using one or more name/value pairs stored in the first accessed notification item; and invoking, by the computer system, a Transport Control Protocol (TCP) distributed cache invalidation system implemented only at the first data center to invalidate the repository item identified by the unique ID value. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. An apparatus configured to invalidate items using a distributed cache invalidation system at a first data center, where application servers located at two or more data centers are served application data from databases stored at the two or more data centers and where a database replication program is utilized to assure that databases at different data centers store a same copy of the application data and where database table rows are represented by repository items having properties corresponding to database columns and with repository items including an item descriptor that maps the repository item to a database table and configuration settings which describe rules for reading, writing, storing and deleting the item descriptor, the apparatus comprising:
-
one or more digital processors coupled to a non-transitory processor-readable storage device, with the one or more digital processors configured to execute one or more instructions included in the non-transitory processor-readable storage device to perform the following acts; writing to a notifier table metadata obtained from a replication message stream transmitted by the database replication program on a wide area network (WAN) connecting the first data center and second data center, with the replication message stream indicating updates made to tables of the database at the second data center that are to be replicated as updates to corresponding tables of the database at the first data center, where the second data center is remote from the first data center and where the first and second data centers include application servers having a cache memory local to each application server and with the cache memories at each of the first and second data centers holding a portion of the database and participating in the distributed cache invalidation system; representing items in the notifier table as notification items in a replication update repository, with each notification item holding metadata including a name of an updated first table of the database at the first data center and a name/value pair; creating a mapping data structure mapping having a key being a table name for each table in the database and with each key having values being only repository items having configuration settings indicating participation in the distributed cache invalidation system; identifying, using the mapping structure and based on the table name read from a first accessed notification item in the replication update repository, one or more identified repository items that participate in the distributed cache invalidation system; constructing a unique identification (ID) value for an identified repository item representing an updated row of the table updated at the second data center using one or more name/value pairs stored in the first accessed notification item; and invoking a Transport Control Protocol (TCP) distributed cache invalidation system implemented only at the first data center to invalidate the repository item identified by the unique ID value. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A non-transitory computer-readable storage medium comprising encoded program code for execution by one or more computer processors on a computer to invalidate items using a distributed cache invalidation system at a first data center, where application servers located at two or more data centers are served application data from databases stored at the two or more data centers and where a database replication program is utilized to assure that databases at different data centers store a same copy of the application data and where database table rows are represented by repository items having properties corresponding to database columns and with repository items including an item descriptor that maps the repository item to a database table and configuration settings which describe rules for reading, writing, storing and deleting the item descriptor, the program code when executed is executable to perform the acts of:
-
writing to a notifier table metadata obtained from a replication message stream transmitted by the database replication program on a wide area network (WAN) connecting the first data center and second data center, with the replication message stream indicating updates made to tables of the database at the second data center that are to be replicated as updates to corresponding tables of the database at the first data center, where the second data center is remote from the first data center and where the first and second data centers include application servers having a cache memory local to each application server and with the cache memories at each of the first and second data centers holding a portion of the database and participating in the distributed cache invalidation system; representing items in the notifier table as notification items in a replication update repository, with each notification item holding metadata including a name of an updated first table of the database at the first data center and a name/value pair; creating a mapping data structure mapping having a key being a table name for each table in the database and with each key having values being only repository items having configuration settings indicating participation in the distributed cache invalidation system; identifying, using the mapping structure and based on the table name read from a first accessed notification item in the replication update repository, one or more identified repository items that participate in the distributed cache invalidation system; constructing a unique identification (ID) value for an identified repository item representing an updated row of the table updated at the second data center using one or more name/value pairs stored in the first accessed notification item; and invoking a Transport Control Protocol (TCP) distributed cache invalidation system implemented only at the first data center to invalidate the repository item identified by the unique ID value. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification