In the early days of the cloud, organisations were reluctant to adopt cloud strategies. Few organisations considered applying policies, technologies, and controls to protect data across the cloud. However, the last several years has seen the proven effectiveness of cloud deployments in scalability, cost, and security. Now we’re seeing the rapid adoption of cloud platforms by organisations of all shapes and sizes.
Our Founder James Ker-Reid sat down with new partner DataTruth to discuss some of the areas of technical complexity which typically arise when implementing SaaS for tech startups. Across all kinds of architectural considerations, technical teams often find themselves trading off different forms of complexity. In the specific case of single- vs multi-tenant architectures, tech start-ups are likely to be in a position of trading maintenance complexity against the complexities associated with a suitably abstracted data model.
What is Single Tenancy?
Single Tenancy is a single instance and independent database of the software intended to serve a single customer. Essentially, there is no sharing happening with this option.
Benefits of single-tenant include:
- Security: A single customer and a single server is often contained on secure hardware being used by a limited number of people.
- Dependability: With an entire environment dedicated to one client, resources are abundant and available anytime.
- Customisation: Control over the entire environment enables customisation and added functionality.
Potential drawbacks of single-tenant:
- Maintenance: Single-tenancy typically means more manual tasks and more time consuming maintenance to keep things running smoothly and efficiently.
- Cost: Single-tenancy typically allows for more resources, but at a premium price given that there is only one customer for the entire environment.
What is Multi-Tenancy?
Multi-tenancy means that a single instance of the software and its supporting infrastructure serves multiple customers. Each customer shares the software application and also shares a single database. Each tenant’s data is isolated by design and remains invisible to other tenants.
Benefits of multi-tenant:
- Affordable: Multiple customers means that the cost for the environment is shared.
- Scalability: SaaS multi-tenant environments are usually quicker to setup and manage, enabling greater repeatability and overall scalability.
- Maintenance: The infrastructure is operated entirely by the SaaS vendor, meaning that a certain level of database maintenance is handled by the vendor, instead of the business maintaining the environment.
Potential drawbacks of multi-tenant:
- Limited customisation: Individual custom changes to the database aren’t typically an option.
- Security: Other tenants won’t see your data. However, multiple users (not associated with your organisation) do inhabit the same infrastructure and database at a certain level. To some extent, this broader access means security controls can be more difficult to implement and maintain.
- Generalisation: For a multi-tenant environment to work well, a considerable amount of time needs to be invested to design a suitably abstracted and generalised system and data model that can support the complex needs of different customers at a generalised level.
Single-Tenant vs Multi-Tenant – What’s the Difference?
To implement a scalable technical architecture for SaaS businesses, it is essential to leverage the patterns and practices of modern DevOps. Amongst other things, this includes the adoption of a high degree of automation to drive repeatability and quality assurance across the entire technical platform.
This kind of automation is hard to achieve in a multi-tenant environment, even though practices and patterns are fairly mainstream and well adopted. However, it can be even more complex to achieve in a single-tenant environment since it often requires a degree of customisation for each specific instance. As such, for startups looking to scale, it usually makes sense to adopt a multi-tenant architecture to reduce the maintenance complexity. That said, for companies that have originated with a single-tenancy model, it can be exceptionally complex to plot a path to a multi-tenant setup, especially with a product having significant history and client-specific customisation.
For such a significant architectural shift, DataTruth recommend identifying the core aspects of the product that deliver the most value to the majority of customers, designing a new multi-tenancy architecture based on that defined scope, and then phase migration of applicable customers from their existing installation to the multi-tenant setup. For some customers, it might prove impractical to move them over at all, in which case they may need to be retired into legacy accounts in favour of growing the customer base with new clients that more closely fit the defined core capabilities of the new architecture.
Working together Sales for Startups and DataTruth have jointly built secure infrastructure to support sales growth projects. Ensuring client goals are achieved by getting clear on their sales strategy and a technical infrastructure they can quickly scale and gain predictable revenue at their tech startup.
If you’re interested in exploring a partnership with Sales for Startups and becoming part of its partner ecosystem then please book a call with us.