This article has been accepted for publication in IEEE Annals of the History of Computing but has not

yet been fully edited. Some content may change prior to final publication.

The Oracle Story: 1984 – 2001 

By Andrew Mendelsohn 7/9/2012

This article tells the story of Oracle from 1984 through 2001, primarily through the author’s experiences during those years. He worked on the software development team that built the Oracle Relational Database Management System (RDBMS). This was an exciting time when Oracle went from being a small niche software company to becoming one of the giants in the software industry. Although many observers believe Oracle’s strong marketing and sales organizations were the primary reasons for its success during this time, the author argues that Oracle’s success was also due to its highly innovative RDBMS product that was strongly differentiated from its competitors. This article traces the development of the Oracle RDBMS through the mainframe, minicomputer, client-server, and Internet computing eras. It calls out the key competitors at each stage and the key product innovations that allowed Oracle to compete so successfully in the market. Finally, this article also provides insight into the workings of the overall Oracle business and culture.

How I Came to Oracle: Right Time, Right Place In 1980, when I interviewed for my first job out of MIT, I narrowed the opportunities down to two companies: Xerox and HP. At the time, Xerox PARC was world-renowned for its computer science research with innovations such as Ethernet, the ALTO personal computer (the forebear of the Apple Mac), and client-server computing. Xerox had just released its first commercial product based on this research called the Xerox Star. I had the opportunity to work on the Xerox Star project in El Segundo, California near LA. The job opportunity at HP was to work on their Horizon RDBMS project in Cupertino, California. HP was known as a great company at the time, but to be honest, my first choice was to work at Xerox. Then I visited both sites. The beautiful setting of HP in the land of Silicon Valley startups was much more to my liking than the suburban LA sprawl of El Segundo, so I went to HP. This turned out to be a great decision. The Xerox Star went nowhere, and I ended up at the epicenter of the RDBMS revolution. In the fall of 1980, I started work at HP as a developer on the Horizon RDBMS Project. The objective of Horizon was to build a commercial RDBMS.I was a fairly rare commodity at the time: a recent graduate who actually knew something about RDBMS. During my senior year at Princeton, I had attended a graduate seminar on relational databases. This was at the time when Professor Jeff Ullman was still at Princeton and was just starting to get interested in databases. During graduate school at MIT, I took a seminar where we studied some of the latest research in database systems, e.g., Jim Gray’s Notes on Database Operating Systems [1] which was based on the IBM System R research. After spending two and half years working on the Horizon project at HP, I was approached by a headhunter to work at a startup company called ESVEL. The HP Horizon project wasn’t making great progress, and it had always been my dream to work for a Silicon Valley startup. So I interviewed at ESVEL and was quickly sold on the company. ESVEL had been started by Kapali Eswaran (the ES) and Ron Revel (the VEL). ESVEL had an all-star relational database development team: Kapali Eswaran from IBM Research was the CEO and there also was Don Slutz from IBM’s System R, Roger Bamford from IBM Development, and Louise Madrid from Britton-Lee. I joined ESVEL in the summer of 1983. Soon after I joined, another RDBMS superstar, Franco Putzolu joined; he was from Tandem and previously had worked on IBM’s System R. When I arrived, ESVEL had been working on its RDBMS for about two years, and had a working data and transaction layer called MARS. They were also well along in building their SQL layer code-named Jupiter. I was put to work for Louise Madrid on Jupiter. I worked on their SQL Pre-compiler and also worked on adding sub-queries to their SQL language implementation. Although I spent less than a year at ESVEL, it was a great experience for me. While ESVEL had by far the most advanced SQL RDBMS engine in existence at the time, I quickly learned that you need more than great product technology to become a successful business. After I arrived at ESVEL, I found out that there was a major morale problem on the team. Unfortunately, Ron Revel enjoyed parachuting as a hobby, and one day his chute didn’t open. Kapali Eswaran had then taken over running the company and had managed to antagonize virtually all the key developers. Also, several of the new hires (including me) found out that our stock options were lower than expected. Franco Putzolu returned to Tandem after just a few months at ESVEL. Next Roger Bamford left for Oracle. At that point, there was essentially a mutiny by most of the remaining key developers. We told the company’s venture capitalist (VC) to either get rid of Kapali or we were all leaving. The VC did nothing, and we all quit. With the core development team gone, ESVEL was never able to advance the product much further, but it did survive a few more years as a business. I had connected Kapali with my old group at HP, and Kapali was able to sell the ESVEL RDBMS to HP. HP abandoned the Horizon project and brought the ESVEL product to market as HP Allbase. Allbase had some moderate success at HP but was eventually discontinued in favor of partnering with Oracle and other RDBMS providers. HP was really just interested in selling their server hardware. Kapali eventually sold ESVEL to Cullinet. Cullinet brought the product to market as CA-DB, but without the core development team, it was never able to compete with Oracle and others in the market. While ESVEL didn’t succeed as a business, its former developers played pivotal roles in many of the successful RDBMS products. I joined Roger Bamford at Oracle. Ken Ng went to Informix and led the development of the Informix SQL product. Page 1 

Digital Object Indentifier 10.1109/MAHC.2012.56 1058-6180/$26.00 2012 IEEE

