If you’re a developer, you’ve probably at least heard of Oracle. But why are so many large companies using it? And why is it worth $260B?

Back in 1978, Oracle released something pretty novel: a relational database for businesses, the first commercially available one ever. Today, businesses spend over $30B a year on relational databases, and that’s excluding the world of OLAP and data warehousing. Most of that spend comes from large enterprises deploying applications and DBs on their own infrastructure or in some sort of a managed environment, which is exactly the game Oracle plays; they did $40B in revenue last year, almost 90% of which came from licensing (think: on prem) and cloud.

So how did software that most developers at startups have never used get this big? Understanding Oracle really means understanding the history of relational databases: it all starts in the 1970s with a research paper published from deep, deep within the recesses of IBM.

The advent of the RDBMS: Codd’s 12 commandments

Edgar Frank Codd—affectionately known as the father of relational databases—joined IBM's New York office as a programmer in 1948, after flying for the RAF in the Second World War. With the exception of a brief stint in Canada and a CS PhD at Michigan, he was a standard IBM lifer, staying at Big Blue for his entire career. In 1970 though, he published the paper to end all papers: A Relational Model of Data for Large Shared Data Banks. This piece of writing almost single-handedly bore relational databases!

Screenshot of the "A Relational Model of Data for Large Shared Data Banks" newspaper article

In his work, Codd developed the idea of relational data structures. The idea was that by organizing data and representations into networks or interrelated concepts, we could efficiently store information in ways that enabled long term consistency.  

In order for a system to be considered relational, Codd proposed that it needed to adhere to a set of 13 rules, often referred to as Codd’s 12 Commandments (thanks to zero-indexing). These rules introduce concepts that developers take for granted today in any relational data store: systematic treatment of null values, support for CRUD, logical and physical data independence, and early inklings of what would become transactions. These rules weren’t written by Codd until 1985, but they build on ideas developed in this original paper.

Edgar Frank Codd at his desk
Codd looking very relational at his desk

Keep in mind that Codd’s paper—and the world’s introduction to the RDBMS—happened well before SQL or any of the interfaces we’re used to existed for databases. The state of the art at the time was IBM’s IMS, or Information Management System: it was a hierarchical database originally developed in 1966 (!) for the Apollo space mission. Hierarchical DBs organize data in trees, with data stored as records and each record connected through a link. IBM IMS still exists today!

Visual chart of Hierarchical Databases

Managing hierarchical data structures—especially querying and organizing data efficiently—is no simple task, which is part of what spurred Codd’s paper. You can sort of think of each series of records as automatically joined to each other, while in an RDBMS, joins are optional and defined at the query layer. To retrieve hierarchical data, each tree needs to be traversed, while in relational databases, you can write extremely specific and localized queries. This paradigm shift, among other reasons, is why Codd’s paper made such a splash.

Since Codd worked at IBM—and had published an internal version of the paper a year prior—Big Blue obviously had an important first mover advantage in the RDBMS market. The problem is that IMS was making IBM quite a bit of money at the time, and they were reluctant to shift resources towards something more experimental. Instead, it was a few friends who had worked together on a project for the CIA—codenamed Oracle—that were the first to commercially implement Codd’s ideas.

The founding of Oracle, and the first commercial RDBMS

Inspired by Codd’s paper, Larry Ellison (yes, the one), Bob Miner, and Ed Oates founded Software Development Laboratories (SDI) in 1977. The first version of their database was written in Assembly. They even called it v2 since they assumed nobody would want to use something called v1. SDI’s database was released for sale in 1979, and got off to the races: their first two customers were the Air Force and the CIA, quite a pair.

In 1982, they officially changed the company’s name to match the database: Oracle Systems Corporation. A year later, in ‘83, the team built a version that was the first to use a programming language—C, instead of Assembly—and it supported SQL, which had been developed by IBM in the late 70s as they raced to catch up with Oracle.

Being the first to market, Oracle was able to grow very quickly, even by today’s standards. Their RDBMS was really much faster and more scalable than anything else on the market, and they ramped up to $55M in annual revenue by 1986, when they went public ($ORCL). This was the same year that both Sun Microsystems and Microsoft went public, which, as it would turn out, was quite the foreshadowing for future competition and an acquisition.

Early on, Oracle was really pushing the limits of what was possible with databases; each new release carried genuinely innovative new features. Despite the reputation they may have today, early Oracle releases were, dare I say, groundbreaking. A few examples:

  • Oracle v4 – first database to introduce read consistency
  • Oracle v5 – first database to support client-server mode (taken for granted now)
  • Oracle v8i – first database to support Java and HTTP

In v5.1, Oracle even released support for distributed queries! It was a shadow of what we have in modern stacks (like Trino) but gives a taste of how forward-thinking the team was. And it’s part and parcel of why Oracle Database was and still is so good (more on this later).

This was a while ago, though—the Oracle of today is still driven by that same database, but it’s a very different business. The maturation of relational databases, increased competition, and releases of reliable open source DBs like MySQL and Postgres presented pretty serious challenges for the business, and Oracle responded by digging deeper into the enterprise and investing in acquisitions.

Tough spots in the 90s, a recovery, and fun billboards

After a lot of fast, early growth, things took a tougher turn in the early 90s. As tighter competition made things harder, Oracle’s sales and marketing got more and more aggressive. Salespeople were incentivized to batch sales as much as possible, and encourage customers to buy as much software as possible, all while booking that revenue for the current quarter (poor business practice, but great for bonuses); when the deals didn’t pan out or renew down the road, the accounting department was stuck in the mud. In 1990, Oracle had to lay off 400 people (10% of the workforce) and settle a few class action lawsuits from overstating earnings.

