メニューボタン
IBMi海外記事2025.09.24

IBM i 7.6で提供されるデータベースの機能強化

Alex Woodie 著

IBM i 7.6および7.5 TR6には、新たなデータ変更表参照機能を始めとして、開発者が使用してみるべき数多くの新たなデータベース機能があります。そのような大きな新機能の他にも、IBMは、SELFのアップデート、SQLステートメントの並列実行に対する機能強化、および10個の新たなIBM i サービスなど、様々な機能強化を提供しています。

Db2 for i データベースは、IBM i プラットフォームの心臓部であり、データを格納し、データを処理し、すべてのIBM i アプリケーションへデータを提供しています。MySQL、MariaDB、およびPostgresなど、AIX PASEランタイム環境を通じてこのプラットフォームで利用可能なデータベースは他にもありますが、Db2 for i が依然として、群を抜いて最も使用されているデータベースであり続けていることは、その効率性、有用性、および処理能力の高さの証しと言えるでしょう。そして、言うまでもなく、OS/400およびIBM i のショップが何十年も使用してきたデータベースであることからすると、IBM i スタックの他のツーリングと非常に緊密に統合されていることの証しでもあります。

IBMは、SQL Query EngineのQROハッシュ サイズを32ビット(INTEGER)から64ビット(BIGINT)へ増やしました。この機能(IBM i 7.6でのみ利用可能)は、より大きなSQLプラン キャッシュをより適切にサポートするためだとIBMは述べています。IBMは、QROに依存する他のSQLサービスに対する変更も行っています。詳細については、 IBM Supportページを参照してください。

IBMは、オブジェクトおよびレコード ロックの待機時間メトリクスを追加しました(画像提供:IBM)。

ただじっと待っているというのは、非常にうんざりするものです。しかし、IBM i 7.6で、Db2 for i によって提供される新たな「待機」に関する詳細なデータは、データベース エンジニアに歓迎されることとなるでしょう。今回のリリースで(ようやく今回のリリースで)、エンジニアは、平均オブジェクト ロックおよびレコード ロック待機時間およびカウントや、平均占有待機時間およびカウントといった、待機時間に関するメトリクスにアクセスできるようになりました。IBMによれば、これらの待機メトリクスは、Visual Explain(プラン キャッシュ スナップショット、データベース モニター、およびライブ プラン キャッシュを介して)およびSQLパフォーマンス モニターで利用できるようになるということです。詳細については、 こちらを参照してください。

何事も、正確であることは重要です。IBMは、Db2 for i の稼働状況の説明のためにデータベース ツールで用いられているラベルと単位を更新することによって、正確であることの重要さを理解していることを表現しました。たとえば、「Temporary Storage(一時記憶域)」という列のラベルが、IBM i 7.6では、「Average Temporary Storage (MB)(平均一時記憶域(MB))」と表示されるようにアップグレードされています。また、「Statement Open Time (ms)(ステートメント オープン時間(ミリ秒))」は、「Average Statement Open Time (ms)(平均ステートメント オープン時間(ミリ秒))」という表記にアップグレードされています。もちろん小さな修正ですが、そこには7.6での正確性に対するIBMの関心の高さが表現されています。

新規追加されたIBM i サービス

ここ10年間、IBMは、新たなリリースのたびに十数個のIBM i サービスをこのデータベースに追加してきました。IBM i サービスは、IBM i オブジェクトやシステム情報など、このプラットフォームの様々なコンポーネントにアクセスするのに用いられている従来の手法に対する、SQLベースの代替手法です。現時点でかなりの数のIBM i サービスがあり、QSYS2またはSYSTOOLSに格納されています(ちなみに、IBMはそれらを「SQLサービス」と呼んでいましたが、 2020年10月に呼称を変更しています)。

IBMは、IBM i 7.6で10個の新たなIBM i サービスを提供しています。そのうちの6つはIBM i 7.5 TR6でもサポートされます。両リリースに共通の6つの新たなIBM i サービスは、以下の通りです。

  • AUTHORITY_COLLECTION_IFS:オブジェクトの権限検査に関する情報を返す新たなビューです。
  • VERIFY_NAME():入力された名前がシステム オブジェクト名またはSQL名として正しく構成されているかどうかを検査する新たなスカラー関数です。
  • DELETE_OLD_JOURNAL_RECEIVERS():フィルタリング条件に従って切り離されたジャーナル レシーバーを削除するか、またはオプションとして、それを削除せずにジャーナル レシーバーのプレビューを返す新たなプロシージャーです。
  • IFS_PATH():入力パス文字列の指定された部分を返す新たなスカラー関数です。パス文字列はIFS内のオブジェクトであると想定されます。
  • AUDIT_JOURNAL_PO():監査ジャーナル項目向けの表ヘルパー関数でのPO(プリンター出力)のサポート。監査ジャーナル項目(このケースではPO(プリンター出力))の詳細情報を提供します。
  • AUDIT_JOURNAL_SF():監査ジャーナル項目向けの表ヘルパー関数でのSF(スプール ファイルに対するアクション)のサポート。

