Systems and methods for accessing a shared space in a provider-tenant environment by using middleware
First Claim
Patent Images
1. A method for hosting, at a provider, a plurality of tenants over a network, the method comprising:
- determining which of a plurality of data structures are shared by the plurality of tenants, and determining which of the plurality of data structures are specific to a first tenant of the plurality of tenants;
generating a shared designation to identify a data structure as being shared by the plurality of tenants, and generating a tenant-specific designation to identify a data structure as being specific to the first tenant;
appending the shared designation to a shared data structure determined as being shared by the plurality of tenants, and appending the tenant-specific designation to a tenant-specific data structure determined as being specific to the first tenant;
storing, at the provider, the shared data structure;
storing, at a tenant server of the first tenant, the tenant-specific data structure for access by the first tenant;
storing, at a module, metadata including locations of the shared data structure and the tenant-specific data structure;
receiving, at the module, a data request from a tenant terminal of the first tenant;
retrieving, in response to the data request and based on the metadata;
the shared data structure from the provider when the data request is for the shared data structure; and
the tenant-specific data structure from the tenant server when the data request is for the tenant-specific data structure; and
sending the retrieved data structure to the tenant terminal in response to the data request.
2 Assignments
0 Petitions
Accused Products
Abstract
The present invention discloses methods and systems for hosting tenants in a computer-based environment in which a provider stores a shared data structure. Each of the tenants may communicate with a middleware module storing metadata referencing the shared data structure and a tenant-specific data structure specific to the first tenant for access by the first tenant. Based on the metadata and in response to a data request from the first tenant, the system may the query the provider or the first tenant for requested data and provide the requested data based on the querying.
-
Citations
19 Claims
-
1. A method for hosting, at a provider, a plurality of tenants over a network, the method comprising:
-
determining which of a plurality of data structures are shared by the plurality of tenants, and determining which of the plurality of data structures are specific to a first tenant of the plurality of tenants; generating a shared designation to identify a data structure as being shared by the plurality of tenants, and generating a tenant-specific designation to identify a data structure as being specific to the first tenant; appending the shared designation to a shared data structure determined as being shared by the plurality of tenants, and appending the tenant-specific designation to a tenant-specific data structure determined as being specific to the first tenant; storing, at the provider, the shared data structure; storing, at a tenant server of the first tenant, the tenant-specific data structure for access by the first tenant; storing, at a module, metadata including locations of the shared data structure and the tenant-specific data structure; receiving, at the module, a data request from a tenant terminal of the first tenant; retrieving, in response to the data request and based on the metadata; the shared data structure from the provider when the data request is for the shared data structure; and the tenant-specific data structure from the tenant server when the data request is for the tenant-specific data structure; and sending the retrieved data structure to the tenant terminal in response to the data request. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system for hosting, at a provider, a plurality of tenants over a network, the system comprising:
-
means for determining which of a plurality of data structures are shared by the plurality of tenants, and determining which of the plurality of data structures are specific to a first tenant of the plurality of tenants; means for generating a shared designation to identify a data structure as being shared by the plurality of tenants, and generating a tenant-specific designation to identify a data structure as being specific to the first tenant; means for appending the shared designation to a shared data structure determined as being shared by the plurality of tenants, and appending the tenant-specific designation to a tenant-specific data structure determined as being specific to the first tenant; means for storing, at the provider, the shared data structure; means for storing, at a tenant server of the first tenant, the tenant-specific data structure for access by the first tenant; means for storing, at a module, metadata including locations of the shared data structure and the tenant-specific data structure; means for receiving, at the module, a data request from a tenant terminal of the first tenant; means for retrieving, in response to the data request and based on the metadata; the shared data structure from the provider when the data request is for the shared data structure; and the tenant-specific data structure from the tenant server when the data request is for the tenant-specific data structure; and means for sending the retrieved data structure to the tenant terminal in response to the data request. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A system for hosting a plurality of tenants over a network, the system comprising:
-
means for determining which of a plurality of data structures are shared by the plurality of tenants, and determining which of the plurality of data structures are specific to a first tenant of the plurality of tenants; means for generating a shared designation to identify a data structure as being shared by the plurality of tenants, and generating a tenant-specific designation to identify a data structure as being specific to the first tenant; means for appending the shared designation to a shared data structure determined as being shared by the plurality of tenants, and appending the tenant-specific designation to a tenant-specific data structure determined as being specific to the first tenant; a provider that stores a shared data structure; a tenant server of the first tenant that stores a tenant-specific data structure for access by the first tenant; and a module for; storing metadata including locations of the shared data structure and the tenant-specific data structure; receiving a data request from a tenant terminal of the first tenant; retrieving;
in response to the data request and based on the metadata;the shared data structure from the provider when the data request is for the shared data structure; and the tenant-specific data structure from the tenant server when the data request is for the tenant-specific data structure; and sending the retrieved data structure to the tenant terminal in response to the data request.
-
Specification