IP Library Granted Patent US 9,081,869
Granted Patent B2
US 9,081,869 · App. 13/802,307 · Granted Jul 14, 2015

System, method and computer program product for communicating data between a database and a cache

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 9,081,869
App. No.
13/802,307
Granted
Jul 14, 2015
Kind
B2
Abstract

In accordance with embodiments, there are provided mechanisms and methods for communicating data between a database and a cache. These mechanisms and methods for communicating data between a database and a cache can enable improved application quality and performance, enhanced client application interaction, increased system performance, etc.

Claims (40)

1. A computer program product, comprising a non-transitory computer usable medium having a computer readable program code embodied therein, the computer readable program code adapted to be executed to implement a method for communicating data between a database and a cache, the method comprising:

storing, in a database of a service relying on a database system:

data objects, and

metadata describing the data objects,

wherein the database system is accessible over a network and includes hardware and software that is shared by users;

associating a cache separate from the database with an application capable of residing within a browser, the application having a plurality of user interface components and providing a feature of the service;

storing, in the cache, a plurality of cache objects, each of the cache objects storing a different view of a plurality of the data objects stored in the database;

during execution of the application in the browser, providing by the cache, from each of the cache objects to the user interface components of the application, the view of the plurality of the data objects stored in the database;

asynchronously refreshing by the database system, in each of the cache objects, the view of the plurality of the data objects stored in the database, using the metadata describing the data objects.

2. The computer program product of claim 1 , wherein a network connection exists between the database and the cache.

3. The computer program product of claim 1 , wherein asynchronously refreshing by the database system, in each of the cache objects, the view of the plurality of the data objects stored in the database, using the metadata describing the data objects includes retrieving the plurality of the data objects from the database, compiling the plurality of the data objects into the view recognizable by the application, and sending the view to the cache.

4. The computer program product of claim 1 , wherein the computer program product is operable such that a change is made to contents of the database by an entity other than the application.

5. A method, comprising:

storing, in a database of a service relying on a database system:

data objects, and

metadata describing the data objects,

wherein the database system is accessible over a network and includes hardware and software that is shared by users;

associating a cache separate from the database with an application capable of residing within a browser, the application having a plurality of user interface components and providing a feature of the service;

storing, in the cache, a plurality of cache objects, each of the cache objects storing a different view of a plurality of the data objects stored in the database;

during execution of the application in the browser, providing by the cache, from each of the cache objects to the user interface components of the application, the view of the plurality of the data objects stored in the database;

asynchronously refreshing by the database system, in each of the cache objects, the view of the plurality of the data objects stored in the database, using the metadata describing the data objects.

6. An apparatus, comprising:

a processor for:

storing, in a database of a service relying on a database system:

data objects, and

metadata describing the data objects,

wherein the database system is accessible over a network and includes hardware and software that is shared by users;

associating a cache separate from the database with an application capable of residing within a browser, the application having a plurality of user interface components and providing a feature of the service;

storing, in the cache, a plurality of cache objects, each of the cache objects storing a different view of a plurality of the data objects stored in the database;

during execution of the application in the browser, providing by the cache, from each of the cache objects to the user interface components of the application, the view of the plurality of the data objects stored in the database;

asynchronously refreshing by the database system, in each of the cache objects, the view of the plurality of the data objects stored in the database, using the metadata describing the data objects.

7. A method for transmitting code for use in a multi-tenant database system on a transmission medium, the method comprising:

transmitting code for storing, in a database of a service relying on a database system:

data objects, and

metadata describing the data objects,

wherein the database system is accessible over a network and includes hardware and software that is shared by users;

transmitting code for associating a cache separate from the database with an application capable of residing within a browser, the application having a plurality of user interface components and providing a feature of the service;

transmitting code for storing, in the cache, a plurality of cache objects, each of the cache objects storing a different view of a plurality of the data objects stored in the database;

transmitting code for, during execution of the application in the browser, providing by the cache, from each of the cache objects to the user interface components of the application, the view of the plurality of the data objects stored in the database;

transmitting code for asynchronously refreshing by the database system, in each of the cache objects, the view of the plurality of the data objects stored in the database, using the metadata describing the data objects.

Assignments (2)
CHANGE OF NAME Recorded Oct 25, 2024
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 069268/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 2, 2015
From: CALAHAN, PATRICK
To: SALESFORCE.COM, INC.
Reel/Frame 035769/0724 →