Why multi-tenancy matters

Why multi-tenancy matters

Summary: Why do so many SaaS providers put so much emphasis on multi-tenancy? Intacct's CTO reveals some of the operational and economic reasons why running customers on identical code matters to his company. TalkBack commenters have their 2c too.

SHARE:
6

I'd like to refine the description of multi-tenancy that I set out in my post earlier this week on Many degrees of multi-tenancy. Intacct's CTO, Aaron Harris, responded with some very illuminating detail on the vendor's architecture, which leads me to reclassify Intacct (and indeed NetSuite) into the top tier alongside Salesforce.com. Their differences come down to implementation choices rather than any difference of principle, as I'll explain. There's also been lots of thoughtful TalkBack, and I'll highlight some of those comments too.

Intacct CTO Aaron HarrisAt the top tier of multi-tenancy, the debate is merely about how many identical instances a vendor wants to support. There's universal agreement on the need for every customer to be running on identical code, right down to shared schema at the database level. The debate revolves around the optimum size and number of instances that the vendor replicates within its data center. Intacct's Harris (pictured here) succinctly set out the main factors in an email to me earlier this week, which I'm quoting with permission:

"Intacct currently runs all 2,500 of its customers on 10 production databases. Roughly three years ago we exceeded the capacity of a single DB instance and were forced to make a decision about how we were going to scale. Our options were:

  1. go with a big-iron, rack approach similar to Salesforce at the time (scale up),
  2. go with many inexpensive servers similar to NetSuite (scale out) or
  3. continue to buy the most powerful Intel-based boxes we could find, and add more as necessary.

"We ruled out a) for a couple reasons. We felt having a single instance causes too much exposure. Even if that single instance has greater reliability numbers, the outages become too visible. Second, our over-arching design principle for operations is 'simple, rugged, economical design'. Rack fails on 'simple' and 'economical'.

"We ruled out b) because we feel having many DB servers eliminates one of the core reasons for multi-tenancy — economics. It's not the acquisition of lots of inexpensive servers that fails the economics test — it's the increased burden on operations staff. Additionally, more DBs means more risk that your instances won't be identical."

That final point brings us onto the topic of upgrades, which requires some elaboration. First of all here's what Harris wrote in his email:

"Intacct is religious about upgrading all customers at the same time. We will never tolerate running multiple versions of our code. Again, this gets back to why we go multi-tenant in the first place — economics. Each version adds more regression testing, more support complexities, and adds unnecessary services processes. Similarly, even though customer data is leveled across multiple databases, the databases are identical at the hardware, system, and schema level. We can easily move customers from one DB to another (which does happen as we level load) because our DBs are identical."

At first glance, that seems in complete contradiction to what former CEO David Thomas said last week, that Intacct allows its customers to choose when to upgrade to new releases. The missing factor that explains the apparent conflict is that although the code is upgraded for everyone at the same time, the new features are implemented as configuration options that customers can choose to 'switch on' as needed. Of course there are exceptions where the new code makes changes that can't be optional, but these are in the minority, as Harris explained to me in a phone call yesterday:

"The bulk of new functionality is only available if you enable it or configure it," said Harris. "It's very rare that we release something that we would call disruptive — for example, changing the position of a field from the bottom to the top of a screen."

Harris said that Intacct makes feature releases every month, each with six to twelve new features, but that in the past year, only six of those dozens of features had been 'disruptive' changes where customers had no choice about implementing them. Intacct has a process that gives users plenty of notice for this type of change, which typically involves putting an alert on the screen next to the feature, along with a clickable link that takes the user to further detail about the planned change and why it's being made.

Harris also noted the difference between "marketing releases," where vendors hold a big event and launch a new release with a lot of new features, and more routine upgrade releases that are often not publicized outside of the user base: "We [SaaS vendors] all have the capability of doing releases on a more frequent basis. There's a difference between doing a launch that we publicize and doing a release where you iteratively enhance and improve the product."

That ability to do frequent iterative releases again comes back to the low management overhead of running replicated shared-schema instances, in contrast to lesser degress of multi-tenancy that permit variations between separate instances. Several TalkBack commenters picked up on the economic and operational impact of low management overhead as one of the key characteristics of a true multi-tenant SaaS model. John Martin, for example, warned readers to beware of 'fake-SaaS' offerings:

"Customers should ask carefully about how many versions a provider maintains, how many instances/infrastructures, and how customizations are done, to ensure they get full value from the SaaS solution and aren't eventually orphaned by fake-SaaS providers."

