i For Business Gets to Lucky Number 7–Dot 1
April 19, 2010 Timothy Prickett Morgan
It has been a long time since the OS/400 and i platform got a big software release, and considering how much of the changes that come with the just-announced i For Business 7.1 relate to the integrated database, the virtualization hypervisor, related systems management tools, compilers, and Web application serving middleware, you could make a credible argument that there is not a huge difference between the 6.1 release and the 7.1 release. But, the whole point of the IBM midrange systems for more than 40 years is that there is not really an operating system so much as an integrated platform.
This is, of course, something other operating systems are still aspiring to. So when you look at it from this vantage point, then, this 7.1 update is a pretty hefty platform release indeed.
You can get the first pass on what’s inside the new i 7.1 in announcement letter 210-077, which has a lot more detail than IBM was able to give us ahead of the announcement last Tuesday. And there was a lot more software that got tweaked and tuned than just what is known as the operating system. The big changes with i 7.1 are enhancements to the integrated DB2 database management system, tweaks that put flash storage in as a third component of the single-level storage of the System/38 and AS/400 architecture (which was based on a world with main memory and disk drives), and tweaks to the partitioning and iSCSI disk integration for the Power Systems platform when it is running an OS/400-oid operating system. We’ll walk you through the changes IBM made with its PowerHA mirroring software, Rational compilers, and various systems management tools separately.
The Database Speaks XML Without An Accent
If there is one big change with i 7.1, aside from the advent of Open Access for RPG (which is covered elsewhere in this issue of The Four Hundred), it is that the embedded version of DB2 inside the platform now has the same rich XML support that IBM provided with DB2 “Viper” releases for Linux, Unix, and Windows machines back in 2006 and added to the mainframe in 2007.
To say this was a long time coming is not at all unfair, and to put it bluntly, this should have been accomplished in synch with the other two DB2s. But, mainframes drive a lot more money than the IBM proprietary midrange platform does, and so do AIX servers, and IBM wants customers to really go for DB2 instead of Oracle. This is somewhat silly, seeing as though IBM already had over 200,000 AS/400 and iSeries shops when the Viper releases came out on mainframes and Linux, Unix, and Windows giving them native XML capability. It is much harder to get a customer to move databases than just about anything else in the IT universe, and the lack of native XML capabilities in the database and something like Open Access (that gets around the 5250 protocol and the software tax IBM has levied for years but which is arguably a lot less severe than it was) could have been a boon to the iSeries when it was still called that back in 2006. How many customers did that cost the AS/400 base?
But I digress. The point is, with i 7.1, IBM is getting its act together, and I believe in rewarding good behavior.
DB2 for i 7.1 can now store XML data in a record within the database, and can decompose (or shred, as the database lingo goes) that data embodied in the XML documents into relational columns as well as generating XML documents from existing relational data. An XML document can be passed as a parameter to a subroutine and can be used as a variable. No longer do customers have to rely on the bolted-on DB2 and XML Toolkit to graft XML documents to DB2 for i databases, or write their own code to do this. Of course, they may have just spent five years and untold money doing this and will be understandably grumpy. The good news is IBM is not charging extra for the native XML support–you just upgrade to i 7.1 and there ya go.
In a sense, XML is not just a new data type for the database, but also a new kind of native spool file.
Steve Will, who is the chief architect for the i operating system at IBM, says that the OmniFind Text Search Server, which is used for scanning documents, can now search elements of XML documents stored in the database and SQL statements can access OmniFind to search within the database, too. This OmniFind search server is also free inside i 7.1.
Other database enhancements include i 7.1 being able to place frequently accessed database files (so-called “hot” data) automagically on solid state disks if they are available in the machine. SSDs have anywhere from 50 to 100 times the I/O bandwidth of a disk drive and can dramatically improve performance. You can also manually mark a database as in-memory to keep it on flash if you won’t want i 7.1 to do it automatically.
The embedded database in the operating system also has been tweaked so it can support column-level encryption of data. The way IBM has implemented this feature, you don’t have to make any changes to your application to add encryption, but again, in many industries, such as financial services or any application that stores credit card or Social Security numbers, companies have long since had to figure out how to encrypt that data. It is great that this feature is integrated and transparent now, but it should have been there a long time ago.
To IBM’s credit, the company is only exposing the encryption APIs and not providing the encryption engines with any specific algorithms for encrypting or decrypting data, leaving a place for third parties to continue selling products. Linoma Software and Patrick Townsend Security Solutions have already got encryption engines that can plug into the i 7.1 APIs. Others will no doubt offer products, possibly as part of development tools, and ISVs and those doing homegrown apps may decide to do it themselves, as well. Presumably the encryption feature can take advantage of all the floating point and vector processing power in the Power6, Power6+, and Power7 chips as well as making use of outboard cryptographic co-processors where they are available in Power Systems.
Our Four Hundred Gurus will be drilling down into the performance tweaks IBM made with the database in the 7.1 release as soon as we can get our hands on more information and some code. But here was a neat one. IBM has added a feature called adaptive query processing, which takes a look at how a complex query is progressing and if it is moving too slowly, it can build a database index on the fly to replace a long-running table scan. In one test, this AQP feature reduced queries from 30 minutes down to one.
Be My Guest Partition
On the virtualization front, IBM has stepped back a decade to make life a little bit easier for companies using logical partitions and is supporting guest partitions inside logical partitions. The way logical partitions work on Power Systems platforms, each partition has to be assigned its own physical disk I/O and storage when it is spun up. But sometimes, you just want to spin up a quick test partition running i 7.1 that has the same I/O as a current i 6.1 primary partition. No problem. Just like the old OS/400 could act as a host to spin up guest OS/400 partitions, now i 6.1, i 7.1, and a PowerVM Virtual I/O Server partition can spin up guest partitions that access the I/O virtually. (Considering that VIOS virtualizes I/O, that is a lot of layers of virtualization.) With this new/old capability, i 6.1 can host i 6.1 and i 7.1 guests, in addition to AIX 5.2, 5.3, and 6.1 guest partitions and SUSE Linux Enterprise Server and Red Hat Enterprise Linux guest partitions. Ditto for the VIOS partition. And any of the primary i 6.1 or i 7.1 partitions can host the iSCSI adapters and disk drives that link out to System x and BladeCenter X64 servers.
By the way, AIX partitions on Power Systems boxes can’t do this. I guess we all know who created the PowerVM hypervisor after all, eh? And who wrote their kernel just a little bit too close to the iron. . . .
Speaking of the iSCSI storage links, now you don’t need to buy special iSCSI adapters for the Power Systems side of the link to iSCSI SANs. With i 7.1, the target in the iSCSI link has been reimplemented completely in software, as the iSCSI source driver was on the BladeCenter and System x side a while back. The software-only iSCSI links can work on Gigabit Ethernet and 10 Gigabit Ethernet adapters. Microsoft‘s Windows Server 2003 and Windows Server 2008 operating systems can be linked using the new iSCSI target driver, as can VMware‘s ESX Server 4.0 and ESXi 4.0 embedded hypervisors. No word on when Citrix Systems‘ XenServer hypervisor might be supported, or the Linuxes from Red Hat or Novell, with this iSCSI target software driver.
IBM has done a bunch of work to make SSDs more of an integral part of the system instead of an afterthought with i 7.1. The operating system automatically collects I/O performance data off disks and flash and can move hot data to SSDs, as I mention above. DB2 for i, as I also mentioned, is SSD-aware, too, and can compel the operating system to move hot databases to SSDs as the preferred means of boosting performance and eliminating I/O contention when main memory can’t hold the databases. IBM also reminds everyone that it has an SSD Analyzer tool, which can figure out if SSDs might help improve performance on your system (and given the OLTP nature of most AS/400 boxes, it is hard to imagine they would not) and by how much before you shell out the cash for the cache.
In a statement of direction buried at the end of the announcement, IBM had this cryptic message:
“IBM plans to deliver a new capability for IBM i to verify application runtime attributes to help ensure consistent performance and deployment of new workloads.”
I have no idea what this means, but am looking into it.
A few minor items. The System/36 Emulation Environment (S36EE) and the System/38 Emulation Environment (S38EE), which allow old RPG II and RPG III applications and their databases to run on OS/400 and i releases, is still in i 7.1. “Not only do we support it, we have no plans whatsoever to not support it,” says Jarman.
You can upgrade from i5/OS V5R4 or i 6.1 (including the interim i 6.1.1 release from last fall that included support for Power7 iron ahead of their launch as well as some other features) to i 7.1. If you come from V5R4, you have to do the program conversion, just like you had to do to move to i 6.1.
The i 7.1 software will be ready to roll on April 23.