Db2 for i の歴史と拡張の方向性

Db2 for i拡張の歴史

 Db2 for i はAS/400(IBM i)の誕生以来、システムの最重要機能として機能拡張を続けてきた。その概略を図表1にまとめてみた。

 

 Db2 for i に詳しくないユーザーには、Db2 for i は他のDb2ファミリーやOracle等の機能を後追いで開発しているようなイメージがあるかもしれないが、商用RDBMSとしてはオラクルと並んで業界初であるし、64ビット化も業界初である。

 図表1以外の細かな機能でも、たとえばカラムレベルセキュリティを実装したのはDb2ファミリーで最初であるし、1つのデータベース(DBインスタンス)で保持可能なスキーマ数も常に業界トップクラスであるなど、Db2 for iは昔からなかなかイケてる製品なのである。

 最近のDb2 for iと他のDb2ファミリーの間の機能差異はとても少なくなっており、たとえ差があってもあまり実害のない例が多いように思われるが、筆者が確認した範囲で顕著な違いとしては、Db2 LUWのpureXMLサポート実装がDb2 for iでは遅れている点がある。

 

Db2 for i が他のDb2ファミリーと異なる点

 昨今では機能面で共通化が図られているDb2ファミリーであるが、歴史的経緯や基本となるプラットフォーム(OS)の差異による違いは厳然と存在している。主にDb2 LUWに加え、オラクルDBやMS SQL Serverなどと比較した主要な差異は以下のようになる。

①表スペースの概念が不要である(記憶域管理はOSとDBで共通)

②DBインスタンスの概念がない(1OS1DBインスタンス)

③DB停止・起動という概念がない(OS組み込みDB)

④保管・復元はOSコマンド(OSとDBで共通の保管・復元機能)

⑤操作・管理コマンドもOSコマンド(OSとDBが単一環境)

⑥誕生以来(S/38以来)、基本的にすべてのDBオブジェクトが上位互換性を備える

⑦セキュリティ面で過去ハッキング、クラッキングなどの事例がゼロである

⑧DDSとSQLの2種類のインターフェースを備える(オープン系共通のSQLとIBM iに特化したDDS)

 ①から⑦はすべて、IBM i OSの一部としてDb2 for iが実装されていることに由来する特徴である。そしてこれらの特異性は、他のRDBMSに対するDb2 for i のアドバンテージになりこそすれ、マイナスポイントにならない点は強調すべきと考える。

 ⑦のセキュリティなどは日本国内ではmust、というよりmuch better、と考えられることが多いように感じるが、たとえば昨今、ランサムウェア被害が潜在的に増えていると実感する筆者にとって、「すべてのIAサーバーがランサム被害にあったが、IBM iだけは無傷であった」というような報告を立て続けに聞くと、DBサーバー選定の重要項目になるような気がしてならない。

 一方で、⑧のような運用面での差異については、歴史的にDb2 for iの誕生時点に遡れば、SQLよりもむしろDDSインターフェースの操作性のほうが優れていたと評価するユーザーが多かったことが背景にある。

 しかし昨今ではIT全般でのSQLの汎用的な普及もあり、「SQLで実行できることはSQLで」という流れが、IBM iでも徐々に普及し始めているようだ。

 ほかにも運用面での特異性としては(SQL利用がマイナーなこと、OS・DBレベルでのシステム障害の発生がほぼゼロであったため)、DBジャーナルを取得するユーザー(システム)は少数派であるといった点が挙げられる。しかしさまざまな形でのオープン化や実行環境の共通化が進み、その特異性は薄らいできたと言える。

 

Db2 for i の機能拡張の方向性

 昨今のDb2 for i 拡張の傾向と方向性としては、次のような点が挙げられる。

◎ACS機能拡張による開発/保守生産性向上

ACSの継続的な拡張など

◎SQLを利用した運用面も含めたオープン化推進

Db2 for iサービス、IBM i (SQL)サービスなど

◎RDBMSとしての基本機能の拡張

SQL Weak タイプ、DBファイル比較など

◎IBM i アドバンテージを強化する拡張

Db2 Mirror for i、オブジェクトごとの権限収集など

 Db2 for i の機能拡張概要の全体像は、以下のIBMサポートページから確認できる。

Db2 for i - Technology Updates
https://www.ibm.com/support/pages/node/1116645/

 上記ページではDb2 for iのグループPTF情報、機能カテゴリ別の機能拡張情報ページへのリンクがある。

 IBM Knowledge Centerでは、IBM i サービスはDb2 for iサービスと同列で記載されているが、上記IBMサポートページではDb2 for i機能(拡張)の1ジャンルと位置付けられているようだ。

 IBM iサービスの機能拡張概要は、以下のIBM Supportページがポータルとなっている。ここではIBM iサービスの一覧も確認できる。

IBM Support : IBM i Services (SQL)
https://www.ibm.com/support/pages/node/1119123

 また参考に、IBM Knowledge CenterのIBM i サービスのURLは以下のとおりである。

IBM Knowledge Center
www.ibm.com/support/knowledgecenter/ja/ssw_ibm_i_74/rzajq/rzajqservicessys.htm

 


著者
佐々木 幹雄氏

日本アイ・ビー・エム株式会社
パワーシステムテクニカルセールス
シニアITスペシャリスト

AS/400利用のお客様担当SEから出発し、さまざまなテクニカル職種を担当。現在はPower Systemsはじめインフラ提案・アーキテクチャ設計を主に担当している。

 

 

[i Magazine 2021 Winter(2021年1月)掲載]


 

特集|Db2 for i 最新Tips~多彩な角度からDb2 for iの高度活用にアプローチする
 
PART 1  Db2 for i の歴史と拡張の方向性
PART 2 Db2 for i サービスとIBM i サービスの機能拡張
PART 3 IBM i Access Client Solutions(ACS)のDb2 for i 関連機能
PART 4 Db2 for iの日常運用を見直す
PART 5 Node.js on IBM iのDb2 for i 関連機能
PART 6 Db2 Mirror for iの概要と運用時の考慮点
Column  SQLサンプルの活用法(IFSオブジェクトの管理)