who had worked on the Horizon project at HP. the newly hired students were put up at a hotel for several weeks. Harvard. Neither had ever worked on an RDBMS before. when I was interviewing for the job at Oracle. Franco Putzolu joined Oracle about 10 years later and was a key architect on the Oracle RDBMS team. Software Publishing had been founded by John Page. While this sounds very familiar today. We were not allowed to hire new college graduates from any other schools. MIT. distributed development. Its PFS File program was a very popular PC data management application. Bob believed in giving his developers lots of responsibility: his trademark slogan was KMABYOYO – “Kiss my ass baby. Don Slutz. I thought this was rather strange. Then one weekend I gave it a try. PLSQL. Derry designed Oracle’s row source query execution runtime and Oracle’s distributed query mechanism. on the other hand. I had to come into the office to do it.1109/MAHC. This included MIT. We also rented a nearby condominium. and in May 1984. Bob Miner had written a lot of the original Oracle product code. and I never turned back. Bob Miner ran development under Larry. Starting later in the 1980’s. He also liked innovating and was responsible for the design of several of Oracle’s core innovations including multi-version read consistency with row-level locking and Oracle’s Real Application Cluster (RAC) technology. if I needed to work at odd hours. I went to work for Bob Miner as a database “kernel” developer. so I could work from home. and college hiring. I was first set to work on the database kernel. Roger Bamford was by far the most experienced RDBMS developer at Oracle. Stanford. He had worked on SQL RDBMS at IBM and had worked at ESVEL from the start in designing and developing their SQL RDBMS.56 1058-6180/$26. was the leader in the emerging RDBMS market. Roger Bamford. Finally. Brown. Wisconsin Madison. Derry had recruited me to work on the Xerox Star project. Four years before. Over the next couple of years. I still remember my first encounter with Larry Ellison. Larry grilled me with technical questions about SQL query optimization. Forrest Howard. Derry Kabcenell. Ned Dana. Oracle started a college recruiting program that formalized this. I narrowed down my job choices to working at either Software Publishing or Oracle. marketer.This article has been accepted for publication in IEEE Annals of the History of Computing but has not yet been fully edited. Roger was a prodigious coder. Larry Ellison always wanted the best and brightest students for the development group. UC Berkeley. worked on team projects. Princeton. so it was easy for the remote developers to spend time at headquarters when necessary. Washington.  <insertpowerpointslide1> Figure1 Oracle in 1984 After ESVEL. Oracle was quite a unique place. Larry was CEO and chief database visionary. U. I chose Oracle. Bob was an extremely nice guy and his development team had great energy. Larry hired Larry Lynn and gave him the charter to recruit the best and brightest students from the top computer science schools in the US. Derry later went on to succeed Bob Miner as the head of Oracle RDBMS development. No one ever came into the office during odd hours. As for me. Some content may change prior to final publication. but was transitioning out of active development when I joined. the “kernel group” was the small team of developers who wrote the core RDBMS engine. I added support for SQL subqueries. the culture was that local developers all came to the office by day but continued working at home by night and on weekends. Illinois Urbana. At Oracle. and Franco Putzolu went to Tandem and were instrumental in delivering Tandem’s Nonstop SQL product. At my first day of work. It consisted of Bob Miner. I would guess that working from home roughly doubled my productivity. I was given a DEC VT100 terminal and a modem. Louise Madrid. jointly did the first design of Oracle’s stored procedure language. I took this with a large grain of salt. Oracle also blazed the trail of having a distributed development organization. Oracle. and the modem just sat on my dining room table for six months. At HP and ESVEL. and did lots of bonding activities.00 2012 IEEE . Among other things. and salesman.2012. A few years later Oracle replaced our modems with leased lines to the Oracle data center that gave us high speed access to development servers similar to what we get today with the internet. and U. At the start of each summer. He also sold me on how valuable my stock options would be someday. given training. Forrest Howard. you’re on your own. CMU. and me. Derry and another developer from Xerox. I’ll point out three areas where Oracle was well ahead of its time: telecommuting. we had a large number of developers working remotely in places like Canada. had joined the Oracle kernel group about a year before. Oracle’s development culture was like nowhere I had been before. The initial database kernel group developers had degrees from Harvard. and Princeton.” I already knew Derry Kabcenell. and elsewhere. but were both brilliant developers. Cal Tech. Especially on the porting side of the development team. and designed and implemented Oracle’s core B-tree index component including support for multi-version read consistency with row-level locking. if you make it fun and easy for them by letting them work at home. Oracle was run by Larry Ellison and Bob Miner. I arrived at Oracle as employee #130. Oracle was one of the first companies to discover the secret that developers will never stop coding. Much of the current leadership of the database team at Page 2   Digital Object Indentifier 10. At Oracle. Figure 1 shows the genealogy of many of the principal RDBMS products.

