データベース製品

Oracle Databaseの特徴 おらくるでーたべーすのとくちょう

Oracle DatabaseエンタープライズRACPL/SQL商用RDBMSパーティショニング
Oracle Databaseの特徴について教えて

簡単に言うとこんな感じ!

Oracle Databaseは「世界で最も使われている商用RDB」だよ!銀行・証券・保険・官公庁など「絶対に止められないシステム」の現場で圧倒的シェアを持ってるんだ。高可用性・大規模処理・高度なセキュリティを兼ね備えた”エンタープライズの王様”って感じ!


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/SQLOracle独自の手続き型SQL。ストアドプロシージャ・トリガー等で使用
パーティショニング大容量テーブルを範囲・リスト・ハッシュ等で分割。別途ライセンスが必要な場合も
Oracle ExadataOracle専用のハードウェア+ソフトウェアの超高速DWH/OLTP統合基盤
マルチテナント(CDB/PDB)コンテナDB内に複数のプラガブルDBを収容。12c以降の標準構成
Advanced Securityデータ暗号化・マスキング・監査ログ等のセキュリティ機能群
Oracle Databaseのアーキテクチャ概要 クライアント層 SQL*Plus / SQL Developer JDBC / ODBC / OCI 各言語ドライバ(Python/Java等) Oracle Instance层(SGA + バックグラウンドプロセス) Shared Pool Buffer Cache Redo Log Buffer DBWn / LGWR / PMON RAC(クラスタ構成) 複数ノードで1DBを共有 共有ストレージ(ASM) Data Guard プライマリ→スタンバイ リアルタイム同期・自動切替 マルチテナント(CDB/PDB) コンテナDB内に複数PDB リソース分離・移行容易 物理ストレージ層 データファイル(.dbf) Redo Logファイル 制御ファイル ARCHIVELOGファイル ASM(Automatic Storage Management)で自動管理することが多い

歴史と背景

  • 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 DatabasePostgreSQLMySQL
ライセンス商用(高額)無料(オープンソース)GPL + 商用
高可用性RAC・Data Guard(業界最高水準)Patroni等のOSSで構成InnoDB Cluster・Aurora
スケールアップ数百TBクラスに対応大規模対応だが構成が必要中〜大規模
PL/SQLサポートOracle独自PL/SQL(豊富)PL/pgSQL(互換あり)なし(ストアドは別方言)
クラウド移行Oracle Cloud(OCI)・マネージドRDSAmazon Aurora/RDS等Amazon Aurora/RDS等
主な用途金融・基幹・官公庁基幹〜Web全般Web・中小規模

関連する規格・RFC

規格・RFC番号内容
ISO/IEC 9075 (SQL標準)Oracle Databaseが準拠するSQL標準(独自拡張も多い)
PL/SQL仕様Oracle独自の手続き型SQL言語仕様
Oracle Net ServicesOracleのクライアントサーバープロトコルSQLNet

関連用語