I was reading Why multi-tenancy matters and Many degrees of multi-tenancy today and honestly, I am still surprised that there is still a debate around whether multi-tenancy is a prerequisite for SaaS.
Multi-tenancy is a provider view of things, if you are a buyer of SaaS IT DOES NOT MATTER. It is equivalent to asking your utility company which turbine they are using to generate power, the only thing you care is getting 220V (110V in US), 10A, 99.99% of the time at a cost of 10c per kWh.
Allow me another analogy I used in The “multi-tenant” emperor has no clothes post a while back.
Not too long ago I went to a very good restaurant serving great food, I didn’t ask them how many cooks were in the kitchen, whether they used 20 years old pans or when they last sharpen their knives… I enjoyed the food assuming that the Chef put her entire dedication to prepare my dish (even though I saw the same dish served at table next to me at almost the same time)
So, from a service consumption perspective (i.e. what people who actually pay for the service do) the important aspects should be: the functionality of the service (how well the food taste), how much I can customize the service (can I have the dish low in salt) the SLA (how diligent is the maitre d’ and how long I wait in between dishes) and the integration APIs (how well I can marry the dish with the special wine I brought with me (the restaurant had a friendly cork policy)) .
That’s it. Everything else is (at least in theory) none of my business.
For SaaS providers learning and mastering the art of multi tenancy is critical, but promoting that skill in the marketing brochure is a little bit like a Chef saying: “I cook with very sharp knives” (not very interesting, if you ask me)
So in summary:
if you buy SaaS, don’t get lured into multi-tenancy marketo-munjo-jumbo and concentrate on features, SLA, integration options and cost.
if you are a service provider, then, yes, multi-tenancy is a (potentially very important) internal secret sauce that you can use to augment your economy of scale (at the expense of other aspects) but it is by no means a prerequisite, the right trade-off between multi-tenancy and isolation will depend on a myriad of factors and is often unique to the situation. As mentioned in this blog in the past and in Phil’s post today, virtualization can be a very successful way of achieving interesting levels of economy of scale without architecting the application for full multi-tenancy.
A high level model that served me well in the past in helping company understand whether they should go multi-tenant or not is the "cost per feature" vs. "cost per tenant" model
For a more specific view on the data related aspect of multi-tenancy read this: Multi-Tenant Data Architecture