 |
≫ |
|
|
 |
| |
Oracleデータベースにおけるパフォーマンス課題の解決に向けて、DBシステムの状況確認、パフォーマンス診断から改善案の策定・提案、構築までを提供するプロフェッショナルサービスです。「クイック診断」と「DBインフラ構築」の2つのサービスで構成され、短期間かつ低コストでOracleデータベースの大幅なパフォーマンス向上を実現します。 |
 |
 |
|
 |
|
 |
システム性能のボトルネックには様々な原因があります。ハードウェアのレイヤーに限っても、
- CPUリソース不足
- ストレージIO性能不足による待機
- ネットワーク帯域の不足
などがあげられます。
CPU性能が昨今著しく向上していることもあり、特にデータベースシステムにおいては、ストレージIO性能を改善させることにより、システム全体のパフォーマンスを向上することができます。また、データ量の増大に比例してネットワークを通るデータ量も増大しているため、パフォーマンス向上の観点からデータ通信性能の改善も無視できなくなっています。
本ソリューションでは、ストレージIO高速化のためにIOアクセラレータを使用しています。また、データ通信高速化のためにInfiniBandという技術を採用しています。 |
 |
 |
 |
 |
図 1 本ソリューションで使用する高速化のための技術 |
 |
 |
|
 |
 |
IOアクセラレータ
本ソリューションのストレージデバイスとして採用している IOアクセラレータ は、直接PCIバスに接続するNANDフラッシュメモリ型SSD(Solid State Disk)です。ハードディスクのような回転待ち時間がないことに加え、直接PCIバスに接続するため、SAS/FC/SATAインターフェイスを使用した一般的なSSDと比較しても、IO性能が非常に高いという特徴があります。このIOアクセラレータを使用することで、アプリケーションのパフォーマンスを向上させることができます。
- 記憶方式
IOアクセラレータの記憶方式には、シングルレベルセル(SLC)とマルチレベルセル(MLC)があります。SLCはセル当たり1ビットを保存し、MLCはセル当たり2ビットを使用します。MLCは、各デバイスにSLCよりも多くのデータを保存できますが、SLCよりも耐久性が低いという特性があります。
- 帯域幅
IOアクセラレータは非常に優れたI/O帯域幅を持っています。SLCモデルがREAD最大750MB/秒、WRITE最大670MB/秒、MLCモデルがREAD最大700MB/秒、WRITE最大490MB/秒と、一般的なSSDの数倍のI/O帯域幅を実現しています。
さらに、2つのIOアクセラレータモジュールを並列に配置したIOアクセラレータDuoでは、IOアクセラレータの2倍近いI/O帯域幅を実現しています。

図 2 IOアクセラレータのI/O帯域幅(論理帯域)
※帯域幅は設計上の上限値であり実際のデータ転送速度とは異なります。
- レイテンシ
IOアクセラレータでは、ハードディスクのシークタイムに相当する時間がかからないため、データアクセスレイテンシは非常に低くなっています。4KブロックのREADの場合、SLCモデルではわずか50マイクロ秒であり、MLCモデルでも80マイクロ秒となっています。
|
 |
 |
|
 |
 |
本ソリューションでは下記2点の冗長化ポイントにより、単一障害点を克服しています。
- データベースサーバーの冗長化
データベースサーバーが一台停止しても、データベースは稼働し続けます。
- ストレージパスの冗長化
データベースサーバーからストレージサーバーまで複数の経路を用意しています。これにより、単一障害で通信が遮断されることはありません。
|
 |
 |
 |
 |
図 4 HA構成全体図 |
 |
 |
データベースサーバーの冗長化は、データベースサーバーを複数台使用し、Oracle RACなどのクラスタ機能により冗長化を実現します。 |
 |
 |
ストレージパスの冗長化は、図 5のようにInfiniBandスイッチの2重化とマルチパスソフトウェアで実現します。データベースサーバーとストレージサーバーには、それぞれDual-Port InfiniBand HCA Cardが1枚装着されており、経路の冗長化を可能にしています。データベースサーバーとストレージサーバーが冗長化されていますので、システム全体としては、HCA Card障害は単一障害点とはなりません。弊社検証により、Red Hat Enterprise LinuxではマルチパスソフトウェアとしてDevice Mapper Multipathの使用を推奨します。
RHELの場合、データベースサーバーからはストレージサーバーの物理ディスクを、SCSIデバイス(/dev/sd*)として認識します。図5の経路@と経路Aのように、経路が2つある場合、/dev/sda、 /dev/sdb のように、1つの物理ディスクを2つのSCSIデバイスとして認識します。Device Mapper Multipathを用いることで、複数のSCSIデバイスを束ね、1つのマルチパスデバイス(/dev/mapper/mpath*)として使用できます。例えば、/dev/sdaと/dev/sdbが束ねられ、/dev/mapper/mpath0として使用できます。マルチパスデバイスに対して、fdiskコマンドでパーティションの作成や、mkfsコマンドでファイルシステムの作成を行ないます。 |
 |
 |
 |
 |
図 5 ストレージパスの冗長化イメージ図 |
 |
|