Ask HN: Why don't most startups use Oracle?

5 points by YuriNiyazov ↗ HN
There was an article a while back where Marc Andreessen said that none of the startups that he invested in use Oracle hardware. The link is: http://www.businessinsider.com/boxnet-2011-9

My question is: why not? I understand that the best way for a two-person team to get a prototype up is by bringing up 3 EC2 machines with PostgreSQL on one, MongoDB on another, and the Rails stack on the third. This is when you have no money; but it seems that even when a company has closed a post-Series A round and has plenty of money, there is still resistance to buying a huge Oracle/Sun box with terabytes of RAM and petabytes of storage on a SAN, and instead there's usually a team of engineers doing life support on a Mongo or Cassandra cluster. It's worth pointing out that three engineers at $100K each is probably the amount one would pay for a few huge boxes.

11 comments

[ 3.5 ms ] story [ 30.8 ms ] thread
May be cause buying boxes do not reduce the need in engineers to take care those boxes. So you pay twice.
Usually it is because the startup folks do not have the experience to even know about Oracle servers. And there is a strong tendency for younger people to choose technology by imitation, in other words use what your friends and acquaintances use. From a business viewpoint, making a tech decision that way is better than picking at random, but even better is having someone with grey hair around who can weigh the pros and cons of different tools and match them up better to what the startup is doing.
I got my grey hairs from administering Solaris and Oracle.

But in corporate IT, you don't get promoted for using open source. You deal with the Big Boyz: IBM, HP, Oracle, EDS. They take you and your bosses to all expenses paid lunches and golf.

And run what? Solaris?!

The only good thing to do with Solaris is to take it out back and shoot it in the head.

I supposed I'd have been better off learning Solaris before Linux... but since I learned Linux first, going to Solaris honestly feels like I'm going backwards about 20 years.

Every time I had to admin a Solaris system, after using Linux / HPUX / AIX was like rubbing two wet sticks together to start a fire compared to flicking a BiC Lighter.
I've worked on some massive Oracle databases and Sun servers. As Akulbe says, Solaris is a pain to use when you've used Linux/HPUX/AIX before.

Cost is the other issue, e.g. a couple of years ago a 21TB EMC array with a 32CPU, 96GB RAM system Sun HW + Solaris + Oracle licenses cost $7m.

Then there are the annual HW + OS + Oracle support costs easily 15% of your purchase cost. Plus good Solaris SysAdmin / Oracle DBAs earn $160k - $220k p.a. on contract depending on location. $220k in London, UK financial industry.

A startup can duplicate the same sort of configuration using PostgreSQL (there is a thriving industry replacing Oracle RDBMS with PostgreSQL) and a slew multi-core multi-CPU servers. And have better control over everything. Applying Solaris and Oracle updates, etc can be a royal pain.

The biggest reason IMO is lack of expertise - the average startup engineers will be less likely to have Oracle experience and skillset.

Another reason is that there just doesn't seem to be a reason for the average startup to use Oracle HW. Oracle doesn't seem as 'agile' for startups. It's far cheaper and quicker to iterate using commodity cloud solutions.

If you're an established business with a common problem domain that can be solved with an off the shelf commercial application backed by Oracle hw, go Oracle. This however doesn't fit the use case of most startups.

Plus, if I was an investor and someone told me they needed $X funding for Oracle HW instead of a scalable cloud-based solution, they'd really really have to prove it. I'd probably tell them they're overengineering except for very specific industries and use-cases.

I can't speak for anyone else, but here's my thoughts on it; I have Solaris and Oracle experience in large enterprise environments, but it's not something I would consider at a Startup stage. And I'm not anti-Oracle by any means, it just comes down to maximizing my resources. For Oracle, you have these huge up front costs and buy in, and then you consider that there's newer (aka cooler) technology out there that has been proven to work (aka scale) and its way cheaper if not free. And then you consider the shift towards cloud based service delivery and the concept of on demand resources and pay per use. For the "startup mentality" it just seems like a no-brainer to start out with the cheap/free stuff that works, pay per use, and minimal buy in. Best bang for the buck.

So then you build it, it's running, and it grows. And then like any IT solution you build, you have this "lock-in" factor where you've built something on a specific platform in the cloud (or whatever) and it's painful to move to something different. This is compounded as the Userbase (and Dataset) grows bigger and bigger. So you just keep it going as long as you can and keep scaling, and I would guess this is why nobody in the Startup world uses Oracle.

If Oracle wants to power more Startups, Oracle needs to provide an affordable product that Startups choose to use from the start. They would probably kill it if they developed their own version of AWS. Seems that for most of the people I talk with, Oracle is synonymous with Enterprise, not Startups or new innovative technologies. So in some ways, the perception of Oracle and who uses their product might also play a factor. The knowledge and skill requirements are somewhat of a gray area for me, as any approach requires knowledge and skill to implement. I guess I wouldn't describe one approach as requiring more knowledge/skill than another (they all require knowledge/skill to implement, maintain, and scale).

say they scaled from 1 to 10s to 100s of EC2 machines..who'd want to migrate to a different architecture after that?
Having dealt with PostgreSQL, MySQL, MSSQL, DB/2, Sybase, and Oracle - I say level of effort.

Yes, Oracle can often be considered a performance leader (but the margin is debatable), but of that list I have always found it more difficult to deal with. Just the installation process alone on Linux with Oracle was more time consuming than DB/2, where I just wanted it to simply run.

Now I am not a qualified DBA on Oracle or DB/2, but having spent a _lot_ of time with various RDBMS platforms, I don't have the patience to expend too much effort on a simple, vanilla install with the defaults.

Compared to PostgreSQL, MSSQL, and MySQL - which I have installed, configured, and admin'd numerous times, I might surmise that in a startup its important to get down to business, in this case the business of dealing with the data. If I have to muck about just getting my DB platforms to run, I am wasting time.

So in a "time is money" context, Oracle loses - unless you have Oracle specialists on staff, which may be uncommon in startups.

Oracle is enormously expensive. It's worth the expense for companies that actually need Oracle's level of performance, but most startups don't need to worry about scaling to that level for a long time. It makes more sense to spend the money on something else and not worry about performance until you are successful enough that you need to worry about it.