IP Library Granted Patent US 8,856,449
Granted Patent B2
US 8,856,449 · App. 13/131,832 · Granted Oct 7, 2014

Method and apparatus for data storage and access

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,856,449
App. No.
13/131,832
Granted
Oct 7, 2014
Kind
B2
Abstract

A query cache stores queries and corresponding results of the queries, the results of the queries being derived from a primary store. A differential store stores a pointer to data of the primary store which has changed and which affects the result of the queries stored in the query store. A new query may be satisfied by accessing the corresponding query in the query store and determining, by reference to the differential store, whether data relating to the query in the primary store has changed since the query store was compiled and, completing the new query, by accessing the corresponding data in the primary store, if applicable. Data in the differential store may be arranged and partitioned according to labels. The partitioning may be varied according to predetermined rules.

Claims (31)

1. A method comprising:

storing, in a query store, a query and a result relating to said query derived from a primary store; and

storing an indication that data of said primary store has changed in a differential store, wherein the differential store is configured to store changes to contents of the primary store.

2. The method according to claim 1 further comprising storing data relating to said stored query and to the stored result in the differential store.

3. The method according to claim 1 further comprising servicing the received query by retrieving data from the query store and from the differential store.

4. The method according to claim 1 wherein the differential store is adapted to store data together with a label corresponding to the data.

5. The method according to claim 4 wherein the label identifies a data type, the method further comprising storing more than one data type in the differential store wherein the differential store is partitioned, each partition accommodating data having a different value for the label.

6. The method according to claim 1 further comprising updating contents of the query store with reference to data stored in the differential store.

7. An apparatus comprising:

a processor,

memory arranged into a primary store, a query store and a differential store;

the memory including computer program code,

the memory and the computer program code configured to, with the processor, cause the apparatus at least to perform:

store, in the query store, a query and a result relating to the query derived from the primary store; and

store an indication that data of the primary store has changed in the differential store, wherein the differential store is configured to store changes to contents of the primary store.

8. The apparatus according to claim 7 wherein the apparatus is further caused to perform: store data relating to the stored query and to the stored result in the differential store.

9. The apparatus according to claim 7 , wherein the apparatus is further caused to perform: store a pointer to the primary store in the differential store.

10. The apparatus according to claim 9 wherein the apparatus is further caused to perform: service the received query by retrieving data from the query store and from the differential store.

11. The apparatus according to claim 7 wherein the apparatus is further caused to perform: store the differential store which is adapted to store data together with a label corresponding to the data.

12. The apparatus according to claim 11 wherein the label identifies a data type, and wherein the apparatus is further caused to perform: store more than one data type in the differential store wherein the differential store is partitioned, each partition accommodating data having a different value for the label.

13. The apparatus according to claim 12 wherein one or more of the partitions has a predetermined size.

14. The apparatus according to claim 13 wherein a size of one or more of the partitions is dynamically variable.

15. The apparatus according to claim 12 wherein the number of partitions is dynamically variable.

16. The apparatus according to claim 7 wherein the primary store is stored on a first storage type and the query store and the differential store are stored on a second storage type, the second storage type having a faster access time than the first storage type.

17. The apparatus according to claim 7 wherein the apparatus is further caused to perform: update contents of the query store with reference to data stored in the differential store.

18. The apparatus according to claim 17 wherein the updating is performed if a size of the differential store exceeds a predetermined size.

19. The apparatus according to claim 17 wherein the updating is performed after a predetermined time.

20. The apparatus according to claim 19 wherein the predetermined time is determined with reference to a time period during which the differential store is idle.

21. A computer program product comprising a computer readable medium bearing computer program code embodied therein for use with a computer, the computer program code comprising:

code for storing, in a query store, a query and a result relating to the query derived from a primary store; and

code for storing an indication that data of the primary store has changed in a differential store, wherein the differential store is configured to store changes to contents of the primary store.

Assignments (9)
RELEASE OF SECURITY INTEREST Recorded Jun 3, 2021
From: TERRIER SSC, LLC
To: WSOU INVESTMENTS, LLC
Reel/Frame 056526/0093 →
SECURITY INTEREST Recorded Jun 1, 2021
From: WSOU INVESTMENTS, LLC
To: OT WSOU TERRIER HOLDINGS, LLC
Reel/Frame 056990/0081 →
RELEASE OF SECURITY INTEREST Recorded May 21, 2019
From: OCO OPPORTUNITIES MASTER FUND, L.P. (F/K/A OMEGA CREDIT OPPORTUNITIES MASTER FUND LP
To: WSOU INVESTMENTS, LLC
Reel/Frame 049246/0405 →
SECURITY INTEREST Recorded May 20, 2019
From: WSOU INVESTMENTS, LLC
To: BP FUNDING TRUST, SERIES SPL-VI
Reel/Frame 049235/0068 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 25, 2017
From: NOKIA TECHNOLOGIES OY
To: WSOU INVESTMENTS, LLC
Reel/Frame 043953/0822 →
SECURITY INTEREST Recorded Sep 21, 2017
From: WSOU INVESTMENTS, LLC
To: OMEGA CREDIT OPPORTUNITIES MASTER FUND, LP
Reel/Frame 043966/0574 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 1, 2015
From: NOKIA CORPORATION
To: NOKIA TECHNOLOGIES OY
Reel/Frame 035543/0141 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 13, 2015
From: MUDIGOWDRA, CHANNABASAPPA
To: NOKIA CORPORATION
Reel/Frame 035412/0110 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 11, 2011
From: M, CHANNABASAPPA; SATHYANARAYANA NAGA, HARSHA; KHATAWATE, KAVITA; BANIK, SUKANTA; GANAPATHI RAJU, VENKATA SUBBA RAJU; DAS, PRAMOD KUMAR; KUMAR, ASHOK
To: NOKIA CORPORATION
Reel/Frame 027045/0672 →