【AWS】Oracle ExadataとAWSのハイブリッド構成|EC2連携・ネットワーク設計まで解説

AWS

今回は、Oracleが提供するデータベース専用マシン「Oracle Exadata」の基本概念と、AWSとのハイブリッド構成について解説します。

「Exadataという名前は聞いたことがあるけれど、何ができるのかよくわからない」という方に向けて、構成要素の説明からAWSとの接続方法・EC2 Webサーバとの連携・ネットワーク設計の考え方まで、実務目線で丁寧に説明します。

Oracle Exadataとは何か

Oracle Exadata(エクサデータ)は、Oracle社が開発・販売しているデータベース専用エンジニアドシステムです。通常のサーバにOracleデータベースをインストールする構成とは異なり、ExadataはOracleの処理に特化した専用ハードウェアと独自ソフトウェア技術を一体化したパッケージ製品です。

一言で表現すると「Oracleデータベースを最大限のパフォーマンスで動かすために最適化されたアプライアンス機器」です。一般的なサーバ構成と比較して、特に以下のような処理で圧倒的なパフォーマンスを発揮します。

  • 大規模なOLTP処理(受注・決済・在庫管理など高頻度トランザクション)
  • 大量データに対する集計・分析処理(DWH/BIシステム)
  • 24時間365日の無停止稼働が求められるミッションクリティカルなシステム

Exadataの主な構成要素

Exadataは複数のコンポーネントが密接に連携して動作します。AWSとのハイブリッド構成を考える上でも、それぞれの役割を理解しておくことが重要です。

1. データベースサーバ(DB Node)

Oracleデータベースソフトウェアが稼働する計算ノードです。CPUとメモリを大量に搭載しており、SQLの解析・実行やトランザクション管理を担当します。複数台構成によるクラスタリング技術(Oracle RAC:Real Application Clusters)が標準的に採用されており、単一障害点のない高可用性を実現します。

2. ストレージサーバ(Storage Cell)

Exadata固有の「Smart Scan」機能を持つ高性能ストレージノードです。通常のシステムでは、データベースサーバがストレージからデータをすべて読み込んだ後にSQL処理を行いますが、ExadataではストレージサーバがSQL処理の一部(フィルタリングや集計)を肩代わりします。これにより、DBサーバとストレージ間のデータ転送量が大幅に削減され、処理速度が劇的に向上します。

3. InfiniBandスイッチ

DBノードとストレージセル間を結ぶ超高速インターコネクトです。通常のEthernetとは異なるInfiniBandという規格を採用しており、最大100Gbps以上の帯域と極めて低いレイテンシを実現しています。Exadataの高I/Oパフォーマンスを陰で支える重要なコンポーネントです。

4. Exadata Smart Flash Cache

ストレージサーバに搭載されたフラッシュストレージ(SSD)による高速キャッシュ機構です。アクセス頻度の高いデータを自動的にキャッシュし、HDDへのI/Oを最小化することで読み取りパフォーマンスを大幅に向上させます。

なぜExadataはオンプレミスに置かれることが多いのか

Exadataは物理的な専用ハードウェア製品であるため、基本的にはオンプレミス(自社データセンター)への設置が前提となります。クラウド移行が加速する現代においても、以下のような理由でExadataがオンプレミスに残るケースは多く見られます。

  • 既存のOracle Licenseの都合(特にプロセッサーライセンスの資産活用)
  • 超低レイテンシが求められるコアトランザクション処理
  • 規制・コンプライアンス上の制約(金融機関・医療機関など)
  • 既存システムが安定稼働しており、移行リスクを避けたい
補足:Oracle Exadata Cloud Service について
Oracleは自社クラウド(Oracle Cloud Infrastructure:OCI)上で動作するExadata Cloud Serviceも提供しています。ただし、これはOCI固有のサービスであり、AWSネイティブのサービスではありません。AWSとExadataを組み合わせる場合は、本記事で解説するオンプレミスExadata + AWSのハイブリッド構成が一般的な選択肢となります。

AWSとExadataのハイブリッド構成とは

ハイブリッド構成とは、オンプレミスのExadataとAWSクラウドを接続し、両者の強みを組み合わせるアーキテクチャです。具体的には、ユーザー向けのWebアプリケーションやAPIサーバをAWSのEC2上で動かし、データの永続化・高度な処理は引き続きExadataが担うという役割分担が一般的です。

AWSとOracle Exadataのハイブリッド構成図:ユーザーからHTTPS→AWS VPC(EC2)→VPN/Direct Connect→オンプレミスExadataへの接続フロー
図1:AWSとOracle Exadataのハイブリッド構成概要

