What if Salesforce.com weren’t multi-tenant?
In my last post, I mentioned that I was going to write one last follow up post on the blogosphere-wide multi-tenancy discussion, so here it is! Recently, Salesforce.com quantified some of its architecture, giving us visibility into what it takes to support a SaaS business of its magnitude: 1,000 servers for 55,000 customers and 1.5 million individual subscribers! That’s not too shabby. It also gives us some insight into architecture efficiency. Clearly, there are lots of questions that would need answering to give an accurate analysis, but enough data is there to have good discussion driven by a healthy dose of assumption.
Recently, Bob Warfield over at Smoothspan wrote a couple of excellent multi-tenancy oriented posts. In one of those posts, Warfield drilled into the Salesforce.com numbers I mentioned earlier in an attempt to quantify the impact of their architecture on cost of service. Warfield gave some analysis around multi-tenancy on the overall cost of service incurred by salesforce.com. Looking at the salesforce.com annual report, it’s apparent that it costs salesforce.com $0.12-$0.13 per $1.00 of revenue to deliver its service for a total of $127 million for the year on roughly $1 billion in subscription revenue. Warfield identified that if they’re running 1,000 servers, we can use Amazon pricing as a roughshod estimate of what the actual servers would cost them if they were running on the Amazon cloud: about $4.7 million per year. That leaves about $122 million unaccounted for! As Warfield pointed out, clearly there are lots of other expenses. It’s most likely that these expenses are due to lack of automation and overabundance of personnel due to said lack of automation. To a degree, this means that multi-tenancy is doing its job: the software’s architecture and resource utilization is but a fraction of total cost of service.
To understand this better, let’s use Warfield’s numbers and recast the scenario with the question “What if Salesforce.com weren’t multi-tenant?” Currently, we know that about 55 customers are supported per server. Many propose virtualization as a route to multi-tenancy since it’s so easy to fire up an instance on say, EC2, and create a 1-1 affinity for a customer to a server. If we imagine Salesforce.com to use this architecture instead, one where virtualization is used instead of a multi-tenant approach, we get a drastically different picture. I won’t calculate the EC2 costs, but instead will use Warfield’s numbers: one EC2 instance costs about $4,700 per year ($4.7 million/1,000 instances). If we dedicated a single instance to each customer (that’s 55,000 instances based on Salesforce.com’s number of customers), it would cost Salesforce.com $258 million! Let’s be generous and give it a 2:1 leverage (maybe there is some server sharing) and cut the instances in half, we’re still pushing $129 million. Assuming that this virtualized approach got rid of all internal staff and expenses at Salesforce.com related to cost of service, we’d have to hit that 2:1 leverage to even be competitive with their current cost structure. More than likely, taking a virtualized approach wouldn’t entirely get rid of Salesforce.com’s “out of architecture” expenses since I’m pretty confident that not ALL of the remaining $122 million is dedicated to simply running their 1,000 servers, but some big chunk is. Even if a virtualized or in the cloud approach had a 2:1 leverage and slashed 75% of the $122 million, Salesforce.com still wouldn’t have the cost profile they do now.
Point? It seems multi-tenancy at $4.7 million worth of hardware/software resources has a big something to do with the overall cost profile. As Warfield pointed out, something else is making up a brunt of the cost, but the architecture approach certainly seems to have depressed it’s part of the cost to something reasonable. Now, how about a multi-tenant architecture on EC2? I’d love to see some cost specifics in the wild on this sort of arrangement!
If you’d like to mingle with others in the SaaS space, the SaaSBlogs group on LinkedIn now has 1950+ members and is growing every day; make sure you’ re not missing out and join today!
Links
View Technorati Links
SaaSBlogs Tags
Tagged with: ec2 • multi-tenancy • multi-tenant • SaaS • salesforce.com • warfield




Love the analysis of “backing out” multitenancy!
Salesforce are one of the most efficient operators out there, and it is a huge advantage for them. They spend every penny of the multitenant savings in other ways.
BTW, I am entirely confident that the cost to run all the virtualized servers in terms of people would be much higher than their non-hardware costs are today for multitenant.
Cheers,
BW