Systems and methods to implement extensibility of tenant content in a provider-tenant environment
First Claim
1. A method for processing a data request, the method comprising:
- receiving the data request from a first tenant of a plurality of tenants;
retrieving, by a server including a processor, a shared table based on the data request, the shared table including rows and columns of shared elements shared by the plurality of tenants, the shared table having appended thereto a shared designation that identifies the shared table as being shared by the plurality of tenants;
retrieving, by the server, an extended table associated with the shared table and the first tenant, the extended table including rows and columns of tenant-specific elements specific to the first tenant, the rows and columns of the tenant-specific elements in the extended table being modifications of corresponding rows and columns of shared elements in the shared table, the extended table having appended thereto a tenant-specific designation that identifies the extended table as being specific to the first tenant;
generating a combined table including the rows and columns of the shared elements in the shared table, wherein rows and columns of shared elements in the shared table having corresponding rows and columns of tenant-specific elements in the extended table are substituted with the corresponding rows and columns of tenant-specific elements in the extended table; and
providing, in response to the data request, a query result to the first tenant based on the combined table.
2 Assignments
0 Petitions
Accused Products
Abstract
The present invention discloses methods and systems for hosting tenants over a network in a computer-based environment in which a provider may store a shared data structure having shared data. A tenant receives a request for a shared data structure and retrieves the shared data structure from the provider based on shared metadata identifying the locations of shared data structures stored at the provider. In addition, based on extension metadata, the tenant retrieves an extended data structure including tenant-specific elements unique to the first tenant. The tenant server then combines the shared and extended data structures into a combined data structure including the tenant-specific elements.
172 Citations
20 Claims
-
1. A method for processing a data request, the method comprising:
-
receiving the data request from a first tenant of a plurality of tenants; retrieving, by a server including a processor, a shared table based on the data request, the shared table including rows and columns of shared elements shared by the plurality of tenants, the shared table having appended thereto a shared designation that identifies the shared table as being shared by the plurality of tenants; retrieving, by the server, an extended table associated with the shared table and the first tenant, the extended table including rows and columns of tenant-specific elements specific to the first tenant, the rows and columns of the tenant-specific elements in the extended table being modifications of corresponding rows and columns of shared elements in the shared table, the extended table having appended thereto a tenant-specific designation that identifies the extended table as being specific to the first tenant; generating a combined table including the rows and columns of the shared elements in the shared table, wherein rows and columns of shared elements in the shared table having corresponding rows and columns of tenant-specific elements in the extended table are substituted with the corresponding rows and columns of tenant-specific elements in the extended table; and providing, in response to the data request, a query result to the first tenant based on the combined table. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A system for processing a data request, the system comprising:
-
a processor; means for receiving the data request from a first tenant of a plurality of tenants; means for retrieving a shared table based on the data request, the shared table including rows and columns of shared elements shared by the plurality of tenants, the shared table having appended thereto a shared designation that identifies the shared table as being shared by the plurality of tenants; means for retrieving an extended table associated with the shared table and the first tenant, the extended table including rows and columns of tenant-specific elements specific to the first tenant, the rows and columns of the tenant-specific elements in the extended table being modifications of corresponding rows and columns of shared elements in the shared table, the extended table having appended thereto a tenant-specific designation that identifies the extended table as being specific to the first tenant; means for generating a combined table including the rows and columns of the shared elements in the shared table, wherein rows and columns of shared elements in the shared table having corresponding rows and columns of tenant-specific elements in the extended table are substituted with the corresponding rows and columns of tenant-specific elements in the extended table; and means for providing, in response to the data request, a query result to the first tenant based on the combined table. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A server for processing a data request, the server comprising:
-
a storage for storing instructions; a processor for executing the instructions to perform the steps of; receiving the data request from a first tenant of a plurality of tenants; retrieving a shared table based on the data request, the shared table including rows and columns of shared elements shared by the plurality of tenants, the shared table having appended thereto a shared designation that identifies the shared table as being shared by the plurality of tenants; retrieving an extended table associated with the shared table and the first tenant, the extended table including rows and columns of tenant-specific elements specific to the first tenant, the rows and columns of the tenant-specific elements in the extended table being modifications of corresponding rows and columns of shared elements in the shared table, the extended table having appended thereto a tenant-specific designation that identifies the extended table as being specific to the first tenant; generating a combined table including the rows and columns of the shared elements in the shared table, wherein rows and columns of shared elements in the shared table having corresponding rows and columns of tenant-specific elements in the extended table are substituted with the corresponding rows and columns of tenant-specific elements in the extended table; and providing, in response to the data request, a query result to the first tenant based on the combined table. - View Dependent Claims (18, 19, 20)
-
Specification