関係データベース管理システムの比較

関係データベース管理システムの比較



この文書では、主要な関係データベース管理システム(RDBMS)の比較を行います。特に断りがない限り、アドオンや外部プログラムを含まず、各RDBMSの最新の安定バージョンに基づいて比較しています。

一般的な情報



対応オペレーティングシステム



各RDBMSがサポートするオペレーティングシステムを比較します。

注記(1): Java仮想マシンに依存するため、OSの種類ではなくJavaの実行環境が利用可能かどうかが重要です。

基本機能



各RDBMSが提供する基本的な機能の比較を行います。

注記(1): InnoDBストレージエンジンでのみ利用可能です。MyISAMでは利用できません。
注記(2): MySQL 5.5以降でUnicodeの補助文字に対応しました。
注記(3): SQL Server 2005以降でREAD_COMMITTED_SNAPSHOTが利用可能です。
注記(4): DB2 9.7以降でCS with CCが利用可能です。
注記(5): Ingres 10以降ではMVCCをシステム、セッション、テーブル単位で設定可能です。

数量制限



各RDBMSにおけるデータサイズやカラム数などの数量制限を比較します。

注記(3): InnoDBでは、VARBINARY、VARCHAR、BLOB、TEXT列を除き、最大8000バイトです。
注記(4): InnoDBでは、最大1000列までです。
注記(5): PostgreSQLでは、text, bytea, xmlなどを除き、約8000バイトが最大です。
注記(6): SQL Server 2005以降のVARCHAR(MAX)を使用した場合です。
注記(7): H2 Databaseでは、BLOBとCLOBを除いて計算します。
注記(8): Javaの配列型制限が識別子サイズ、行数、列数、文字数などに影響します。

インデックス



B-/B+木インデックス以外のインデックス機能を比較します。

注記(1): freeAdhocUDFライブラリの関数が必要です。
注記(2): SQL Server 2008以降、空間インデックスをサポートしていますが、Bツリーで構築されます。
注記(3): 計算列でのインデックス作成、またはビューでのインデックス作成で代替可能です。

問い合わせ機能



各RDBMSが提供するクエリ機能の比較を行います。内部結合、Union、BLOB/CLOBなど、すべてのデータベースでサポートされている一般的な機能は省略します。

その他の機能



各RDBMSが持つその他の機能について比較します。

注記(1): クエリ最適化のサポートはDeveloper版とEnterprise版のみです。他のエディションでは、マテリアライズドビューへの直接参照やクエリヒントが必要です。

パーティショニング



各RDBMSがサポートするパーティショニング機能を比較します。

セキュリティ



情報セキュリティとアクセス制御に関する機能を比較します。

注記(2): パスワードの長さや複雑さを強制できるかどうかの比較です。
注記(3): セキュリティ情報が公開され、セキュリティアップデートが入手可能かどうかの比較です。リリースノートのみの場合は「部分的」とします。
注記(5): バックアップ、監査、ユーザーやデータベース管理の権限を分離できるかどうかを比較します。
注記(6): Common Criteria認証を取得しているかどうかを比較します。
注記(7): FirebirdではSYSDBAユーザーとDB所有者の概念はありますが、バックアップやセキュリティ管理の権限を分離できません。

脚注



各項目の注記を参照してください。

関連項目



関係データベース管理システム
データベース接続クライアント
en:Comparison of database tools

外部リンク



Comparison of different SQL implementations against SQL standards (2007-06-08) - Oracle, DB2, Microsoft SQL Server, MySQL, PostgreSQLSQL標準との比較。
The SQL92 standard

もう一度検索

【記事の利用について】

タイトルと記事文章は、記事のあるページにリンクを張っていただければ、無料で利用できます。
※画像は、利用できませんのでご注意ください。

【リンクついて】

リンクフリーです。