IP Library Granted Patent US 8,713,043
Granted Patent B2
US 8,713,043 · App. 13/021,669 · Granted Apr 29, 2014

System, method and computer program product for sharing a single instance of a database stored using a tenant of a multi-tenant on-demand database system

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,713,043
App. No.
13/021,669
Granted
Apr 29, 2014
Kind
B2
Abstract

In accordance with embodiments, there are provided mechanisms and methods for sharing a single instance of a database stored using a tenant of a multi-tenant on-demand database system. These mechanisms and methods for sharing a single instance of a database stored using a tenant of a multi-tenant on-demand database system can provide a single instance of a database that is shared amongst tenants of a multi-tenant on-demand database system. The ability to provide a single instance of a database that is shared amongst tenants of a multi-tenant on-demand database system can enable the database to be managed or otherwise maintained in a central location.

Claims (47)

1. A computer program product embodied on a non-transit computer readable medium, comprising:

computer code for storing a single instance of a database used by a first tenant of a multi-tenant on-demand database system by storing the single instance of the database in a location in memory of the multi-tenant on-demand database system that is dedicated to only the first tenant; and

computer code for allowing at least one second tenant of the multi-tenant on-demand database system to access the single instance of the database, such that:

the at least one second tenant of the multi-tenant on-demand database system is allowed to perform one or more queries on the single instance of the database for retrieving data stored in the sin le instance of the database,

the first tenant is able to alter data stored in the single instance of the database, and

the at least one second tenant is prevented front altering the data stored in the single instance of the database.

2. The computer program product of claim 1 , wherein the computer program product is operable such that the single instance of the database is published by the first tenant for use by the at least one second tenant.

3. The computer program product of claim 1 , wherein the single instance of the database includes at least one table.

4. The computer program product of claim 1 , wherein the computer program product is operable such that the single instance of the database stores reference data that is un-editable by the at least one second tenant.

5. The computer program product of claim 1 , wherein the access includes read-only access.

6. The computer program product of claim 1 , wherein the computer program product is operable such that the access is provided to the at least one second tenant in response to a determination that the at least one second tenant is authorized to access the single instance of the database.

7. The computer program product of claim 6 , wherein the computer program product is operable such that it is determined that the at least one second tenant is authorized to access the single instance of the database by determining that an internet protocol (IP) address utilized by the at least one second tenant is predetermined to be allowed to access the single instance of the database.

8. The computer program product of claim 6 , wherein the query includes a string entered by a user associated with the at least one second tenant.

9. The computer program product of claim 8 , wherein the string includes data to be looked up in the database.

10. The computer program product of claim 8 , wherein the query further includes data automatically generated by an interface utilized by the user to enter the string.

11. The computer program product of claim 10 , wherein the data includes an identifier of the first tenant, an identifier of the database, and a data service to be utilized to look up the string in the table.

12. The computer program product of claim 1 , further comprising computer code for receiving a query from the at least second tenant.

13. The computer program product of claim 12 , further comprising computer code for parsing the query.

14. The computer program product of claim 13 , further comprising computer code for performing the query based on the parsing.

15. The computer program product of claim 14 , further comprising computer code for returning results of the query to the at least one second tenant.

16. The computer program product of claim 1 , wherein the multi-tenant on-demand database system stores tenant-specific data for each of the first tenant and the at least one second tenant, and wherein the tenant-specific data of the first tenant including. the single instance of the database is stored by the multi-tenant on-demand database system logically separate from the tenant-specific data of the at least one second tenant, such that:

access by the first tenant to the tenant-specific data of the at least one second tenant is prevented unless the tenant-specific data of the at least one second tenant is expressly shared, and

access by the at least one second tenant to the tenant-specific data of the first tenant including the single instance of the database is only allowed by virtue of the tenant-specific data of the first tenant including the single instance of the database being expressly shared.

17. The computer program product of claim 1 , wherein each of the one or more queries on the single instance of the database performed by the at least one second tenant of the multi--tenant on-demand database system include:

an identification of the first tenant;

an identification of a data service used to perform the query;

a data table within the single instance of the database to access to perform the query; and

a data string to look up within the single instance of the database.

18. A method, comprising:

storing a single instance of a database used by a first tenant of a multi-tenant on-demand database system by storing the single instance of the database in a location in memory of the multi-tenant on-demand database system that is dedicated to only the first tenant; and

allowing at least one second tenant of the multi-tenant on-demand database system to access the single instance of the database, such that:

the at least one second tenant of the multi-tenant on-demand database system is allowed to perform one or more queries on the single instance of the database for retrieving data stored in the single instance of the database,

the first tenant is able to alter data stored in the single instance of the database, and

the at least one second tenant is prevented from altering the data stored in the single instance of the database.

19. An apparatus, comprising:

a hardware processor for:

storing a single instance of a database used by a first tenant of a multi-tenant on-demand database system by storing the single instance of the database in a location in memory of the multi-tenant on-demand database system that is dedicated to only the first tenant; and

allowing at least one second tenant of the multi-tenant on-demand database system to access the single instance of the database, such that:

the at least one second tenant of the multi-tenant on-demand database system is allowed to perform one or more queries on the single instance of the database for retrieving data stored in the single instance of the database,

the first tenant is able to alter data stored in the single instance of the database, and

the at least one second tenant is prevented from altering the data stored in the single instance of the database.

20. A method for transmitting code, comprising:

transmitting code to store a single instance of a database used by a first tenant of a multi-tenant on--demand database system by storing the single instance of the database in a location in memory of the multi-tenant on-demand database system that is dedicated to only the first tenant; and

transmitting code for allowing at least one second tenant of the multi-tenant on-demand database system to access the single instance of the database, such that:

the at least one second tenant of the multi-tenant on-demand database system is allowed to perform one or more queries on the single instance of the database for retrieving data stored in the single instance of the database,

the first tenant is able to alter data stored in the single instance of the database, and

the at least one second tenant is prevented from altering the data stored in the single instance of the database.

Assignments (2)
CHANGE OF NAME Recorded Oct 24, 2024
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 069270/0727 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 10, 2011
From: HESS, RONALD VANCE
To: SALESFORCE.COM, INC.
Reel/Frame 025787/0068 →