Q. Db2 for i は表スペースが無いと聞きましたが本当ですか。
A. YES.です。
順を追ってご説明します。
こちらの記事にも説明をしております。
Db2ファミリーは大きく3系統あります
IBM Z用、オープン系(LUW : Linux, Unix, Windows)、そしてIBM i 用があります。
大昔は其々の製品で使用できるSQLその他に差異がありましたが、近年ではアプリケーション開発における差異(使えるSQL構文やら、分析用ツールやら)は共通化が進んでいます。
ただ、稼働するプラットフォーム、OSの特性がそれぞれ異なるので、掲題Qのような運用面やアーキテクチャー面では差異が存在します。
Db2 for i のアーキテクチャー上の特徴
下記のように Db2 for i はOS,IBM i マイクロコード層で実装されているのが特異点です。
Db2 for i 以外のRDBMSは基本、OSより上位層のミドルウェアとして動作します。ここが、Qにある、ほかのRDBMS(データベース)では表スペースが必要な理由になってきます。
Db2 for i はIBM i OSの一機能=同一レイヤーで動作しています。
なので、IBM i OSをIPLするとDb2 for iも起動(IPL)済ですし、Db2 for i にログインするユーザーはIBM i OSのユーザーと同一ですしセキュリティ全般もIBM i OSログイン時に共通で管理されます。
本題:Db2 for i のストレージ管理に表スペースは不要で、IBM i OSの管理しているストレージをそのまま利用できます
理由は、Db2 for iがIBM i OSと同一だからです。
表スペースはOSが管理しているストレージをRDBMSに切り出しして、RDBMSで勝手に管理しやがれ!というものです。ので、表スペース内の管理はOSは手出ししないのですが、OSが管理する物理ストレージとの整合性やら変更の反映やらは相互に連携しないといけないわけです。これが面倒(工数・管理が要だったり)だったり、パフォーマンスチューニングが必要だった理になります。
Db2 for i でのストレージ管理はIBM i OSのディスク使用率だけでよい
下記の5250コマンドにある、システムASP使用率% はIBM i OSの管理しているストレージ領域全体の使用率です。Db2 for iのテーブルその他オブジェクトもここに含まれています。