この構成のメリットは以下のとおりです。

  • 既存のExadata資産・Oracleライセンスを活かしつつ、Webフロントのみクラウドに移行できる
  • AWS EC2のオートスケールにより、アクセス集中時も柔軟にWeb層を拡張できる
  • 段階的なクラウド移行が可能で、移行リスクを分散できる
  • AWSのセキュリティサービス(WAF、Shield、CloudFront)をWebフロントに適用できる

EC2 WebサーバとExadataの連携方法

EC2側の接続設定

EC2インスタンス上のWebアプリケーション(Java / Spring Boot、Python / Django、Node.js など)からExadataに接続する場合、一般的にはOracleが提供するJDBCドライバ(Thin ドライバ)またはOCI(Oracle Call Interface)を使用します。

JDBC接続URLの例は以下のとおりです。

# JDBC接続URL(基本形式)
jdbc:oracle:thin:@//exadata-scan-hostname:1521/service_name# Oracle RAC構成でのSCAN(Single Client Access Name)を使用する場合
jdbc:oracle:thin:@//scan-hostname.example.com:1521/ORCL_SERVICE

EC2からExadataへの接続で特に注意すべき設定ポイントは以下のとおりです。

設定項目 内容・推奨値
セキュリティグループ Oracle標準ポート 1521(またはカスタムリスナーポート)を EC2 → Exadata 方向で開放する
コネクションプール HikariCP や Oracle UCP(Universal Connection Pool)を利用し、接続数の上限を制御する
接続タイムアウト ネットワーク遅延を考慮し connectTimeout を 10,000ms 程度に設定する
ソケットタイムアウト 長時間クエリへの対処として socketTimeout も適切に設定する
Dead Connection Detection 接続断の検出に oracle.net.CONNECT_TIMEOUT や SQLNET.EXPIRE_TIME を活用する

パフォーマンス上の注意点

EC2とExadataがネットワークを挟んで通信するため、オンプレミス完結の構成と比較してネットワークレイテンシの影響を受けます。特に1リクエストあたりに多数のSQLを発行するような処理(いわゆるN+1問題)では、遅延が積み重なりパフォーマンス劣化を引き起こす可能性があります。

⚠ N+1問題に注意
例えば100件のレコードに対してループ内でSQLを発行すると、ネットワーク越しに100回のラウンドトリップが発生します。オンプレミス内では数ミリ秒の遅延でも、ネットワーク経由では数十ms〜数百msに拡大することがあります。設計段階からSQLの発行回数を最小化することを強く意識してください。

対策としては以下のアプローチが有効です。

  • SQLをまとめてバッチ処理する設計(IN句の活用、一括INSERT/UPDATE)
  • 読み取り頻度の高いデータは Amazon ElastiCache(Redis)でキャッシュする
  • 集計・変換処理はExadata側のストアドプロシージャに寄せ、アプリとDBの通信回数を削減する
  • 参照系クエリは Amazon RDS for Oracle のリードレプリカへ分散することも検討する

ネットワーク接続の選択肢:光回線VPN vs AWS Direct Connect

AWSとオンプレミスのExadataを接続するネットワーク方式は主に2つあります。それぞれの特徴と向いているケースを比較します。

選択肢1:インターネット(光回線)+ Site-to-Site VPN

インターネット経由でAWSのVPCとオンプレミスをIPsec VPNで接続する方式です。AWS Site-to-Site VPNを使うことで、比較的簡単に暗号化されたトンネルを構築できます。

項目 内容
帯域幅 光回線の契約帯域に依存。VPNオーバーヘッドにより実効帯域は低下する
レイテンシ 数十〜数百ms(インターネット経由のため変動あり)
冗長性 AWS Site-to-Site VPNではデュアルトンネルが標準提供される
コスト 比較的低コスト。VPNゲートウェイの利用料 + データ転送料金
向いているケース 開発・検証環境、通信量が少ない補助システム、PoC(概念実証)段階
⚠ 本番環境への光回線VPN利用は慎重に
インターネット経由のため帯域・レイテンシが保証されません。Exadataのような高I/O環境への接続に使用すると、スループットのボトルネックやレイテンシ変動により、Exadataのパフォーマンスを活かしきれない状況が発生することがあります。

選択肢2:AWS Direct Connect

AWSの専用線サービスである Direct Connect を利用して、データセンターとAWSを物理専用回線で直結する方式です。インターネットを経由しないため、安定した帯域と低レイテンシを実現できます。

