Ingres was gaining market share dramatically in the 1980s because Ingres was a much better system than Oracle. The two main research prototype relational database systems were System R and Ingres. Ingres implemented a query language called Quel and System-R implemented a query language called SQL. In the mid-1980s IBM went to market with DB2 using the SQL language that was in System R. Since IBM had tremendous throw weight in the marketplace SQL became an instantaneous intergalactic standard. [Despite having a lousy product] Oracle rode the coattails of DB2 expertly and everybody else in the marketplace had to stop and implement SQL. Were you steadfast on going with Quel at the time?
It was a marketing impossibility. We supported both Quel and SQL. We got SQL (after IBM began supporting it) within 12-13 months but during that time, Oracle leaped ahead in sales and became the safe buy. If IBM did not release DB2, Oracle and Ingres would have switched places in the marketplace. DB2 was Larry's lucky break and he expertly took advantage of it. Is SQL really such a crummy query language?
The whole nesting construct is a lousy idea. If you write a nested query the semantics of SQL evaluates that from inside to outside. It's terribly inefficient. But no one ever said that the best technical solution wins. IBM marketing knew SQL was a bad language and decided to release DB2 anyway and push SQL. So SQL will be the COBOL in the year 2020. We're stuck with it, everybody hates it because it's a lousy language and we have IBM to thank for foisting that one on us. Quel was universally better. It was a much cleaner language. What was behind commercializing Ingres?
We had about 50 users of the academic research prototype. Arizona State University proposed putting the Arizona State university student records system on the Ingres database in 1979. But in order to run Ingres, you had to get Unix which was an unsupported operating system that you got from AT&T in North Carolina. The project went down the tubes because there was no COBOL support available for Unix and Arizona State was a COBOL shop. The handwriting on the wall was that if Ingres was to be used by any serious users we had to create a company that would fully support Ingres as a product. What were some other factors that caused Oracle to dominate Ingres?
I think the thing I find most depressing is that Oracle succeeded with an inferior product and what's happening is that similar tactics are generally being applied by Microsoft. The thing that bugs me the most is that customers put up with this. They were writing the checks to Oracle and to Microsoft on future promises and lousy products. So the IT community has sort of fostered this on themselves. Putting aside Larry Ellison, would you say, anything should have been done differently?
We made a couple of significant mistakes. The one I most would like to have back was Informix made a nice run in the early 1990s selling parallel query processing and they were really fast and routinely beat Oracle in performance bakeoffs. Informix horizontally partitioned databases and spread them out over different processors and used multiple processors on a single query very efficiently. That was technology that Ingres started developing in 1987 and then Ingres decided to cancel that initiative, so that's one I'd like to have back. Another initiative that failed was that Ingres put a fair amount of money into writing a distributed database system and there just wasn't much of a market for distributed databases. I would have killed that one and kept alive the parallel query processing effort. Ultimately Informix got squashed by Oracle anyway. It's not clear this would have made a whole lot of difference in the outcome. Can open source ultimately erode Microsoft's dominance?
The hope is that open source software, which is basically gaining market share of the low end, will be able to climb up market over time. Linux needs a fabulous GUI. The Unix system administration is fairly arcane. They're very attractive price wise but they also have less function then the commercial databases, so to climb up market they're going to have to get more sophisticated and it remains to be seen how possible that's going to be in the open source world. MySQL, PostgreSQL, Sleepycat and Ingres are all open source database systems that have a chance and I think compared to Oracle or SQL Server, none of them are full function. Sleepycat, which is blindingly fast, has very low function, all the others are slower then their counterpart commercial systems. Is cost the only thing that is driving the interest in open source DBMSes?
The desire to save money is driving adoption of open source database systems. [I also think] that, in my experience, technical support from all of the commercial vendors is pretty bad so most people I know are not particularly a fan of any of the commercial database systems and are [therefore] very willing to try something else.