Resource Pooling

Resource pooling, the sharing of computing capabilities, leads to increased resource utilization rates. This means you need fewer resources and thus save costs. This animation shows how that works (using virtualization).

Multi-tenancy

Pooling resources on the software level means that a consumer is not the only one using the software. The software must be designed to partition itself and provide scalable services to multiple unrelated tenants. This is not a new concept: in the 1960s and 1970s, in mainframe environments, this was called time sharing. In the 1990s, the term in vogue was Application Service Provider (ASP). Nowadays people speak of cloud services.

Billing and Metering

When multiple consumers share the same resources, the question arises who pays for them. Billing and metering infrastructure automatically collects per tenant usage of resources. For this to work, each request must be assigned a unique transaction ID, that is related to the tenant. The transaction ID must be passed along to all sub-components, so that each can add their usage cost to the transaction.

The types of items to charge for span a continuum starting with low level services, like CPU usage, storage size, and network bandwidth, via intermediate services, like Virtual Machines hours and number of requests, to high-level services like number of concurrent users allowed. An additional flat monthly fee can be added too. And, of course, these metrics can be combined as well. What metrics to collect may depend on the particular service model.

Data Partitioning

It may make sense to store data from different tenants in different locations. For instance, storing data close to where it’s used may decrease latency and thereby improve performance for the cloud consumer. Data for different tenants may be combined into a shard.


Previous: Broad Network Access Next: Rapid elasticity

2 Responses to Resource Pooling

  1. [...] my current project, we’re using XACML in a multi-tenant environment where each tenant uses their own identity provider. No [...]

  2. [...] instance, in a multi-tenant environment, data for the tenants might be stored in separate databases, and your application may [...]

Please Join the Discussion

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 297 other followers