Another TalkBack commenter, mmahal, complained that running separate instances in 'pods', as recommended by Oracle, was simply a throwback to the SoSaaS days of application service providers (ASPs): "Oracle hosting is just ASP on juice!" he wrote. [Disclosure: I was a paid keynote speaker at an Oracle SaaS partner event in January. Salesforce.com, among other SaaS vendors, is also a recent client].

Others, such as saas-guy, were more understanding of Oracle's position that software vendors should be free to choose between different models:

"When designing the right architectural approach for your SaaS offering, Which degree of multi-tenancy is right for you depends on the cost of re-writing or updating your software, cost of technology, cost of maintenance & support of the infrastructure, along with your customer needs," he wrote. "Each would-be SaaS company has to look at their needs and decide on the right approach for them. Oracle is agnostic and wants to educate their partners and make sure they understand the pros & cons with each approach."

I think it's true that vendors have to weigh up the costs and time-to-market impact of rearchitecting their applications for multi-tenancy. There are arguments for using virtualization as a short-cut that gets a SaaS offering to market faster (as part of the journey to SaaS). But vendors need to be equally aware of what they're giving up by going down that route. I'm not convinced that Oracle's 'agnosticism' on that score is as even-handed as its friends would have us believe — even though Intacct, NetSuite and Salesforce.com all run their SaaS infrastructures on Oracle databases. I think a lot of people coming from outside the SaaS world believe that multi-tenancy is overrated. Intacct's Aaron Harris has helped illuminate why so many of the most experienced SaaS providers believe multi-tenancy is fundamental to what they do.

Topics: Oracle, Cloud, Emerging Tech

Phil Wainewright

About Phil Wainewright

Since 1998, Phil Wainewright has been a thought leader in cloud computing as a blogger, analyst and consultant.

Kick off your day with ZDNet's daily email newsletter. It's the freshest tech news and opinion, served hot. Get it.

Talkback

