「バッチ処理が終わらない!」──そんな悪夢を解消するデータベース基盤としてOracle Exadataが支持される理由(1/2 ページ)
日本企業のシステムで特徴的なのは、各種の業務処理でバッチが多用されている点だ。昨今、このバッチ処理が規定時間内に終わらず、業務に支障を来す企業が増加している。そうした企業の多くが、この問題の根本的な解決を図るために高速なデータベース基盤として導入を進めているのが「Oracle Exadata」である。その理由はなぜか、Oracle Exadataはバッチ処理をどう高速化するのか。日本オラクルの岩崎護氏に聞いた。[パフォーマンス改善][Engineered System]
当初の想定を超えてデータ量が増加し、規定時間内にバッチ処理が終わらず“突き抜け”が発生。業務遅延を引き起こす場合も
日本企業のシステムで多用されてきたバッチ処理。前日の業務結果の集計や翌日の業務で使うデータの準備を日次の夜間バッチ処理で行うといった運用は、業種/業界を問わず現在も広く行われている。今日、このバッチ処理が規定時間内に終わらず、業務に支障を来す企業が増加している。読者の中にも、夜間バッチ処理が翌日の業務開始時間までに終わらないかもしれないと、冷や汗をかく経験をした方が少なくないだろう。
バッチ処理が時間内に終わらなくなった背景には、処理対象となるデータが増大したことがある。データ量がそれほど多くなかった当初は、要件として設定した時間内にバッチ処理が完了していたが、データ量の増大とともに処理時間も増え、最終的に規定時間内で処理が完了しなくなってしまったというわけである。
もちろん、システム構築時には、将来的なデータ量の増加を見越して処理能力に余裕を持たせておくのが一般的だ。しかし、データ量の増加ペースが想定の範囲内であれば問題はないが、業務量の増加やビジネスの拡大などに伴い、システムで扱うデータ量が増えるケースは珍しくない。最近では、消費税率の変更前の駆け込み需要で、注文量が普段の数倍に急増したというケースが記憶に新しい。また、企業合併や部門/グループ企業内のシステム統合などにより、データ量が一気に増加することもある。そのようにしてデータ量が想定を超えて増えると、割り当てた時間内にバッチ処理が完了せず、いわゆる“突き抜け”が発生することになる。
突き抜けが生じると、業務にはさまざまな影響が出る。今日の企業では、昼間にオンライン処理を行い、夜間にバッチ処理を行うといった具合にシステムの稼働時間を分けているケースが多い。このような利用形態で突き抜けが発生した場合、バッチ処理が完了するまでオンライン処理を開始できないといった事態に陥ってしまう。
また、バッチ処理で準備したデータを、後工程の財務会計や管理会計、生産管理、データウェアハウスなどで利用している場合、突き抜けの発生で大規模な業務遅延が起きる可能性もある。製造業などで、日次の生産計画を夜間バッチ処理で作成している場合、翌日の生産業務が開始できないばかりか、サプライヤーなど取引先の業務にも影響が及ぶ恐れもあるのだ。
ハードウェアが速いだけではない。Oracle Exadataがバッチ処理を高速化できる理由
データ量の増加によるバッチ処理の遅延において、ボトルネックとなっていることが多いのはデータベースである。その対策として、ヒント句を追加する、あるいは索引を張るといったチューニングを施してバッチ処理の高速化を図る企業は多いが、そうした対応だけでは、いずれ限界に達する。そこで、この課題を抜本的に解決するソリューションとして国内外の企業で導入が進んでいるのが「Oracle Exadata」だと語るのは、日本オラクルの岩崎護氏(製品戦略事業統括本部 データベースコア製品推進本部 シニアプロダクトラインマネジャー)である。
「特にバッチ処理では膨大なデータを読み書きするため、データベースや、その背後にあるストレージがボトルネックとなりやすいのです。この問題を解消するために、Oracle Exadataはストレージを効率的に使用する『Oracle Automatic Storage Management(ASM)』や、データ処理の一部をストレージにオフロードする『Smart Scan』、データベースとストレージを高速に接続する『InfiniBand』といった独自の機構を搭載しています」(岩崎氏)
岩崎氏が挙げるバッチ処理高速化技術のうち、Oracle ASMはストレージ管理を自動化し、高度なデータストライピングによってストレージへのアクセスを高速化する技術である。
「従来、データベースの設計に際しては、良好なI/O性能を確保するために、複数のストレージ上でデータファイルをどう配置するか、アクセスが集中するテーブルをどこに置くかといったことを十分に検討する必要がありました。しかし、Oracle Exadataであれば、Oracle ASMがデータを自動的に分散して書き込むため、データの配置に起因するボトルネックが発生しないようになっています」(岩崎氏)
また、Smart Scanはデータベースからストレージへと処理をオフロードし、さらに複数のストレージで分散処理を行ってデータ処理の高速化を図る技術である。処理済みのデータは最大40Gb/秒(Oracle Exadata X4-2の場合は最大80Gb/秒)の通信能力を誇るInfiniBandを介してサーバー/ストレージ間で高速に内部転送される。このSmart ScanとInfiniBandにより、ストレージのディスクI/Oを最小限に抑えつつ、サーバー側のCPU負荷を軽減し、データベースシステム全体の性能を高めているのだ。
InfiniBandの他、高速なフラッシュメモリを搭載するなど、ハードウェア面でもデータ処理の高速化を実現する技術を多数盛り込んでいる点もOracle Exadataの特徴である。
提供:日本オラクル株式会社
アイティメディア営業企画/制作:@IT 編集部/掲載内容有効期限:2014年7月15日
Copyright © ITmedia, Inc. All Rights Reserved.