Today IBM announced new features, products, and solution packages in its DB2 9.7 (Cobra ) release. And a new version of InfoSphere, including Informix and z versions. I’ll post about those later, but here I’d like to just highlight a buried item that got little play: DB2 can now run PL/SQL.
In the engine.
Not transcoded by hand, not making datatype changes or worrying about what happens when you [geek alert] CONCAT a NULL, or whatever else about the differences drives you crazy. (Feel free to tell me about the differences that bug you – love those comments!) Last year, IBM licensed some software from EnterpriseDB, a small but growing player whose Postgres Plus has carved out a niche as an Oracle-compatible product. They’ve been able to get a little traction, but not a huge amount so far. IBM also invested in EnterpriseDB, but that was a separate transaction at a different time – the party line is that they were unrelated. I’ll post separately a bit more about them too.
Why is this important? Simple. Migration of apps running on Oracle to DB2. Less lock-in, at least theoretically. I talked to early support IBM customer Jean-Marc Blaise, an architect and practitioner at Venedim [note: site is in French], a French firm that does (among other things) Oracle migration projects for its clients. He says he has a steady stream of such work, and that “we are getting 98% coverage – it runs the code without problems. Cuts porting time to a tiny fraction of what it used to be.” He’s worked through several code drops and watched the number of fails go down steadily – stored procedures, left joins, NULLs, other incompatibilities simply work. He sets up an instance with the compatibility flag on, so he can rely on the Oracle behavior where he needs it, and leaves other instances alone.
Will many people bother to port? Haven’t we seen this game before? IBM has not done many migration programs. They’ve tried, and so have others, before, and none were all that successful. Curt Monash asks the question, and he’s absolutely right to, here.
I think there is a bit more traction this time. Here are a few points I think IBM will make, which might drive some business.
- Price. Let’s face it – IBM has been competing on being cheaper to acquire, easier and cheaper to manage for a while. They step those features up with this release. And now that Oracle is about to add a lot of low-margin revenue from Sun to its portfolio, do you think Oracle will be easier on DBMS pricing? Or harder?
- Ease of consolidation. All DBMS vendors are primary in some shops and secondary in others. Some are primary on DB2 and have a little Oracle here and there. Enabling consolidation onto a cheaper, easier to manage platform you already know is a useful play when budgets are tight – especially when doing so is not such a big project as it used to be.
- Other software plays. Some customers are using IBM software for data integration, archiving and management, warehousing, and other surrounding non-DBMS information management needs. Why not extend their use while you consolidate some of the easier apps?
- Leverage of developer skills. IBM Data Studio will support development in PL/SQL; binary data type support is being added. Keep those folks gainfully employed and broaden their reach.
- Sales heads count. But they have a lot of feet on a lot of streets, and Oracle is the most widely installed DBMS. IBM does not need a very big percentage of wins to make a dent.
- Just because. In the process, IBM will empower joint customers to negotiate more aggressively with Oracle, threatening their margin even more. What’s not to like, if you’re in Armonk? IBM plays the openness card – and it doesn’t hurt that a lot of MySQL fans are worried (although it’s not clear they need to be. Yet. But that’s another post.)
Jean-Marc is enthusiastic about IBM’s XML compression and its workload management, both also enhanced in this release, as reasons for migration. Should you be? Of course. It sounds great. But caveat emptor. This is new. Although the software IBM licensed has been out there with some success, this is new. It’s been integrated into a very large code line, and some issue are sure to crop up. But if you have any reason to try it out, set up an instance and go to town. It’s another weapon in your arsenal. And please – let me know how it works.