Oracle Databaseの特徴 おらくるでーたべーすのとくちょう
Oracle DatabaseエンタープライズRACPL/SQL商用RDBMSパーティショニング
Oracle Databaseの特徴について教えて
Oracle Databaseとは
Oracle Databaseとは、米Oracle Corporation(ラリー・エリソンが1977年に創業)が開発・販売する商用リレーショナルデータベース管理システム(RDBMS)です。1979年に世界初の商用SQL RDBMSとしてリリースされ、以来40年以上にわたってエンタープライズ向けRDBMSの最大手であり続けています。
Oracle Databaseの最大の特徴は高可用性・高スケーラビリティ・高セキュリティの三拍子が揃っていることです。Real Application Clusters(RAC)により複数サーバーで1つのDBを共有して動作させる構成が可能で、ノード障害時の自動フェイルオーバーにより「止まらないシステム」を実現します。またData Guardによる遠隔スタンバイ構成やFlashbackによるポイントインタイムリカバリも標準機能として充実しています。
ストアドプロシージャ言語のPL/SQL(Procedural Language/SQL)はOracleの代名詞的存在で、ビジネスロジックをDB側に実装する開発スタイルが金融・基幹系システムで広く定着しています。ただしライセンスコストが高いため、近年はPostgreSQLやMySQL(Amazon Aurora等)への移行(「Oracle離れ」)も進んでいます。
Oracle Databaseの主な特徴
| 特徴 | 説明 |
|---|---|
| RAC(Real Application Clusters) | 複数ノードで1つのDBを共有。ノード追加でスケールアウト可能 |
| Data Guard | プライマリ→スタンバイへのリアルタイムデータ保護・自動フェイルオーバー |
| Flashback | 誤操作後のデータを過去の特定時点に巻き戻す機能 |
| PL/SQL | Oracle独自の手続き型SQL。ストアドプロシージャ・トリガー等で使用 |
| パーティショニング | 大容量テーブルを範囲・リスト・ハッシュ等で分割。別途ライセンスが必要な場合も |
| Oracle Exadata | Oracle専用のハードウェア+ソフトウェアの超高速DWH/OLTP統合基盤 |
| マルチテナント(CDB/PDB) | コンテナDB内に複数のプラガブルDBを収容。12c以降の標準構成 |
| Advanced Security | データ暗号化・マスキング・監査ログ等のセキュリティ機能群 |
歴史と背景
- 1977年:Larry Ellison・Bob Miner・Ed Oatesが「Software Development Laboratories」を創業
- 1979年:Oracle V2として世界初の商用SQLデータベースをリリース(IBM研究論文を参考に開発)
- 1983年:Oracle V3。C言語で再実装しマルチプラットフォーム対応
- 1992年:Oracle 7。ストアドプロシージャ・トリガー・宣言的整合性制約を追加
- 1997年:Oracle 8。オブジェクトリレーショナル機能・パーティショニング追加
- 2001年:Oracle 9i。Real Application Clusters(RAC)の前身「Oracle Parallel Server」を進化
- 2003年:Oracle 10g(g=grid)。グリッドコンピューティング・ASM追加
- 2013年:Oracle 12c(c=cloud)。マルチテナント(CDB/PDB)アーキテクチャ導入
- 2018年:Oracle 18c/19c。年次リリースモデルへ移行。19cが長期サポート版(LTS)として広く普及
- 現在:Oracle 21c/23c。JSON Relational Duality・JavaScriptストアドプロシージャ等を追加
Oracle vs PostgreSQL vs MySQL(主な比較)
| 観点 | Oracle Database | PostgreSQL | MySQL |
|---|---|---|---|
| ライセンス | 商用(高額) | 無料(オープンソース) | GPL + 商用 |
| 高可用性 | RAC・Data Guard(業界最高水準) | Patroni等のOSSで構成 | InnoDB Cluster・Aurora |
| スケールアップ | 数百TBクラスに対応 | 大規模対応だが構成が必要 | 中〜大規模 |
| PL/SQLサポート | Oracle独自PL/SQL(豊富) | PL/pgSQL(互換あり) | なし(ストアドは別方言) |
| クラウド移行 | Oracle Cloud(OCI)・マネージドRDS | Amazon Aurora/RDS等 | Amazon Aurora/RDS等 |
| 主な用途 | 金融・基幹・官公庁 | 基幹〜Web全般 | Web・中小規模 |
関連する規格・RFC
| 規格・RFC番号 | 内容 |
|---|---|
| ISO/IEC 9075 (SQL標準) | Oracle Databaseが準拠するSQL標準(独自拡張も多い) |
| PL/SQL仕様 | Oracle独自の手続き型SQL言語仕様 |
| Oracle Net Services | OracleのクライアントサーバープロトコルSQLNet |
関連用語
- リレーショナルDB — Oracle Databaseが属するDB分類
- MySQLの特徴 — Oracle傘下のOSSRDB。Oracle移行先としても検討される
- PostgreSQLの特徴 — Oracle代替として注目される高機能OSSのRDB
- ACID特性 — Oracle Databaseが厳密に保証するトランザクション特性
- レプリケーション — Data Guardによる遠隔スタンバイ構成
- パーティショニング — Oracle の大規模テーブル分割機能
- ストアドプロシージャ — OracleのPL/SQLで実装するDB内ビジネスロジック
- バックアップとリストア — Oracle RMANによる物理バックアップ・リストア