We’re delighted to announce availability of a sample SaaS application and a series of management scripts and tutorials that demonstrate a range of SaaS-focused design and management patterns that can accelerate SaaS application development on SQL Database. These patterns extend the benefits of SQL Database, making it the most effective and easy-to-manage data platform for a wide range of data-intensive multi-tenant SaaS applications.
The discussion around patterns starts with the consideration of what data model to use. Multi-tenant applications have traditionally been implemented using a multi-tenant database. While multi-tenant databases remain effective for some applications, particularly where the amount of data stored per tenant is small, many SaaS applications benefit from the isolation inherent in using a database per tenant. The fully-managed nature of SQL Database and the use of elastic pools have made managing massive numbers of databases practical. Many ISVs are now running SaaS applications on SQL Database with tens of thousands of tenant databases in elastic pools. MYOB, a leading Australian accounting ISV, is managing over 130,000 tenant databases without breaking a sweat! A database-per-tenant model allows these customers to achieve levels of tenant isolation not possible with a multi-tenant database, with improvements in data security, privacy, performance management, extensibility, and more.