Thursday, May 26, 2022

 

This is a continuation of a recent article on multi-tenancy.

The previous article introduced multi-tenancy with an emphasis on dedicated and shared resource models. It suggested that provisioning of resources, their lifetime, scope, and level can be isolated in the client’s perspective and run deep into the infrastructure as necessary. The infrastructure makes choices on the costs, but the clients want separation and protection of resources, privacy, and confidentiality of their data as well as tools for control and data plane management The benefits that the infrastructure provides with multi-tenancy include common regulatory controls, governance and security framework as well as a scheduled sweep of resources.

We took the opportunity to discuss Azure storage service as an example of a service that implements multi-tenancy. The design choices for the components at different levels that articulated multi-tenancy were called out. Specifically, the adaptive algorithm and the movement of partitions is equally applicable  to dedicated resources from a SaaS. Multi-tenant resource providers today ask for their clients to choose regions because it provides high availability given that resources have little or no difference when used from one region or another.

A case was made for service class differentiation from a multi-tenant service. Resources can be grouped and tiered to meet different service level classifications, but this can also go deeper into the provisioning logic of the multi-tenant service.  Service class differentiation can be achieved with quality-of-service implementation and costing strategies.

Quality of Service guarantees are based on sharing and congestion studies. To study congestion, resource requests are marked for distributor to distinguish between different classes and new distribution policies to treat requests differently. QoS guarantees provide isolation for one class from other classes. For example, when allocating different bandwidths to each application flow by a router, bandwidth may not be efficiently used. QoS guarantees that while providing isolation to different classes, it is preferred to utilize the resources as efficiently as possible. Since most multi-tenancy providers have an infrastructure capacity that cannot be exceeded, there is a need to control admission. Tenants can declare their requirements, and the multi-tenant service provider can block if it cannot provide the resources. 

The costing strategy has been favored to be on a pay-as-you-go basis because this improves the value for the client while giving them the incentive to reclaim resources and keep their costs down further.  Costing and monitoring go hand in hand so a certain amount visibility into usage is demanded from the infrastructure.  Continuous operation for each phase of the DevOps and IT operations lifecycles is necessary. Health, performance, and reliability of the provisioned resources play a critical role in their usage and affect billing. Continuous monitoring of API is also possible via Synthetic monitoring. It provides proactive visibility into API issues before customers find the issues themselves. This is automated probing then ensures end-to-end validation of specific scenarios. The steps to setup a Synthetic monitoring includes onboarding, provisioning, and deployment.

The costs can make service levels more appealing when the costing strategy involves a weighted cost analysis. By making the costing be based on granular activities, the organization of costs to categories is removed and separate focus on all the labor involved in the cloud operations is removed. A virtual data warehouse and a star schema can help to capture all dimensions including time and space to perform aggregations for better querying, reporting and visualizations.

No comments:

Post a Comment