Computer Associates International Inc. recently showered some hard-earned cash on the winners of its Ingres Million Dollar Challenge, the goal of which was to motivate developers to cook up migration toolkits from Oracle, SQL Server, DB2, Sybase and MySQL databases to CAs Ingres r3 open-source database. The resulting winners are now available and downloadable from Sourceforge.net.
The challenge was a slick move. First, in record time—five months—CA was able to put into place tools to easily migrate customers off both proprietary and open-source rival databases, although nobody has yet managed to come up with a complete DB2 migration tool. Also, it was an easy way to seed the creation of an open-source community around Ingres.
Already well on its way to having a good chunk of open-source applications ready to run on Ingres, the company is also in talks with major—think of a large, three-letter-acronym company, here—and midtier enterprise application vendors to get some serious code running on top of the database.
Its a good thing CA got this all going soon after open-sourcing Ingres, because rival enterprise-class open-source databases have been coming out at a fast clip.
To wit: MySQL AB had already taken on the SAP-certified MaxDB some 19 months ago, and EnterpriseDB Corp. rolled out its PostgreSQL-flavored, Oracle-compatible database last week.
Database Editor Lisa Vaas caught up with CAs Tony Gaughan, senior vice president of Development, to talk about the challenge, the missing DB2 link, and what differentiates Ingres from its sister open-source database, PostgreSQL, and the EnterpriseDB version of it thats poised to be a key rival.
Why didnt we see a DB2 migration tool come out of the challenge?
It was a true challenge. It wasnt like we were looking for somebody to do five or six lines of code. It was a full-scale development cycle.
The entries were actually very good. We didnt get winners in all the categories, but I dont think that means in any way this was not successful.
The Indian team that came up with Shift2Ingres, the Oracle migration tool, was the biggest winner, with the Indian team taking home $400,000. Tell me about that tool.
The solution is very complete: It has documentation, test cases and proof points in taking out an existing application to run against Oracle and in demonstrating that it could run on Ingres unchanged at the application level.
What was the application tested on Shift2Ingres, and what did it demonstrate?
They used OpenCms [Open Content Management Solution, an open-source Web site management system].
[OpenCms] uses all the typical Oracle capabilities: PL/SQL, stored procedures and so on. … With Shift2Ingres, they took OpenCms and ran the conversion process and then ran the same application against Ingres, unchanged.
[Not needing to rewrite applications] was part of the judging process. We evaluated that and saw very consistent results.
You paid the most money to get people off of Oracle. Why?
[For example,] EzyMigrate, the solution for SQL Server, probably wouldnt be considered as difficult a problem to solve in many respects.
Why not?
Because of the PL/SQL properties of Oracle: Its proprietary, not an open standard of any sort, and the engine that runs PL/SQL is fairly closely guarded. Applications for Oracle do use PL/SQL, [making it] a fairly difficult process [to migrate them].
Next Page: Why Ingres is the best bet to woo Oracle users.
Why Ingres Is the
Best Bet to Woo Oracle Users”>
There are three aspects to migration: migrating the schema itself, migrating the data and migrating the application.
… Theres nothing in SQL Server thats not provided in Ingres. Theyre very comparable, [because] their origins are fairly similar. Obviously its the same for MySQL. Which is a subset of what other databases provide, anyway.
And DB2?
Absolutely not. And Shift2Ingres actually has provided basic capabilities for DB2 as part of their solution. Its not complete [yet,] so we didnt evaluate it.
Theyre working to extend their solution to support DB2 also, which is obviously great news. The framework they put in place is fairly extensible and should accommodate other database migration.
Between CAs prioritization of Oracle migration and EnterpriseDBs Oracle customization of PostgreSQL, it seems that Oracle is really No. 1 on the open-source hit list.
We clearly see Oracle as being an area we could exploit, that perhaps none of the other open-source databases could. The assumed priorities or prize rewards were based on the complexity of solving the problem—as we perceived it, at least. Oracle was most difficult, which is why we rewarded the biggest prize [for that migration tool].
What makes Ingres capable of exploiting Oracle in ways that other open-source databases cant?
We obviously are very familiar with PostgreSQL: It has the same origins as Ingres. However, PostgreSQL has retained original architecture we put in place for both Ingres and PostgreSQL. There are some issues from a scalability and performance perspective.
[PostgreSQL] uses an architecture that uses what we would call a processor per. For each connection to the database, it spawns an entire process for that connection. Thats a fairly big task that takes up a lot of resources and memory and so on. You can only scale that to a certain level and it becomes difficult to manage beyond that.
The more modern approach is to use a threaded architecture. PostgreSQL and Ingres developed before any real threaded architectures were in place. It was a process-per model [architecture] before.
We re-architected Ingres when threaded architecture came to be. It allows you to scale in a much more linear fashion.
PostgreSQL has an inherent issue. [On top of that, EnterpriseDB CEO] Andy Astor is touting Oracle compatibility, but I dont believe PostgreSQL supports PL/SQL. I dont think EDB does. I know PostgreSQL doesnt. What theyve provided is compatibility at the schema and data-type level.
Which has what kind of negative impact?
Theres a set of standards developed around SQL that are controlled by ANSI and the European board. That defines the syntax of SQL and not how statements should be implemented or interpreted.
What Oracle has done is expand that. The SQL layer, or what ANSI defines as SQL, is expandable, and almost all database companies have put extensions into SQL or added their own data types.
Oracle built on a string-based database platform. Oracle has taken advantage of the fact that they store everything as strings and has built certain functions that allow them to do things fast because they do everything on the string level.
The incompatibilities [are] of the syntax of statements, not in the execution of statements.
What EDB has done is say OK, Oracle has defined a set of data types, and they just mimic those data types and SQL constructs.
Its unlikely to be exactly the same as Oracle, but theyre interpreting things in the same way.
Next Page: CA is lining up applications to run on Ingres.
CA Is Lining Up
Applications to Run on Ingres”>
Wheres the downside?
If its the same syntax and the same statement definition, it would probably run exactly the same. However, if you look at Oracle applications, probably 90 percent of those written against Oracle use PL/SQL.
If you dont have the ability to use PL/SQL, you just cant take those applications and run on another database. Thats why we generated the challenge: The biggest challenge was to develop capabilities to develop PL/SQL applications that run on Ingres. I doubt EDB has that capability today.
Well see that lack of compatibility when applications dont run unchanged. … Ask [Andy Astor] if he can demonstrate OpenCms running on EDB—that would be a good proof point.
What Oracle applications now run on Ingres, besides OpenCms?
Some internal [CA] applications. … Also Compiere, the open ERP application. Were in discussions with building compatibility with Ingres. One way to do that is use Shift2Ingres.
What about commercial applications to run on Ingres? With whom are you talking?
An enterprise company with a three-letter acronym … is the pinnacle. A bunch of other, tier 2 players represent a real potential market as well. The likes of Siebel would be an example. The Aribas, the Siebels, the i2s.
Its Oracle or open source. Where open source is an alternative to using a high-cost product. [If youre talking to a company like SAP AG, you ask,] Do you want to provide an alternative to the high-cost commercial license approach by using open source?
Were seeing demand from our shared customer base with big enterprise players where they want to see some cost reduction, and were talking to parties about how to do that.
Whos considering shifting to Ingres?
The biggest area were seeing interest in is definitely in [migrating from] Oracle. I think a lot of it is because, if you look at the way large organizations deploy, they have core systems typically running on Oracle, and then they have a series of edge applications: periphery applications that are maybe being served with data content from core systems as well as from other applications. Typically a lot of these applications have been developed in Oracle, also.
In terms of industries, its very broad. It ranges from Wall Street-type companies: finance companies that have strategies for moving applications from Sybase to some other platform, all the way to mom-and-pop-type shops looking at using open-source alternatives to take out some costs of their infrastructures. And big conglomerates as well.
Theyre still very much in the evaluation stage. We have a few customers who we are fairly close to writing success stories with. [That will happen] within days to weeks.
Check out eWEEK.coms for the latest database news, reviews and analysis.