Hosted multi-tenant application with per-tenant unshared private databases
First Claim
1. A system for providing a hosted application to a plurality of tenants, the system comprising:
- a private unshared database stored at a database server within a scale group;
a configuration database storing mapping data that is shared among the plurality of tenants, the configuration database being configured to store mapping data for mapping each of the plurality of tenants to a scale group storing the private unshared database associated with the tenant; and
a computer executing an application configured toreceive a request for the hosted application from one of the plurality of tenants,in response to the request, locate a private unshared database associated with the one of the plurality of tenants by searching the configuration database shared among the plurality of tenants to retrieve the mapping data indicating the database server and the scale group where the private unshared database associated with the one of the plurality of tenants is stored, andrespond to the request for the hosted application utilizing data stored in the located private unshared database, wherein the hosted application comprises a customer relationship management application accessed through a plug-in executing within a personal information manager application.
2 Assignments
0 Petitions
Accused Products
Abstract
Technologies are described herein for providing a hosted multi-tenant application that utilizes per-tenant unshared private databases. A shared middle-tier is utilized in conjunction with private, unshared databases for each of the tenants. The private, unshared databases are utilized to store application data for an associated tenant, along with any customizations to the application implemented by the tenant. A shared configuration database is also utilized that stores application data that is shared among the tenants. When a request is received from a tenant to access the hosted application, the shared configuration database is utilized to locate the private, unshared database associated with the tenant making the request. The contents of the private, unshared database associated with the tenant making the request are then utilized to response to the request.
42 Citations
11 Claims
-
1. A system for providing a hosted application to a plurality of tenants, the system comprising:
-
a private unshared database stored at a database server within a scale group; a configuration database storing mapping data that is shared among the plurality of tenants, the configuration database being configured to store mapping data for mapping each of the plurality of tenants to a scale group storing the private unshared database associated with the tenant; and a computer executing an application configured to receive a request for the hosted application from one of the plurality of tenants, in response to the request, locate a private unshared database associated with the one of the plurality of tenants by searching the configuration database shared among the plurality of tenants to retrieve the mapping data indicating the database server and the scale group where the private unshared database associated with the one of the plurality of tenants is stored, and respond to the request for the hosted application utilizing data stored in the located private unshared database, wherein the hosted application comprises a customer relationship management application accessed through a plug-in executing within a personal information manager application. - View Dependent Claims (2, 3)
-
-
4. A method for providing a hosted application to a plurality of tenants, the method comprising:
-
storing a private unshared database at a database server within a scale group; storing mapping data at a configuration database shared among the plurality of tenants, the configuration database being configured to store mapping data for mapping each of the plurality of tenants to a scale group storing the private unshared database associated with the tenant; receiving a request for the hosted application from one of the plurality of tenants; in response to the request, locating a private unshared database associated with the one of the plurality of tenants by searching the configuration database shared among the plurality of tenants to retrieve the mapping data indicating the database server and the scale group where the private unshared database associated with the one of the plurality of tenants is stored; and responding to the request for the hosted application utilizing data stored in the located private unshared database, wherein the hosted application comprises a customer relationship management application accessed through a plug-in executing within a personal information manager application. - View Dependent Claims (5, 6, 7)
-
-
8. A computer-readable medium having computer-executable instructions stored thereupon which, when executed by a computer, cause the computer to:
-
provide a shared middle-tier operative to provide a hosted business application to a plurality of tenants; store a private unshared database for each of the plurality of tenants in one or more scale groups, the scale groups accessible to the shared middle-tier; store mapping data at a configuration database shared among the plurality of tenants, the configuration database being configured to store mapping data for mapping each of the plurality of tenants to a scale group storing the private unshared database associated with the tenant; receive at the shared middle-tier a request to access the hosted business application from one of the tenants; in response to receiving the request, locate the private unshared database associated with the one of the plurality of tenants and inaccessible to the other tenants by searching the configuration database to retrieve the mapping data indicating for the database server and the scale group where the private unshared database associated with the one of the plurality of tenants is stored; and
torespond to the request to access the hosted business application utilizing data stored in the located private unshared database associated with the one of the tenants, wherein the hosted business application comprises a customer relationship management application accessed through a plug-in executing within a personal information manager application. - View Dependent Claims (9, 10, 11)
-
Specification