The 2nd installment in a series of articles for creating Software as a Service, Multi-Tenant Data Architecture, is now available from the Microsoft Architecture Strategy Team on MSDN.
In this article, we look at the continuum between isolated data and shared data, and identify three distinct approaches for creating data architectures that fall at different places along the continuum. Next, we'll explore some of the technical and business factors to consider when deciding which approach to use. Finally, we'll present design patterns for ensuring security, creating an extensible data model, and scaling the data infrastructure.
The article starts with an overview of the general approaches to a multi-tenant architecture and then asks both technical and business questions to help define the most appropriate plan, giving some useful SQL Server strategies to help plan for isolation and scalability. Overall it is a great first step at looking at the consideration of developing the data services required for SaaS.
Start with the first article in the series, Architecture Strategies for Catching the Long Tail, for an introduction if you are unfamiliar with the SaaS concepts.