前回の記事において、さまざまなモダナイゼーションのシーンにおける発生問題を紹介した。今回はその問題の本質に迫るため、モダナイゼーションすべき「IBM i(AS/400)」のレガシーを特定する。
一般的なレガシーシステムのイメージ
IBM i などに代表されるミッドレンジコンピューター、いわゆる「オフコン」の経験がない人が増えている。今まさにITを仕事としている中でも同様に増えているが、彼らは“レガシー”なシステムに対してどのようなイメージを持っているのだろうか? 下記に項目を挙げて整理をしてみた。
- 独自CPU(プロセッサー)
- 独自マシン(ハードウェア)
- 独自OS(オペレーティングシステム)
- 独自プロトコル
- 独自言語
- 独自データ・ファイル管理システム
結果として、全ての面において、オープン系アーキテクチャーと対局にあり、さらに古いマシンのまま使い続けているイメージをもっているようである。そのためさまざまなITベンダーから「早くリプレースしないとデジタルトランスフォーメーション(DX)の実現に間に合わない」というメッセージが発せられている状況となっている。
IBM i におけるレガシー再考
では、IBM iに前述の項目を当てはめて、実情を明らかにしていこう。
1.CPU(プロセッサー)
「Power Architecture」をベースにしたプロセッサーの一つである「Power」をハードウェアに実装している。Apple Computer、IBM、Motorolaの提携により、標準化を目指して生み出された「RISC」形式のプロセッサーである。
現在、Power Architectureの普及団体はPower.orgと呼ばれ、40を超える企業や組織が参加している。オープンなアーキテクチャーに基づいたプロセッサーであり、さまざまなマシンで稼働している。
2.マシン(ハードウェア)
ハードウェアは「Power Systems」という名称で呼ばれている。仮想化技術でIBM i OSの他、Linux、AIX(UNIX)の同時稼働が可能であり、IBM i OSの専用マシンではない。Linuxが稼働するため、マシンリプレースを行わずともオープン系のアーキテクチャーに基づいたさまざまなアプリケーションの実装が可能である。
3.OS(オペレーティングシステム)
IBM i OS自体もAIX互換の「PASE」とよばれるシェルを実装しており、オープンソースソフトウェアや各種標準APIに対応している。IBM iの外からのインターフェースにおいては他のオープン系サーバープラットフォームと遜色ないアプリケーション開発が可能となっている。
4.プロトコル
IBM i未経験者においては、いまだにIBM独自のプロトコル「SNA」などが使用されていると思っている認識があるが、TCP/IP、HTTPなどの標準とされるプロトコルに対応しており、オープン系サーバープラットフォームと変わりない。
5.言語
RPG、COBOL、PL/I、C、C++といったメインフレーム、ミッドレンジコンピューターで標準とされていた言語に加えて、Java、PHP、Python、Node.js、Rといった言語での開発が可能で、エンジニアのスキルを幅広くカバーしている。さまざまなシステムの開発シーンにおいて、適材適所でレガシーの有効利用とモダナイゼーションの双方の併用と融合を可能とし、同一プラットフォームで効率よく安全に稼働させる基盤となっている。
6.データ・ファイル管理システム
リレーショナルデータベース管理システム(RDBMS)「DB2 for IBM i(DB2 for i)」は、他のオープン系RDBMSと全く同じ使い方、インプリメンテーションが可能である。Java Database Connectivity (JDBC)、Open Database Connectivity(ODBC)などのAPIで接続でき、クライアント側からSQLを使ってデータ取得、操作が可能であり、さまざまな開発ツールでアプリケーションの開発ができる。