6 comments
Log in or register to join the discussion
  • Customers Need to Know

    Saas-Guy's point is valid... for the vendor trying to shift its business in a cost-effective manner. However, the customer needs to understand the level of multi-tenancy of the solutions under consideration. The lesser degress of multi-tenancy do not take costs and complexity out of the vendor-customer relationship. Isolated tenancy tends to add costs as the third party hosting company also needs to make a profit.
    MSymonds
  • RE: Why multi-tenancy matters

    Phil,

    Good stuff. I agree with one your last points about using virtualization as a form of multi-tenancy. This was actually a comment made by SAP's CTO a year ago to me at TechEd (that you can provide multi-tenancy in a lot of different ways). I wrote quite a long piece about it and how virtualization multi-tenancy actually blurs the lines between classic enterprise software deployments and SaaS. Might be an interesting read for you to get another perspective. My blog link to it:

    http://parallax.blogs.com/parallax_calculating_tech/2008/01/why-enterprise.html

    Regardless, great topic.
    Niel
    nielr1
  • RE: Why multi-tenancy matters

    here is a great article that investigates the details of multi tenancy and how it can impact decision making.

    http://ecomcanada.wordpress.com/2011/06/29/multi-tenancy-in-cloud-computing/
    sri_prakash
    • RE: Why multi-tenancy matters

      @sri_prakash [url=http://www.youtubeconvertermac.org/index.html]YouTube Converter Mac[/url]
      [url=http://www.youtubeconvertermac.org/youtube-to-avi-for-mac.html]YouTube to AVI for Mac [/url]
      [url=http://www.youtubeconvertermac.org/youtube-to-ipod-for-mac.html]YouTube to iPod for Mac [/url]
      [url=http://www.youtubeconvertermac.org/youtube-to-mp4-for-mac.html]YouTube to MP4 for Mac [/url]
      [url=http://www.youtubeconvertermac.org/youtube-to-iphone-for-mac.html]YouTube to iPhone for Mac[/url]
      [url=http://www.youtubeconvertermac.org/youtube-to-apple-tv-for-mac.html]YouTube to Apple TV Mac[/url]
      [url=http://www.youtubeconvertermac.org/youtube-to-psp-for-mac.html]YouTube to PSP for Mac[/url]
      [url=http://www.youtubeconvertermac.org/youtube-to-ps3-for-mac.html]YouTube to PS3 for Mac[/url]
      [url=http://www.youtubeconvertermac.org/youtube-to-m4v-for-mac.html]YouTube to M4V for Mac[/url]
      [url=http://www.youtubeconvertermac.org/youtube-to-mov-for-mac.html]YouTube to MOV for Mac[/url]
      [url=http://www.youtubeconvertermac.org/youtube-to-3gp-for-mac.html]YouTube to 3GP for Mac[/url]
      [url=http://www.youtubeconvertermac.org/youtube-to-asf-for-mac.html]YouTube to ASF for Mac [/url]
      [url=http://www.youtubeconvertermac.org/youtube-to-mpeg-mpg-for-mac.html]YouTube to MPEG for Mac[/url]
      [url=http://www.youtubeconvertermac.org/youtube-to-m4a-for-mac.html]YouTube to M4A for Mac[/url]
      [url=http://www.youtubeconvertermac.org/youtube-to-aac-for-mac.html]YouTube to AAC for Mac[/url]
      [url=http://www.youtubeconvertermac.org/youtube-to-mp3-for-mac.html]YouTube to MP3 for Mac[/url]
      [url=http://www.youtubeconvertermac.org/youtube-to-wav-for-mac.html]YouTube to WAV for Mac[/url]
      [url=http://www.youtubeconvertermac.org/youtube-to-ogg-for-mac.html]YouTube to OGG for Mac[/url]
      a11348326
    • RE: Why multi-tenancy matters

      @sri_prakash [url=http://www.swf-converter-mac.info/index.html]SWF Converter Mac[/url]
      [url=http://www.swf-converter-mac.info/swf-to-video-converter-mac.html]SWF to Video Converter Mac[/url]
      [url=http://www.swf-converter-mac.info/swf-to-mp3-converter-mac.html]SWF to MP3 Converter Mac[/url]
      [url=http://www.swf-converter-mac.info/swf-to-mp4-converter-mac.html]SWF to MP4 Converter Mac[/url]
      [url=http://www.swf-converter-mac.info/swf-to-mov-converter-mac.html]SWF to MOV Converter Mac[/url]
      [url=http://www.swf-converter-mac.info/swf-to-avi-converter-mac.html]SWF to AVI Converter Mac[/url]
      [url=http://www.swf-converter-mac.info/swf-to-flv-converter-mac.html]SWF to FLV Converter Mac[/url]
      [url=http://www.swf-converter-mac.info/swf-to-mpeg-converter-mac.html]SWF to MPEG Converter Mac[/url]
      [url=http://www.swf-converter-mac.info/swf-to-wmv-converter-mac.html]SWF to WMV Converter Mac[/url]
      [url=http://www.swf-converter-mac.info/swf-to-gif-converter-mac.html]SWF to GIF Converter Mac[/url]
      [url=http://www.swf-converter-mac.info/swf-to-dvd-converter-mac.html]SWF to DVD Converter Mac[/url]
      [url=http://www.swf-converter-mac.info/swf-to-3gp-converter-mac.html]SWF to 3GP Converter Mac[/url]
      [url=http://www.swf-converter-mac.info/video-to-swf-converter-mac.html]Video to SWF Converter Mac[/url]
      [url=http://www.swf-converter-mac.info/mp3-to-swf-converter-mac.html]MP3 to SWF Converter Mac[/url]
      [url=http://www.swf-converter-mac.info/avi-to-swf-converter-mac.html]AVI to SWF Converter Mac[/url]
      [url=http://www.swf-converter-mac.info/flv-to-swf-converter-mac.html]FLV to SWF Converter Mac[/url]
      [url=http://www.swf-converter-mac.info/mov-to-swf-converter-mac.html]MOV to SWF Converter Mac[/url]
      [url=http://www.swf-converter-mac.info/gif-to-swf-converter-mac.html]GIF to SWF Converter Mac[/url]
      [url=http://www.swf-converter-mac.info/vob-to-swf-converter-mac.html]VOB to SWF Converter Mac[/url]
      [url=http://www.swf-converter-mac.info/vob-to-swf-converter-mac.html]VOB to SWF Converter Mac[/url]
      a11348326
  • RE: Why multi-tenancy matters

    In Bicom System's world of voice we find ourselves quite clearly defined by both paradigms 'for and against Multi-Tenancy'. For hosting of small & medium businessess of typically 5-50 extensions this allows us to have many users on one Asterisk Telephony Engine in our MulitTenant product http://www.bicomsystems.com/products/multi-tenant-pbx/
    This makes for a far more manageable architecture and typically about 2000 extensions can be managed on one physical server.

    As soon as a customer has specific requirements, Call Centers being the obvious example then we use our SERVERware product http://www.bicomsystems.com/products/serverware/ to create virtual servers into which dedicated PBXs can be installed. This allows the user direct access to the MySQL database for integration, it also means we can deal with aspects such as Agent Login, above all though it is the manage of resource for items such as Call Recording that counts.
    bicomsystems