OracleとDB2のアーキテクチャの違いとは?

スポンサーリンク
スポンサーリンク


OracleアーキテクチャとDB2アーキテクチャの主な違いは、Oracleアーキテクチャは、Oracle社が開発したOracle RDBMSのデータの収集、保存、整理の方法を定義した標準と機能性を指します。

一方、DB2アーキテクチャは、IBMが開発したDB2 RDBMSのデータの収集、保存、整理の方法を定義する標準と機能性を指す。

OracleはOracle社が開発したRDBMSで、オンライントランザクション処理とデータウェアハウスに使用される。

DB2は、IBM社が開発したRDBMSで、さまざまなOSプラットフォームで動作する。

この記事では、OracleとDB2アーキテクチャの違いを見てみましょう。

スポンサーリンク

オラクルアーキテクチャとは

オラクルアーキテクチャには、物理、メモリコンポーネント、プロセス、論理構造などがあります。

オラクルサーバーは膨大な量のデータを管理することができます。

複数のユーザーが同じデータに同時にアクセスすることができます。

サーバーは、インスタンスとデータベースで構成されています。

さらに、インスタンスはオペレーティングシステムとして動作する実行ファイルです。

Main Difference - Oracle vs DB2 Architecture

Oracleデータベースは、データファイル、制御ファイル、ログファイルなどのファイルを持っています。

また、パラメータファイルやパスワードファイルなどもあります。

 これらのファイルは、システムユーザーがSQLステートメントを処理することを可能にします

また、パフォーマンスを向上させることもできます。

さらに、これらのファイルを使って、障害発生時にデータベースを復旧させることも可能である

さらに、ユーザープロセスとサーバープロセスがあります。

これらは、SQL文の実行を支援します。

このプロセスには、共有サーバー・プロセスと専用サーバー・プロセスの2種類があります。

共有サーバー・プロセスは、複数のユーザー・プロセスに対してメモリーを共有することができます。

共有サーバープロセスは、複数のユーザープロセスに対してメモリーを共有することができ、専用サーバープロセスは、1つのユーザープロセスに対してメモリーを管理することができます。

DB2 アーキテクチャとは

DB2 は IBM 社のリレーショナルデータベースシステムです。

データの保存、分析、検索を効率的に行うことができます。

DB2 アーキテクチャの重要なコンポーネントは以下のとおりです。

クライアント側では、DB2 クライアントライブラリがローカルまたはリ モートアプリケーションとデータベースの接続を支援します。

ローカルクライアントは共有メモリを使って通信し、リモートクライアントは TCP/IP などのプロトコルを使って通信します。

サーバー側では、Engine Dispatchable Units (EDU)と呼ばれるコンポーネントがアクティビティを処理します。

DB2 エージェントは SQL 処理を管理します。

これもEDUです。

クライアントアプリケーションのリクエストを処理するために、複数のサブエージェントを割り当てることが可能です

プーリングアルゴリズムがすべてのエージェントとサブエージェントを管理する。

EDUの作成と破棄を減らすことができます。

データベースサーバーのメモリには、一時的なデータ(ユーザーデータ、カタログデータ、インデックスデータなど)を保存するためのバッファプールが用意されています。

これらは、ディスクからデータにアクセスするよりも、メモリからデータに高速にアクセスするのに役立ちます。

したがって、バッファプールはデータベースの性能を向上させるのに役立ちます。

その他の重要なEDUは、プリフェッチャとページクリーナーです。

これらは、アプリケーションがデータを必要とする前に、ディスクからデータを取得し、バッファプールに送ります

さらに、ページクリーナーはバッファプールからデータをディスクに戻す。

もしプリフェッチャとページクリーナーがなければ、アプリケーションエージェントはバッファプールとディスクストレージの間ですべてのデータの読み書きを行わなければならない。

Oracle と DB2 のアーキテクチャの違い

定義

Oracleアーキテクチャとは、Oracle社が開発したOracle RDBMSのデータの収集、保存、配置、統合の方法を定義したポリシー、標準、機能の集合体です。

これに対して DB2 アーキテクチャは、IBM 社が開発した DB2 RDBMS のデータ収集、保存、配置、統合の方法を定義するポリシー、標準、機能の集合体です。

したがって、これがOracleとDB2アーキテクチャの根本的な違いです。

論理ストレージ構造

Oracle と DB2 のアーキテクチャの大きな違いは、論理ストレージの構造です。

Oracle の論理ストレージはセグメントと Oracle ブロックで構成され、DB2 のストレージはオブジェクトと DB2 ページで構成されます。

物理ストレージの構造

物理ストレージの構造も Oracle と DB2 のアーキテクチャの違いの一つです。

Oracle の物理ストレージはデータファイルを含むのに対し、DB2 の物理ストレージはコンテナを持っています。

圧縮率

また、Oracle はブロックレベルでデータを圧縮しますが、DB2 はテーブル全体またはテーブルパーティションレベルでデータを圧縮します。

圧縮率へのこだわり

また、Oracle がカラム全体を圧縮の対象としているのに対し、DB2 はカラムだけでなく部分的なカラムも圧縮の対象としています。

この点も Oracle と DB2 のアーキテクチャの違いと言えるでしょう。

圧縮されたオブジェクト

また、Oracle はデータと 1 種類のインデックスのみを圧縮します。

しかし、DB2 はデータ、すべてのタイプのインデックス、テンポラリテーブル、XML オブジェクト、および複製されたオブジェクトを圧縮します。

ビットマップインデックス

さらに、Oracle は静的ビットマップインデックス、DB2 は動的ビットマップインデッ クスです。

バッファプール

Oracle がブロックサイズごとにバッファプールを持つのに対し、DB2 は表領域ごとにバッ ファプールを持つ。

結論

Oracle アーキテクチャとは、Oracle 社が開発した Oracle RDBMS のデータ収集、保存、整理の方法を定義した標準と機能性を指す。

一方、DB2アーキテクチャとは、IBM社が開発したDB2 RDBMSのデータの収集、保存、整理の方法を定義する標準と機能のことである

これがOracleアーキテクチャとDB2アーキテクチャの大きな違いです。

タイトルとURLをコピーしました