また、IBMは、IBM i 7.6でのみ利用できる、4つの新たなIBM i サービスを提供しています。

  • CHANGE_TOTP_KEY():新たな時間ベースのワンタイム パスワード(TOTP)キーの生成、指定されたTOTPキーの保存、または関数を呼び出したユーザーのTOTPキーの削除を行う新たな表関数です。TOTPキーは、IBMがIBM i 7.6で導入した 新たな多要素認証 (MFA)機能で使用されます。
  • CHECK_TOTP():TOTPキーを生成するクライアント アプリケーションと実際にTOTP値を検証するサーバーとの間で、TOTP値が正しく動作しているかどうかを検証する新たなスカラー関数です。CHKTOTP(TOTPチェック)CLコマンドに似ています。
  • KERBEROS_KEYTAB_ENTRIES():Kerberosキー テーブル内の項目を返す新たな表関数です。DSPKRBKTE(キータブ項目の表示)CLコマンドおよびQshell keytabコマンドに似ています。
  • PROGRAM_RESOLVED_IMPORTS():1つ以上のサービス プログラムからのエクスポートによって解決されたILEプログラムまたはサービス プログラムのインポートを返す新たな表関数です。

機能強化されたIBM i サービス

前述の通り、IBMは、よくある日常的なオペレーティング システムの管理タスクに対処するために、何百ものIBM i サービスを追加してきました(今やその総数は1,000を超えているかもしれません)。そして、IBMは、オペレーティング システムの新リリースおよびOSアップデートを利用して、既存のIBM i サービスの機能強化も行っています。

その一環としてIBMは、IBM i 7.6で20個の既存のIBM i サービスの機能強化を行っています。たとえばQSYS2では、活動ジョブの情報を表示および処理するための表関数、セキュリティの属性情報を取得するためのビュー、代替サブシステム(SBS)ルーティングを設定するためのプロシージャーおよび特定のユーザーのSBSルーティングを取得するためのビュー、ディスクのブロック サイズ情報を取得するためのビューおよび表関数、ユーザー プロファイルのMFA設定についての情報を取得するためのビューなどに対してアップデートがなされています。

SYSTOOLSでは、IBMは、いくつかの表関数をアップデートして、IBM i 監査ジャーナルの使用法を効率化しています。具体的には、以下の監査ジャーナル項目タイプ用の表関数の変更またはアップデートを行っています。すなわち、AD(監査変更)、CP(ユーザー プロファイル変更)、DS(保守ツール ユーザーIDおよび属性変更)、GR(汎用レコード)、NA(属性変更)、PW(パスワード)、SM(システム管理変更)、およびVP(ネットワーク パスワード エラー)です。

また、IBMは、IBM Preventive Service Planning(PSP: 予防保守計画) Webサイトにリストされているサービス レベルと、システムにどのようなPTFがインストールされているかを比較するビューのアップデートも行っています。さらに、Powerマシンがいつ電源オフにされる予定になっているかを表示するビューでは、日付フォーマットがアップデートされています。最後に、IBMは、新たな実行管理機能の制限(ジョブ メッセージ待ち行列の最大メッセージ キー: 4,294,967,264)に対するシステム制限のトラッキングを追加しています。

これらの機能強化されたIBM i サービスのいくつかは、IBM i 7.6および7.5 TR6の両方で利用可能ですが、7.6でのみ利用可能なものもあります。詳細については、IBM Supportの 7.6 および for 7.5 TR6のページを参照してください。

Db2サービスおよびSELF

IBMは、SQLエラー ロギング機能(SELF: SQL Error Logging Facility)の強化も行なっています。SELFは、SQLステートメントで発生している特定のエラーまたは警告についての詳細情報を捕捉するためのデータベース メカニズムを提供します。

2025年春のテクノロジー リフレッシュで、IBMは、すべてのジョブのSELFロギングを終了するオプションをデータベース エンジニアに提供します。これは、IBM i 7.4から7.6で利用可能です。また、IBMは、データベース エンジニアがすべてのエラーおよび警告のロギングを要求することを可能にする新機能も追加しています。

IBMは、7.5 TR6および7.6で、新たなDb2 for i サービスを追加し、既存のDb2 for i サービスの1つをアップデートしています。新たなQSYS2.SQLSTATE_INFOテーブルは、IBM i によって使用されるSQLSTATE値に関する情報を返します。また、IBMは、新たなQRO_HASHフィルタリング オプションを追加して、既存のQSYS2.DUMP_PLAN_CACHE()プロシージャーを機能強化しています。

あわせて読みたい記事

PAGE TOP