項目 内容
帯域幅 1Gbps / 10Gbps / 100Gbps から選択可能。複数接続のLAGボンディングも対応
レイテンシ 低遅延・安定(インターネット非経由。物理距離に依存)
冗長性 複数のDirect Connect接続での冗長化が推奨。VPNをバックアップとして組み合わせることも可能
コスト ポート時間料金 + データ転送料金。VPNより高コストになることが多い
向いているケース 本番環境、大量データ連携、リアルタイム性が求められるシステム

✅ 物理的に光回線を使うべきか?:判断の目安

  • 開発・検証・PoC環境:まず光回線 + VPNで試す。コストを抑えて早期に動作確認できる。
  • 本番環境でExadataのパフォーマンスを活かしたい場合:Direct Connect を強く推奨。帯域保証と低レイテンシにより、Exadataの高速I/O能力を無駄にしない。
  • 冗長性を高めたい場合:Direct Connect をメイン回線とし、VPNをバックアップとして組み合わせる構成が理想的。

構成設計時のその他の考慮事項

DNS解決の設計

EC2からExadataのホスト名を解決するために、AWS Route 53 Resolver(DNS Forwarder)を使ってオンプレミスのDNSサーバへ名前解決をフォワードする設定が必要になるケースがあります。特にOracle RACのSCAN名(Single Client Access Name)を使用する場合は、DNS設定の確認を忘れずに行ってください。

セキュリティ設計

EC2とExadata間の通信はVPNまたはDirect Connect経由で行われるため、通信経路自体は暗号化・閉域化されています。ただし、ExadataのOracleリスナーポート(1521)への通信はアプリケーションからのみ許可するよう、オンプレミス側のファイアウォールルールも合わせて確認・設定してください。

Oracle Licenseへの影響確認

AWS EC2からExadataを利用する構成においても、Oracle Licenseの利用条件(特にプロセッサーライセンスのカウント方法)に影響が生じる場合があります。ライセンス構成の変更が発生しないか、Oracle社または担当のライセンス管理部門への確認を事前に行うことを強くお勧めします。

⚠ Oracleライセンスの確認は必須
Oracle Licenseは非常に複雑なため、EC2からExadataに接続する構成を本番導入する前に、必ずライセンス担当者またはOracle社のライセンスアドバイザーに確認してください。想定外のライセンス費用が発生するリスクがあります。

まとめ

Oracle ExadataとAWSのハイブリッド構成は、オンプレミスの既存資産を活かしながらクラウドの柔軟性・拡張性を享受するための有力なアーキテクチャです。本記事で解説した内容を整理します。

  • Exadataの強み:Smart Scan・InfiniBand・Flash Cacheによる高速なDB処理。専用ハードウェア統合製品のため基本はオンプレミス設置。
  • ハイブリッド構成の基本形:WebフロントはAWS EC2、データ処理はExadataという役割分担が一般的。
  • EC2との連携:JDBC(Thin)またはOCI経由で接続。コネクションプール・タイムアウト設定・N+1問題の回避が重要。
  • ネットワーク選択:開発環境は光回線VPN、本番環境はDirect Connectを推奨。冗長構成ではDirect Connect + VPNの組み合わせが有効。
  • その他の注意点:DNS解決の設計、ファイアウォール設定、Oracleライセンスへの影響確認を忘れずに。

Exadataは大規模・ミッションクリティカルなシステムで特に力を発揮するプラットフォームです。AWSとのハイブリッド構成を活用することで、既存システムを維持しながら段階的なクラウド活用が実現できます。

 

【注意】

このブログは技術に関する知識や経験を共有することを目的としており、情報の正確性に努めていますが、その内容の正確性や完全性を保証するものではありません。ブログの情報を利用する場合は、自己の責任において行動してください。ブログの内容に基づいて行った行動や決定によって生じた損害や被害について、筆者は一切の責任を負いません。

 

記事の内容の一部は、生成AIで作成しています。

AWSDBITナレッジ
この記事の作者
StarTeller

30歳で異業種からITエンジニアへ転身し、10年以上にわたりインフラエンジニアとして様々な現場でシステム構築・運用に携わってきました。
得意分野はLinux/Windowsのサーバー構築・運用で、ネットワークやAWSなども実務で活用しています。このブログでは、これまでの業務で培った経験を基に、日々の業務で遭遇した問題の解決方法や、システム構築の具体的な手順を解説。現場のエンジニアが実際に「困ったとき」に参照できる情報を意識して投稿していこうと思っています。
※サーバ運用費がかかっているので、広告を掲載させて頂いてます。

StarTellerをフォローする
シェアする
StarTellerをフォローする

This website stores cookies on your computer. These cookies are used to provide a more personalized experience and to track your whereabouts around our website in compliance with the European General Data Protection Regulation. If you decide to to opt-out of any future tracking, a cookie will be setup in your browser to remember this choice for one year.

Accept or Deny

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