Competition was picking up, too: Oracle had a rival in the 90s and it was Informix, now part of IBM, who sold a competing database. Beyond just the company rivalry, Larry Ellison—who by then had already settled into his outspoken public persona—seemed to have a personal beef with Informix’s CEO Phil White. In additional to a few unsuccessful lawsuits, Informix trolled Oracle hard with some great billboards near their offices, like this one below:

Screenshot of one of Informix's billboards from the 1990s trolling Oracle

Or my personal favorite, “Caution: Dinosaur Crossing:”

Another example of one of Informix's billboards from the 1990s trolling Oracle

In a dramatic end to this saga, White eventually ended up in jail for two months for securities fraud, which you can read more about in The Real Story of Informix Software and Phil White: Lessons in Business and Leadership for the Executive Team. Yes, there is an entire book about this story.

Throughout the rest of the 90s, Oracle solidified itself as one of the default players in the enterprise. Once Microsoft’s SQL Server started picking up steam in the late 90s, it began to give Oracle a run for its money; but after fighting off Informix early in the decade, Oracle was prepared for its next battle. They continued iterating on the original Oracle Database and at one point, according to some estimates, may have owned a >40% market share. Oracle went from $916M of revenue in 1990 to $10B in 2000, good for more than 10x growth over that 10 year period. Perhaps fittingly, the distinctive set of buildings on their Redwood Shores campus ended up being the inspiration for Skynet’s headquarters in Terminator Genisys:

Oracle's Redwood Shores campus served as inspiration for Skynet's headquarters in Terminator Genisys

The Oracle you see before you today

Today, Oracle employs more than 130,000 people worldwide, 65% of whom are outside the U.S., and does $40B in revenue. They took their early lead in relational databases and used it as a wedge into the broader enterprise market, expanding into adjacent software like ERP through strategically timed acquisitions, like that of NetSuite in 2016. They’re sitting on $30B in cash, turned a hefty $13.7B profit last year, and (at the time of writing) are worth $260B.

The primary product they sell is still Oracle Database. After 40+ years of development, by many accounts it’s the most performant database on the planet for high throughput, mission-critical apps. Oracle has gone very deep on optimizing performance—something that’s a lot easier when you own the whole stack for your customers—from supporting tons of index types  (bitmaps of row IDs, partitioned indexes, function based indexes) down to working with Intel on specific silicon imprinting. There are multiple layers of caching, and things are infinitely tunable. Postgres (theoretically) tops out at 64TB per table; Oracle can handle petabytes easily.

Startups, of course, don’t need to store petabytes in every table and get sub-second query results for that data. But Fortune 500 companies do, and that’s Oracle’s clientele. If you’re an airline dealing with hundreds of millions of transactions, or an ecommerce site handling millions of writes per second, or you’re Zoom dealing with hundreds of millions of rooms, betting your business on the reliable option makes sense. Oracle is that single-stop, full stack solution, a stark contrast to individually picking and choosing your cloud, database, sharding layer, and building your own distributed system. These companies may want to move off of Oracle, but there’s just no reasonable alternative yet. And the price they are paying is many, many millions.

Beyond databases, Oracle has expanded to all different types of software. Chances are that if you use it, there’s an Oracle version of it that someone is paying for out there. Oracle sells a proverbial medley of software tools: software for ERP, design, project management for construction, HR software, enterprise search, and many more. This is sort of how enterprise sales works: once you’re in with a customer, you grow account value by offering these “unified platforms” that integrate with each other on the backend. Each individual piece of software is probably well worse than alternatives, but together it can be a compelling package – and Oracle also makes sure the SaaS they sell uses Oracle infrastructure under the hood.

One of the (controversial) drivers of growth for Oracle have been their aggressive sales and marketing tactics. Larry was known to call sales managers when big deals hadn’t yet closed (would not want to be them!), and former salespeople report being under pressure to sell products that they knew didn’t work as advertised. Some leaked stories are illustrative (source):

Tactics include slipping personal notes under the front door of a prospective customer's home and offering to give a CEO a ride to the airport just for an opportunity to talk.
“I even knew of a guy who went to the same church as one customer who was Irish Catholic–and he was a Jew,” one former Oracle manager said.

Partially because of their aggressive practices—and like some other shockingly large companies in this space—Oracle has been a magnet for lawsuits over the years.

One of the most high profile lawsuits in the Oracle saga is Oracle vs. Google. Oracle acquired Sun Microsystems in 2010, and with that came into possession of two very interesting assets: the MySQL development company, and the Java programming language. They of course immediately sued Google for using Java as the basis for Android, a case that’s still ongoing after several appeals. Beyond that, they’ve been involved in quagmires with the DOJ for mispricing, HP for stealing trade secrets and reneging on using certain chips, and are now under investigation for (allegedly) bribing local African governments to boost sales. To some degree this is part and parcel of being a large company, but there is evidence that Oracle’s aggressive tactics play a role here.

So why is Oracle worth $260B? The answer is complex: it’s some combination of an early jump on the RDBMS market, aggressive sales and marketing, smart acquisitions and expansion, and a relentless focus on the enterprise. And, maybe—just maybe—having the fastest database on the market. But Oracle's cloud revenue growth has been stalling, and competition is stronger than ever: there have never been more options for reliable, scalable databases. It remains to be seen how long Oracle’s dominance will last, and whether they’ll be able to adapt to a changing developer landscape.

(Thanks to Josh Rosen for Sun and Oracle history notes)