摘要:
The method and system of the claims decomposes an organization structure into a set of mapping objects, where each mapping object represents an affiliation between entities of an organization. Each object in the data model is associated with an owner by designating a set of ownership affiliation attributes for each object. A set of privileges is assigned to an affiliation and access is checked based on a user's affiliation to an object and a user's privilege depth. Single privilege checking is performed only as a last resort for special, infrequent situations.
摘要:
A metadata driven system for supporting business application software required in the middle tier for a line of business applications includes a process metadata module adapted to store a process in metadata format, wherein the process object contains logic related to an entity of the application software. The system allows for persistence of various entities like accounts, incidents, etc., and allows an end user of the business application software to create new types of entities. The system also allows the end user to perform critical business logic operations even on the new entities defined by the end user after the deployment of the business application without requiring recompilation of the business application software. The metadata driven approach allows to easily make changes to business applications and to automate quality assurance of objects built on top of the business applications.
摘要:
A metadata driven software development system provides various functionalities related to an entity of an application in the metadata format. Specifically, the system provides a set of base classes related to the entity and a set of methods and application programming interfaces for various operations to be performed on the entities in the metadata format. Defining such functionalities in the metadata format allows the system to dynamically generate XML messages matching any customized schema for that entity. Because such functionality is metadata driven, this system can be used with customized versions of the application without requiring any additional code or recompilation.
摘要:
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.
摘要:
Gathering tenant usage data of server resources. A method includes a server in a cluster providing server resources for one or more tenants of the server. Data is stored in a local usage cache at the server. The data characterizes the resources provided to the one or more tenants of the server. At the server, data stored in the local usage cache is aggregated on a tenant basis, such that data is aggregated for given tenants. The aggregated data is sent to a distributed cache. At the server, aggregated data from other servers in the cluster is received from the distributed cache. The aggregated data from other servers in the cluster is globally aggregated and stored at an aggregated usage cache at the server in the globally aggregated form.
摘要:
A transaction protocol is described that allows a database transaction to begin as a local, lightweight transaction without involving a distributed transaction coordinator and then be promoted to a distributed transaction only when required, e.g. when more than one database connection is required. A promotable enlistment allows a first resource to begin processing a promotable transaction. If the resource is notified that the transaction is being promoted to a distributed transaction, the resource is configured to promote the enlistment to a distributed transaction coordinator which coordinates processing of the transaction between the first resource and at least a second resource.
摘要:
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.
摘要:
Technologies are described herein for implementing a hosted multi-tenant application system. The server computers utilized to provide the hosted application are organized into logical groupings of server computers called scale groups. One or more tenants are assigned to each scale group. When a new tenant is provisioned, the tenant is assigned to a scale group and a database server in the assigned scale group creates a database for the tenant. An association between the tenant and the scale group is also created in a shared configuration database. When a request is received from a tenant to access the hosted application, the shared configuration database is consulted to locate the scale group hosting the tenant. Once the appropriate scale group has been located, the request is redirected to the appropriate scale group for processing.
摘要:
Gathering tenant usage data of server resources. A method includes a server in a cluster providing server resources for one or more tenants of the server. Data is stored in a local usage cache at the server. The data characterizes the resources provided to the one or more tenants of the server. At the server, data stored in the local usage cache is aggregated on a tenant basis, such that data is aggregated for given tenants. The aggregated data is sent to a distributed cache. At the server, aggregated data from other servers in the cluster is received from the distributed cache. The aggregated data from other servers in the cluster is globally aggregated and stored at an aggregated usage cache at the server in the globally aggregated form.
摘要:
Technologies are described herein for implementing a hosted multi-tenant application system. The server computers utilized to provide the hosted application are organized into logical groupings of server computers called scale groups. One or more tenants are assigned to each scale group. When a new tenant is provisioned, the tenant is assigned to a scale group and a database server in the assigned scale group creates a database for the tenant. An association between the tenant and the scale group is also created in a shared configuration database. When a request is received from a tenant to access the hosted application, the shared configuration database is consulted to locate the scale group hosting the tenant. Once the appropriate scale group has been located, the request is redirected to the appropriate scale group for processing.