we continue to follow the same general college hiring philosophy. Oracle today came through this program. we would sell the porting kit to the startup and have them do the port of Oracle to their platform.00 2012 IEEE . Microsoft SQL Server to this day only runs on Windows.7M in 1984. and DB2 for Linux/Unix/Windows. Developers who knew a particular OS could port the Oracle database to their OS platform. While Oracle had a product for the mainframe for many years. application and database programs ran on the mainframe. while remaining largely uninformed about how the Oracle database worked. we always seemed to have one key competitor who was our archrival at a given time. there must have been 30+ different server platforms for which Oracle was available. Oracle had an aggressive sales force featuring the likes of Gary Kennedy and Tom Siebel and had established global sales channels in Europe and Asia. DB2 for MVS. For each new server startup that came along. We also soon created the notion of a porting kit. As we have extended development to other countries like India and China. One was the decision in 1979 to build an IBM SQL-compatible RDBMS. The other was the decision in 1981 to write Oracle version 3 to be portable across multiple operating system (OS) platforms using the C programming language. we had a very swank office building located on Sand Hill Road in Menlo Park. home to the Silicon Valley venture capital community. Wang. DB2 for AS400. to minicomputers. In the 1970’s and early 1980’s. and Cullinet. Elxsi. it felt like a well-established company. These included DEC VAX. So while Oracle was only a fast growing startup with just 100+ employees. Sun. Silicon Graphics. HP PA-RISC. Prime. The minicomputer market was blazed by Digital Equipment Corporation (DEC). Our long-time head of database product management. IBM produced four unique code bases for its SQL RDBMS: SQL/DS for DOS/VSE and VM.56 1058-6180/$26. Oracle Database Generations Over the remainder of this article. Unconventional Innovation – One Portable C Codebase Oracle made two critical decisions early on. Illustra). I still remember my first company meeting that June. Oracle had codified the practices around writing portable database software via our C Portable Coding Standards and our Operating System Dependent (OSD) code layer. C was also a rather obscure language at the time. liked to quip that at this time no one even knew how to spell C. The corollary to this is that Oracle also did not allow competitors to maintain any real or perceived competitive advantages versus Oracle for very long. as we were able to navigate the transitions from mainframes.This article has been accepted for publication in IEEE Annals of the History of Computing but has not yet been fully edited. Ken Jacobs. Oracle’s core market was the minicomputer market. Oracle was doing incredibly well. With mainframe database applications. It was mostly being used at universities and in the still young UNIX operating system. In a number of key areas. Siemens Nixdorf.1109/MAHC. the user interacted via the IBM 3270 block mode alphanumeric terminal and the user interface. ATT. Portability was critically important to Oracle’s growth over the years. INGRES. Oracle started out on the DEC PDP 11 minicomputer. Finally. This was the product source code along with a porting guide that enabled internal and external developers to port the Oracle database to new platforms by simply re-implementing the OSD code layer. and to MPP’s and SMP clusters. ADABAS. we would still have the initial money paid by the startup for the porting kit. On the business side. By the mid-1980’s. The competitive battleground was always characterized by a series of feature wars: how do the products differ so that one is better than the Page 3   Digital Object Indentifier 10. but by the early 1980’s the dominant minicomputer platform for Oracle was the hugely successful DEC VAX running the VMS Operating System. Oracle diverged from conventional wisdom to deliver major value to customers. At the meeting. and more. [Note: Oracle’s fiscal year ends on May 31. rather than risk any investment on our side on the unproven platform. to SMP’s. For example.2012. This was a radical departure from conventional wisdom at the time.0M in 1983 to $12. Sybase. I believe that one of the reasons the Oracle database has been so successful is that it has major competitive differentiators in the core architecture of the product versus other RDBMS products. Almost all the early commercial RDBMS products followed either IBM System R design principles (IBM SQL/DS. IBM SP1. I’ll review the key technology innovations we delivered at Oracle through the Oracle Database 9i release in 2001. Pyramid. Larry Ellison was always very quick to direct development to knock off any competitor advantages. Data General. Minicomputers were much lower in cost than mainframes but supported the same style of computing as mainframes. the result was much higher productivity: I could rapidly write code that ran across any OS without having to know anything about the OS details. To gain this differentiation.INGRES Through the 1990’s. If the platform was successful. During the height of the client-server era alone. IBM DB2) or INGRES design principles (Britton-Lee. The OSD layer was less than 2% of the overall source code. The belief was that high performance database systems required a special code base for each operating system. Key Competitor . Some content may change prior to final publication. Sequent. we would have a good business selling Oracle to their customers and we would later move the port in-house. Microsoft. By conventional wisdom. IBM RS6000. For developers like me who worked above the OSD layer. This makes it easy to sell the product and helps it command premium prices. I mean the RDBMS technology directions blazed by the IBM System R [2] and UC Berkeley INGRES [3] research projects. The mainframe database market was dominated by IBM and third party vendors selling non-RDBMS products like IMS. nCube.] Oracle had the leading share in the rapidly growing RDBMS market. And Oracle was able to make a profitable business out of this. If the platform was unsuccessful. to PC’s. These two projects were quite competitive and foreshadowed some of the future competition in the commercial RDBMS market between the SQL (from System R) and QUEL (from INGRES) query languages. Stratus. the IBM mainframe dominated the data center and was the key platform for running enterprise databases. Oracle development from the very early days consistently bucked conventional wisdom about how to build an RDBMS. Larry announced that our fiscal year revenue had more than doubled from $5.

or more processors. The ANSI committee and its counterpart in ISO put their support behind SQL and in 1986 published the first SQL Standard [5][6]. Professor Stonebraker was able to convince the RDBMS marketplace that this was a must-have feature. INGRES had developed a distributed query technology called INGRES Star. In 1983. later took to referring to SQL as “Intergalactic Dataspeak”. IBM and HP followed. the key competitor was INGRES. They can start with two processors and then expand to 4. Page 4   Digital Object Indentifier 10. Professor DeWitt not only published the benchmark but also published the results of running the benchmark against three databases: University INGRES. query performance. published the Wisconsin benchmark [4]. Professor Michael Stonebraker.1994 By the mid 1980’s. The ANSI committee was determined to define its own relational query language that was presumably going to be better than both QUEL and SQL. a clear difference in philosophy emerged between Oracle and others. David DeWitt. Client-Server Era: 1985 . This was the first of many benchmark wars fought by Oracle. While we weren’t convinced that this was that important at the time. other. Pyramid. and distributed query. supplied us with detailed material on competitor’s products so that we were always well-armed on both the sales and development sides to take on the competitor. It had its own specialized data dictionary. our head of database product management. The final feature war with INGRES was fought over distributed query. It was simply a new product feature. Oracle always took the approach of adding these new features to the core Oracle database.1M by the end of fiscal year 1985 and then more than doubled to $55. Competitors and academics would often claim that you needed a new kind of specialized database for certain types of workloads. SMP’s have the nice property that the systems can be scaled as the business processing requirements grow. but it lost momentum in the marketplace as it took several years to make the transition from QUEL to SQL. So Derry Kabcenell quickly came up with a design for Oracle Star. Derry Kabcenell was building the Oracle “row source” dataflow query processing engine. The minicomputer was now reborn as the database server to run the database. IBM decided to provide the SQL language definition to ANSI (and INGRES did not provide the QUEL definition). By the end of the war. IBM and Oracle said SQL was better. Oracle’s revenue nearly doubled to $23. The next feature war was fought over query performance. as it simplified the lives of their administrators and developers who were able to work with just one database as opposed to many. and aggregate. First startups like Sequent. a young professor at the University of Wisconsin. When I joined Oracle. so Oracle could do sort-merge joins and high performance aggregate functions. The benchmark consisted of a small set of simple queries including select. 16. When I joined Oracle in 1984. My recollection is that we were able to ship even before INGRES Star went production. and Sun entered the market. Ken Jacobs. the user interface and the application code now ran on the PC. Roger Bamford was building Oracle’s first high performance sort engine. On the business side. The initial results favored INGRES and this of course created an uproar at Oracle. The result was always the same: The product was vastly improved. Most customers apparently preferred the Oracle approach. Oracle Star was not a separate product. And in March. Over the years. The query language war was QUEL vs SQL. Oracle version 5. Larry was right about the future value of the Oracle stock after all. INGRES argued that QUEL was superior. Over the years. With client-server database applications. but it was soon challenged by a host of minicomputer makers virtually all running their own variants of the UNIX operating system. These new servers were all Symmetric Multi-processors (SMP’s).This article has been accepted for publication in IEEE Annals of the History of Computing but has not yet been fully edited. and in about three months we shipped Oracle Star. 1986. INGRES eventually accepted defeat and embraced SQL. INGRES Star was actually a separate product from INGRES. Around 1984. Oracle had the industry’s highest performance on the Wisconsin queries driven by these state of the art query processing components. query optimizer. The feature wars were focused around query language. This first benchmark war also produced a lasting change in Oracle’s software license agreement: from then on we required third parties to get our permission before publishing performance results using Oracle.1 with distributed query shipped in 1986 and remained the top RDBMS in the market. Later the established players like ATT.00 2012 IEEE . Teradata and IBM built specialized databases for scale-out. and Oracle. Oracle did a very successful initial public offering with a market cap of $270M. 8. and query execution engine.56 1058-6180/$26. and Oracle won the war. project. INGRES built INGRES Star for distributed query.3M by the end of fiscal year 1986. The DEC VAX minicomputer was dominant during the early years. Some content may change prior to final publication.2012. There was also a US standards (ANSI) effort to define a standard relational database language.1109/MAHC. who led both the UC Berkeley and Commercial INGRES products and was a fervent proponent of QUEL. parallel query. Commercial INGRES. the PC was starting to become a factor in major enterprises and this led to the client-server era of computing. Unconventional Innovation – One RDBMS for all Workloads The distributed query war also was the start of a major philosophical direction at Oracle. all of the Oracle kernel developers quickly built their parts. the database kernel team was fully engaged improving Oracle performance on the benchmark queries. Oracle distributed query has turned out to be a very popular product feature. join. They had multiple processors residing in the server that shared the same memory. INGRES was second in the market and never again seriously challenged Oracle for the top spot. we couldn’t permit INGRES to have a perceived competitive advantage over us.

if two funds transfer transactions happen concurrently involving some of the same accounts. Locking is the most common mechanism used to implement transaction isolation (aka concurrency control) in a database system. Oracle had been experimenting with using what it called multi-version read consistency to support mixed workloads: When a query starts running. Logs periodically got recycled. the changes in the account balances must survive the failure. I designed the B-tree indexes that leveraged Roger’s mechanism to also support multi-version read consistency and row level locking. we needed to undo changes to the blocks from all transactions that updated the block after the snapshot time of the query. Users were forced to circumvent this poor behavior by doing dirty reads (reading data without retaining the locks). Locking follows the protocol that readers must wait for writers and writers must wait for readers and writers. This has the very nice property that read-only queries never need to wait for writers and also writers never need to wait for readers. but in order to implement multi-version read consistency. we decided to retain multi-version read consistency too. Starting as early as Oracle version 4 in 1984. Examples include the ability to recycle the log even in the middle of a long running transaction. So transactions can flow through the system at a much higher rate. a request to obtain a write lock on a row already locked by another transaction must wait for the other transaction to complete. so no read locks need to be obtained on the data. an unconventional logging design was implemented that also provided Oracle with an enduring competitive advantage. Nothing like this had ever been designed before in any academic or commercial setting. the RDBMS would automatically escalate the transaction’s locks to the block or even table level.2012. Row-level locking would support the highest level of concurrency and allow us to scale much better on the new large SMP’s than the other existing RDBMS that all used block-level locking. Later releases extended multi-version read consistency with row-level locking to work across database clusters and distributed systems. All the existing row-level locking mechanisms used lock escalation: if a transaction grabbed too many row locks. Finally. Logging is the mechanism used to ensure database durability in the face of system crashes. The problem was that conventional read/write locking worked very poorly for real-world workloads. none of our competitors have matched this design. There were significant challenges with implementing row-level locking. so we decided to store the undo in special database tables called rollback segments. This was in contrast to the conventional wisdom promoted by everyone else in the RDBMS world that concurrency control should be implemented using read and write locks at the table. Unconventional Innovation – Multi-version Read Consistency At the start of the client-server era. It exhibited poor multi-user concurrency and was prone to deadlocks.1109/MAHC. You must never end up in an inconsistent state where say the $100 was added to Jim’s account balance but Bob’s account balance was not changed. version 6. It gave us the core technology we needed to be the most scalable database for OLTP on the popular SMP servers. The resulting Oracle version 6 multi-version read consistency with row-level locking gave Oracle an enduring competitive advantage. Finally. The transaction must be durable: no matter what failures happen after the completion of the funds transfer. For example. The problem was that escalation could cause deadlocks. This worked fine for conventional locking systems. a write lock is obtained on the row. Some content may change prior to final publication. When a row of data is read by a transaction. flashback query which allows a SQL query to run against a database snapshot of a past point in time. This was ideal for the types of workloads being run on Oracle at the time. or row level. This unconventional storage of the undo in database tables has proven to be the source of a series of differentiating features over the years. we needed the ability to read blocks as of a point in time in the past. Consider a simple funds transfer transaction: $100 is transferred from Jim’s account to Bob’s account. or there is no change at all. they must be isolated: they must behave as though each funds transfer followed the other in some order. Oracle effectively creates a snapshot of the database and runs the query against this snapshot. Figure 2 summarizes the advantages of Oracle multi-version read consistency versus conventional locking. This was by far the most technically challenging work I ever did as a developer at Oracle. Oracle saw the opportunity to move into the higher-end OLTP database market with the next release of the database. Oracle was primarily being used for running reporting workloads or mixed workloads of reporting and lightweight online transaction processing (OLTP). To this day. The conventional design is to mix transaction undo and redo in the log. the redo is replayed to bring the database to the state it was at the time of the crash and then undo is applied to rollback any transactions that were not committed at the time of the crash. This transaction must be atomic (“all or nothing”) and consistent : Either Jim’s account balance is decreased by $100 and Bob’s account balance is increased by $100. There are two forms of locks: read locks and write locks. Queries run with dirty reads potentially returned inconsistent results. we decided the key requirement was row-level locking. Typical OLTP transactions are the booking of a sale at a retail store.56 1058-6180/$26. To recover from a system crash. To do this. and the recording of billing data for a phone call. When a row of data is updated. <insert powerpoint slide 2> Figure2 Unconventional Innovation – Undo Written to Database As part of this effort. Roger Bamford was the key designer and builder of the core technology. a read lock is obtained on the row. block. and our OPS and RAC database cluster technology. The notion of a transaction is a fundamental property of a database and deserves some more explanation. In order to do this.This article has been accepted for publication in IEEE Annals of the History of Computing but has not yet been fully edited. so we decided to implement rowlevel locking with no lock escalation. With the new. fast-start rollback which allows lazy transaction rollback post crash recovery.00 2012 IEEE . flashback table which allows a table to be restored to a point in time in the past. powerful SMP servers coming to market. transferring funds between accounts at a bank. This limited use of memory by the locking system. Page 5   Digital Object Indentifier 10. This snapshot never changes for the life of the query even as the underlying data is updated by other users.

and a number of very good RDB developers went to work on Microsoft SQL Server.1 that knocked off just the Sybase referential integrity feature. Below the surface though. Sybase was second in the market and never again seriously challenged Oracle for the top spot. Finally.0 shipped in 1988. Oracle’s original focus was more on dynamic reporting workloads. problems were starting to develop.2012. The design center for Sybase was to build a database for clientserver computing.This article has been accepted for publication in IEEE Annals of the History of Computing but has not yet been fully edited. It’s only now. Oracle’s revenue roughly doubled every year from 1986 to 1989. This entire episode is described in detail in [7]. however. The next quarter (FY1991 Q1) revenue only grew about 30% and the company announced its first ever loss. It was a large body of complex. and execution of SQL. We implemented declarative ANSI standard referential integrity. What happened over the next year behind the scenes at Oracle was largely not visible to me in development. On the SMP scalability side. since we were completely focused on finishing Oracle version 7. Sybase could invoke a stored procedure that performed a complex database transaction. This was a timely and profitable acquisition for Oracle. Thereafter. Larry replaced much of the senior management team. IBM’s best practice was for customers to “pre-compile” these static SQL statements ahead of time. but that wasn’t good enough for Larry so he cancelled the release. Britton-Lee. The stock price plummeted. and then run the application. Sybase also had a programmable two-phase commit mechanism for distributed transactions. mature product. With internet database applications. This provided Oracle with strong superiority over Sybase in the transaction processing benchmark wars and also in the war for the hearts and minds of ISV’s. DEC decided to sell RDB to Oracle in 1994. Page 6   Digital Object Indentifier 10. but it lacked the innovations Sybase had introduced to minimize the message roundtrips between the client and server. and the database continues to run on a database server. Bob had previously worked on the University INGRES project and at the database machine startup. SAP refused to support Sybase as a database under SAP due to its lack of row-level locking. In one simple phrase. We had originally planned to have an interim release we called Oracle 6. A new CFO was brought in to clean up our balance sheet and our business practices. When version 6. Fortunately for Oracle. By the end of fiscal year 1989 (June. IBM did let customers create SQL dynamically at runtime but this was not recommended for good performance. compilation. Then we leapfrogged Sybase in two major ways in developer productivity. where queries were created dynamically by end-users often via tools. we could do what Sybase developers required procedural coding to accomplish. 1989). new software. However. we could express integrity constraints that required Sybase developers to code 50 or more lines of complex trigger code.00 2012 IEEE . With the library cache only the first user of a query went through the overhead of compiling the query. We proved it by producing world-record TP1 debit-credit benchmark results. Oracle finished fiscal year 1995 with revenue just under $3B with almost 50% growth versus 1994. Internet Computing Era: 1995 .  Key Competitor – Sybase On the competition front. Oracle had by far the most scalable SMP database technology.1109/MAHC. the Internet had changed computing again. So Oracle had no mechanism for compiling SQL and only supported dynamic creation. Sybase only had block level locking compared to the superior and mature Oracle multi-versioning and row-level locking technology. The version 6 rewrite gave Oracle a very strong offering on the server side of client-server computing. Then Oracle hit the wall. Some content may change prior to final publication. for OLTP. so the sales force was having a hard time hitting the annual goal to double revenue. and even at the time of writing this article in 2012. The conventional wisdom especially from the IBM school of RDBMS was to focus on OLTP applications which typically had a small set of static SQL statements. the user interface now runs on a Web Browser. RDB still remains a profitable business for Oracle. The head of North American sales was replaced.0 was a complete rewrite of the “lower half” of the RDBMS. the company’s business stabilized and started to grow again. then compile the application program that referenced them. It had everything Larry wanted and more. We introduced Oracle PL/SQL stored procedures and triggers. Oracle lacked all these features. But during that year Oracle came perilously close to running out of funds and had to secure a loan from Nippon Steel. A large part of Oracle’s revenue was still on the VAX VMS platform at this time. Oracle7 was the top RDBMS in the market. Oracle was facing a strong challenge from a new RDBMS startup.56 1058-6180/$26. Oracle revenue was at $589M. Oracle also implemented some clever technology for SQL execution called the “library cache”. With one SQL COMMIT statement. that SAP is finally starting support for Sybase. Sybase. it was to blow them away. Oracle had originally been designed for mainframe/minicomputer computing. over 20 years later. Sybase shipped its first product release in 1986. Oracle 6. We implemented declarative two phase commit. On the surface. DEC had built a relational database named RDB that was making inroads into Oracle’s market share on the VAX platform. Fiscal year 1990 revenue managed to rise 66% to $971M. all subsequent users of the same query could find the compiled plan for the query and simply re-execute the plan. In 1995. so we started losing momentum in the marketplace. Sybase was founded by Bob Epstein and others.2001 By the mid 1990’s. and it took us a year or two to stabilize this version into a robust. the application runs on an application server. With one network roundtrip. Sybase triggers allowed developers to implement referential integrity on the server side with no additional message roundtrips. it was too expensive for all users to dynamically create and compile SQL. Oracle has taken good care of the RDB installed base over the years. Sybase was beginning to be perceived as the technology leader. Oracle7 shipped in June of 1992. For example. Unconventional Innovation – Just-in-time SQL Compilation with Caching The goal of Oracle version 7 was not to just neutralize Sybase’s competitive differentiators. everything looked great. The only downside of the acquisition was that Oracle did not succeed in retaining all the top technical talent at RDB.

POSTGRES researched how to add complex objects and extensibility to an RDBMS. The middleware and applications development groups also have server meetings with Larry. and Yahoo all were heavy users of Oracle database and remain so to this day. Although Java received all the marketing hype. didn’t come to market until sometime during 1997. Each of these operations was done completely online: no tables or row locks are held.Informix By around 1995. At the time of acquisition. customers were starting to look to RDBMS’s to store more than just the traditional structured datatypes like numbers.1. While Larry is an extremely smart guy and knows database technology extremely well. A DataBlade was a mechanism for extending the Illustra RDBMS with new datatypes. Oracle actually created a subsidiary for building these network computers. index reorganization. who was determined to overtake Oracle. Larry sets the direction and the whole company immediately follows. To make the Internet connection completely clear. price and package new product features. By the early 1990’s. and dates. Among other things. and time-series datatypes. By this time. The OracleInformix competitive battle was fought on two main fronts: a Transaction Processing Council benchmark (TPC-C) war and a feature war around object-relational database technology. this was a good idea but well before its time. Page 7   Digital Object Indentifier 10. However. video. Illustra provided a core set of DataBlades for audio. and was once again led by Professors Michael Stonebraker and Eugene Wong. video. This would have beaten Oracle to market with an object-relational database by at least a year. Professor Stonebraker founded Illustra to commercialize the POSTGRES object-relational technology and came up with a great concept to use to market the Illustra technology: DataBlades. My guess is that Informix got wind of this project and decided to leapfrog Oracle by acquiring Illustra toward the end of 1995.This article has been accepted for publication in IEEE Annals of the History of Computing but has not yet been fully edited. Some content may change prior to final publication. Informix made the claim that they could merge the Illustra codebase into Informix ODS in six months.Server Meeting When I talk to people outside Oracle. text. and by 2000 the idea had fizzled. and spatial information. diskless computers that only ran web browsers that accessed resources on the internet. The format of the meetings is very casual. This is a standing meeting every Tuesday where Larry. Oracle became the database of choice behind many Internet sites.2012. images. and no users are prevented from reading or writing the data. and table/partition reorganization. At about the same time. I imagine this became more difficult and sometime in the mid-90’s. This is the forum where we inform Larry of what we’re building for new product releases and how we propose to name. Oracle Culture . the actual merged product. he said it was henceforth to be known as Oracle 8i. Unfortunately. I’m sure it was easy for Larry to simply meet with Bob Miner and later Derry Kabcenell to make informed decisions. This spurred database research into how to extend RDBMS’s to store these new kinds of data and how to make databases more extensible so even more datatypes could be added in the future. The idea was that third parties would extend the product further with their own DataBlades. Phil White. Developers and product managers who are running particular projects generally present directly to Larry. Fast-start recovery allowed database administrators (dba’s) to control how long database crash recovery would take by bounding rollforward time and allowing the database to start without waiting for rollback to complete. I’ll focus on the object-relational feature war. The leading research project on this topic was UC Berkeley’s POSTGRES project. As e-commerce burst onto the scene. Key Competitor . Larry decided to change the name of the database product. the Internet demanded that databases be online all the time so we added a number of features to eliminate many types of planned and unplanned downtime. Oracle 8i online data reorganization eliminated many forms of downtime around index creation. As the company grew. Oracle’s strong OLTP feature set including the new Oracle 8i features to minimize downtime were the critical features that enabled Oracle to be the leading engine behind e-commerce on the internet. They wanted databases to also store unstructured data like files. In the early 1990’s. The meetings are very effective at both informing Larry and allowing many levels of the development organization to get direct guidance from Larry. This was considered a radical notion at the time.1109/MAHC. the database for the Internet. spatial.0 with object-relational support and built-in datatypes for multimedia. The prices of PC’s plummeted close to the level of the network computers. POSTGRES was the follow-on project to INGRES. audio. The Network Computer vision forecast the death of the PC: PC’s on the desktop would be replaced by much lower cost. The industry analysts loved the concept and objects and extensibility became a must-have feature for all RDBMS products. as a new language for writing database stored procedures and triggers. eBay. spatial. and members of database development meet. Of course today we have many forms of “network computers” such as smart phones and tablet computers accessing internet resources on the cloud. he still needs to be highly informed on what is going on in engineering to make good decisions.56 1058-6180/$26. Larry Ellison had been following the POSTGRES project and Illustra. Larry also became a much more public figure with his promotion of the Network Computer. Amazon. Informix had become the key competitor for Oracle. I was running the SQL layer development team at Oracle. some of Larry’s staff. and files (LOB’s). Informix had a solid SQL RDBMS known as Informix Online Dynamic Server (ODS) and it had an ambitious CEO. in-place index defragmentation. the language of the Internet. one of the things they admire about Oracle is how swiftly it is able to execute on major new business and engineering directions. strings. After a dramatic pause. I still remember him calmly walking into one of our “Server Meetings” and telling us he had cancelled Oracle 8.00 2012 IEEE . In the early days of Oracle. Also. The most highly marketed feature in Oracle 8i was our support for Java. and he had given us the direction to add object-relational technology to the next release of the Oracle Database. Informix Universal Server. we delivered Oracle version 8. and drew headlines in the media. Larry instituted what is known inside Oracle as the “database server meeting”.

All the specialized DW databases mentioned above have a shared nothing architecture. spatial. Also. Customers had mixed success with OPS. availability. most customer workloads are not purely OLTP or purely DW. and IBM DB2 Parallel Edition. and mixed workloads with little write-write conflict across nodes. While the built in unstructured datatypes are very popular. There is no shared memory across the cluster. Larry took the risky approach and went with cache fusion. This technology evolved over the years across the Oracle version 7. Examples of this are Teradata. shared nothing cluster. 8. Roger invented algorithms that enabled packaged OLTP applications like SAP and Oracle e-Business Suite to scale quite well. First. The fact that Oracle has a single RDBMS for all workloads continues to be a major differentiator to this day. object-relational RDBMS greatly simplified application development and administration. virtually all the competing RDBMS went the shared nothing direction includingTeradata.This article has been accepted for publication in IEEE Annals of the History of Computing but has not yet been fully edited. however. In a classic. it’s much lower cost for customers to be able to use the same staff to manage and develop against one database rather than multiple databases. I would estimate that at least 50% of the data in typical databases today is unstructured data. By providing the capability for a single repository to take care of the consistency. Today. Oracle had been dabbling with shared disk database cluster technology for many years. With the delivery of Oracle version 9i in 2001. Fortunately. but didn’t scale well for most OLTP applications.” With cache fusion. we were able to decouple these notions: table partitions are accessible to all nodes. Finally. the entire database goes down.00 2012 IEEE .1109/MAHC. IBM DB2 Parallel Edition and Netezza. all nodes in the cluster share the same storage. all unstructured data was stored in files. We viewed DW support as just a new feature to add to the core RDBMS. Larry was presented with the two alternative approaches: move to shared nothing clustering or go with the new cache fusion-based shared disk clustering approach. Oracle delivered this radical new “shared everything” database cluster technology. all sophisticated database applications include substantial amounts of multimedia. extensibility frameworks and complex data structure concepts were never used much by customers. Object-relational technology had an enduring impact on RDBMS. had the potential to be able to scale packaged applications without complex development work required by the application developers. the notions of nodes and table partitions and parallelism are all tied together: table partitions are local to a node. Oracle had entered the emerging data warehousing (DW) market. there was a raging debate: should we abandon our OPS shared disk cluster technology and implement shared nothing database cluster technology instead. Packaged OLTP applications like SAP R3 and Oracle e-Business Suite (EBS) were simply not designed to scale on shared nothing clusters. If one node fails. Informix was sued by the government for financial irregularities and prior financial results had to be restated for many years. and security of all the data in the application. By the mid 1990’s at Oracle.2 reworked the cluster database functionality into a new feature called Oracle Parallel Server (OPS). they are a combination of both. Unconventional Innovation – Oracle Data Warehousing By 1994. On the other hand. Since we used a shared everything cluster architecture. It had never successfully been done before in a commercial or even a research RDBMS. Informix ceased being a major competitor in the market. The database research community concluded very early on that shared disk cluster database technology could not be made to scale well for OLTP workloads [8]. Conventional wisdom said to go with the tried and true shared nothing approach. They were primarily used by the RDBMS vendors themselves to build the few popular datatypes that most customers wanted. the remaining nodes continue to run. Some content may change prior to final publication. It worked quite well running read-mostly.2012. Larry named it Real Application Clusters (RAC). and LOB data. So. shared nothing database clusters had never been successful in the market for running anything other than DW (Data Warehousing) workloads. An SMP server is a single point of failure: if the server goes down. The intense rivalry between Informix and Oracle soon came to an abrupt end. In a shared disk cluster. The remedy to these problems is to run the database on a cluster of SMP servers. the conventional wisdom is that you need a shared nothing database architecture to run scalable parallel query against very large databases. The cache fusion approach was very risky. A cluster contains one or more SMP server “nodes” which communicate over a private network. Oracle version 6. Second. SMP servers have two major weaknesses: availability and scalability. parallel query workloads for Data Warehouses. and 8i releases. the conventional wisdom is that you need a specialized database for running DW workloads. the cost of implementing high performance shared memory becomes cost prohibitive. I will focus on three key technology areas where we diverged from conventional wisdom. On a shared nothing database cluster. Unconventional Innovation – Shared Everything Clusters SMP servers have been the principal platform for running Oracle databases from the client-server era in the mid-1980’s through today. Before this.56 1058-6180/$26. so only the processors on that node are able to scan the data in the partitions. traditional shared nothing designs only support hash Page 8   Digital Object Indentifier 10. at that time Roger Bamford came up with a breakthrough design that we later called “cache fusion. Oracle version 5 had support for running the database on a VAX VMS cluster. The only contrarians to this view were IBM on the mainframe and Oracle. each node has its own local storage that is not visible to other nodes. After all. shared disk databases with cache fusion. SMP servers also have limited scalability: as the number of processors grows. Informix XPS. so processors on all nodes are able to process data in a partition in parallel. Tandem Non-Stop SQL. A DW is a very large database containing many years of historical transaction detail data and summary data that requires parallel processing for analysis. as it was the first open system database clustering technology that could scale all database workloads from OLTP to DW to SAP and Oracle EBS.

Oracle still had a market cap of around $90B. The original concept of a declarative language that operates against tables that are independent from any specific physical representation has been extremely powerful. But even after the bursting of the Internet bubble. Most enterprise customers ran Oracle on UNIX RISC servers from Sun. I see no end in sight to the possibilities for future innovations in SQL RDBMS.. Windows was emerging as a solid RDBMS platform for departmental use. vol. and eventually combinations of both. October 1981. I’ve spent about thirty years in the RDBMS industry with most of them at Oracle. Sybase. Third. Our partitioning was able to partition data by range. Oracle revenue was at about $10. as is required by the hash partitioning schemes used by shared nothing architectures. On the product side. 24. Even after 40 years. New nodes can be added or dropped without the need for re-partitioning the existing data across the new nodes. You can see this in the number of database startup companies that continue to be created. No less than three SQL RDBMS startup companies were sold in 2010 for over $200M each. Oracle acquired and developed OLAP.. which were also pushed into the database engine. range partitioning enabled the query optimizer to do partition pruning based on range predicates. Operating Systems: An Advanced Course.. Our shared everything approach had some major benefits versus the competitors at the time. P. and predictive analytics technologies. Notes on Database Operating Systems. partitioning of the data across nodes. ROLAP. Wong. we had just shipped Oracle 9i with Real Application Clusters (RAC) in May 2001. D. multi-dimensional analytics (OLAP). J.1109/MAHC.00 2012 IEEE . E. there has been huge innovation. but it had grown just 7% that year. ETL became ELT (extract. RDBMS industry analysts like Gartner and Forrester all agreed Oracle was the overall RDBMS market share and technology leader. Codd published his seminal paper. M. Admittedly. By the end of fiscal year 2001. and was growing very rapidly. SQL RDBMS systems have been able to rapidly evolve to leverage the latest generation of hardware. HP. This change all happened without requiring application developers to change their programs... Between Oracle RAC and many of the other unconventional technologies we delivered over the previous 20 years. followed by IBM.. 393-481. By this time. the conventional wisdom was that Extract/Transform/Load (ETL). pp. This is all quite remarkable. DeWitt. A History and Evaluation of System R. and Microsoft was a distant third. load. [4] Bitton. We supported rolling window partitions: new partitions could be created and loaded online and old partitions could be dropped online with no downtime to the application required. Oracle was left to compete with two remaining heavyweights: IBM DB2 and Microsoft SQL Server. the Internet bubble had burst: Oracle stock hit a historic high of over $45 per share. as all remaining nodes can access all data. F. vol. The architecture is inherently tolerant to the loss of a node. Oracle had a highly differentiated product versus the competition as shown in figure 3. Linux was just emerging as a viable platform. J. SQL RDBMS has been a glaring exception. we were much more successful in pushing the ROLAP and predictive analytics technologies into the database than we were with OLAP. October 1983. and predictive analytics had to be performed on separate data management engines specialized for each of these three areas. Oracle was #1 in the market. This was problematic as it increased DW management complexity and created the potential for security holes due to extra data movement. Benchmarking Database Systems: A Systematic Approach.9B. 1978. pp. Kreps. [3] Stonebraker. hash partitioning only allowed partition pruning based on equality predicates.56 1058-6180/$26.This article has been accepted for publication in IEEE Annals of the History of Computing but has not yet been fully edited. the technology remains vibrant. Over the last forty years since E. As the hardware technologies have evolved from the mainframe to minicomputers to SMP’s to clusters of commodity SMP’s... transform) where the transformations were performed using the database’s parallel SQL engine. 1.. [2] Chamberlin. Turbyfil C.. All had periods of innovation and then became mature. References [1] Gray. ACM Transactions on Database Systems. but by the end of the year it had tumbled to about $15 per share. D. and IBM. September 1976. the plethora of minicomputer vendors from the 1990’s had all either been acquired or gone out of business. Held. 632-646. It’s been a very exciting and rewarding place to spend my career. Page 9   Digital Object Indentifier 10. During Oracle fiscal year 2001. hash. Astrahan. D. From a personal level. Think about other important software technologies like specific programming languages and operating systems. Most of these differentiators were built into the core architecture of the product and so were difficult for competitors to match. M. M.2012. Some content may change prior to final publication.. Springer-Verlag. Finally. Instead we pursued the course of pushing each of these forms of processing into the database engine. and Informix no longer major competitive forces in the market. With Ingres. number 10.number 3. <insert powerpoint slide 3> Figure3 Epilog Relational Database has been an extremely vibrant area of innovation for an extremely long time. Proceedings of the 1983 Very Large Database Conference. N. et al. pp. Communications of the ACM. The Design and Implementation of INGRES. D. G. 189-222.

C. Some content may change prior to final publication. 2003. [6] ISO 9075:1987. Prior to joining Oracle.SQL. Mr. Page 10   Digital Object Indentifier 10..SQL.T.I. Biography Andrew Mendelsohn is senior vice president for Database Server Technologies at Oracle.1.56 1058-6180/$26. Oracle Database Appliance. I.. [5] X3.S.. He began his career at Oracle as a developer on Oracle Database version 5. and Oracle Big Data Appliance. M. Database language . and engineered systems such as Oracle Exadata Database Machine. These include software products such as Oracle Database. Proceedings of the 17th International Conference on Very Large Databases. Recovery and Coherency-Control Protocols for Fast Intersystem Page Transfer and Fine-Granularity Locking in a Shared-disks Transaction Environment.This article has been accepted for publication in IEEE Annals of the History of Computing but has not yet been fully edited. He is responsible for the development and product management of Oracle's family of database products. Mendelsohn holds a B. American National Standard for information systems .00 2012 IEEE . Softwar: An Intimate Portrait of Larry Ellison and Oracle.2012. [7] Symonds.. Oracle TimesTen In-memory Database. Mendelsohn has been at Oracle since May 1984. Oracle Berkeley DB.1109/MAHC. and Oracle NoSQL Database. Narang. Barcelona. September 1991..E. Simon & Schuster.database language . in electrical engineering and computer science from Princeton University and performed graduate work in computer science at M.135-1986. [8] Mohan. he worked at Hewlett-Packard and ESVEL. Mr..

Sign up to vote on this title
UsefulNot useful