PR:Oracle Exadataの性能を徹底的に絞り出す、NTTデータ先端技術が事前検証を開始
オラクルによるデータベース製品の最高峰に位置するのが「Oracle Exadata Database Machine」。
従来のOracleデータベースソフトウェアを搭載し、ソフトウェアの互換性は100%でありながら、徹底的に最適化されたハードウェアとの組み合わせでOLTPとデータウェアハウスのどちらでも超高性能を発揮してくれるマシンです。
既存のデータベースをExadataに移行すれば大幅に性能が向上することは分かっていますが、そのままではExadataの性能を十分に引き出せない処理もあると、NTTデータ先端技術株式会社 オラクル事業部 技術担当部長の今野尚昭氏。
「既存のデータベースをExadataに載せ換えるだけで、ほとんどのデータベース処理性能は向上します。しかし、Exadataの能力をユーザーが最大限に享受するには事前の検証が欠かせません。私たちが開設した『Oracle Engineered Systemsラボ』は、それを行うためのインフラとノウハウを備えています」(今野氏)
同社が持つ、データベースの最高性能を引き出すためのインフラとノウハウとはどういうものなのか。今野氏、吉田氏、浅田氏の3人にお聞きしました。
そのまま移行しただけではExadataの性能を十分に引き出せない処理もある?
──── 既存のデータベースの処理すべてが、Exadataへ移行しただけで必ず速くなる、というわけではないのですね。
吉田 もちろんExadataは高性能なデータベースマシンです。しかし処理内容によってはExadataに最適化することで、より高い性能を発揮できる例もあります。例えば、それまでItanium 2プロセッサを搭載したサーバで動作していたデータベースをExadataに載せ替えても、それほど性能向上が見られない処理がありました。これは、Itanium 2のCPUクロックが高く、それに依存した処理が走っていたためです。これをExadataに最適化したところ、最適化前は27分かかっていた処理が1分30秒になりました。
──── 最適化すると劇的に速くなっています。
吉田 また、既存のサーバで40分かかる処理をそのままExadataで実行したところ、その処理が移行前の古いバージョンのデータベースに最適化された処理であったため、逆に遅くなってしまうケースもありました。これも当社で最適なチューニングを行ったところ、5分程度にまで高速化されました。
──── Exadataは決して安いマシンではないですから、それを最適化して使いこなせなければ非常にもったいない話ですね。
今野 その通りです。Exadataへの投資はお客様にとって小さくありません。Exadataを導入してどのくらい性能向上が実現できるのか、どのシステム構成が最適なのか、そのためにどんなチューニングが必要なのか、導入をご検討いただいているお客様には事前検証が不可欠です。
私たちはそのための環境を、月島ソリューションセンター内の「Oracle Engineered Systemsラボ」に用意しています。ここにはハイエンドの「Oracle Exadata Database Machine」と「Oracle Exalytics In-Memory Machine」、ミッドレンジに最適な「Oracle Database Appliance」、そして高性能ストレージの「Sun ZFS Storage Appliance」などを備えています。
これらの実機を使ってお客様のデータを実際に用いて事前検証を行う「Proof of Concept」(PoC)のサービスを提供しています。お客様の環境を拝見してデータをいただき、最適化した上でどれだけ性能向上が見込めるのか、最適な構成はどれかなどをご報告します。
SmartScan、パラレルクエリの活用などがポイント
──── NTTデータ先端技術が、このようなラボを備えている理由はどこにあるのでしょう?
今野 理由は大きく分けて2つあります。1つは、PoCサービスのように導入をご検討いただいているお客様に事前検証の環境を提供するためです。私たちNTTデータ先端技術は名前の通りNTTデータのグループ企業で、大手金融機関や政府機関など大規模システムを検討されるお客様が多くいらっしゃいます。
そうしたお客様に事前検討のための設備とノウハウをご提供するための施設が、この「Oracle Engineered Systemsラボ」です。
そしてもう1つは、お客様にシステムを販売したのち、弊社がきちんとファーストラインサポートを行います。万が一トラブルが起きたときのために再現環境を保有し、原因を追及して解決するのも大事な使命です。
──── PoCでは具体的にどのような作業を行うのでしょうか?
浅田 最初の段階でお客様の現在のシステムを拝見し、SQL文がどのように使われているのかを見ます。そして、次期システムへ移行した際にどのくらいの性能向上を求めていらっしゃるのか、要望をおうかがいします。
それによって、どれだけ詳しくPoCを行うのかを検討し、それに基づいて実データをいただくなど検証環境を整えます。SQL文だけのケースもあれば、何本にもわたるパッチジョブそのものを検証対象にする場合もあります。検証終了までにかかる期間は、だいたい1週間から2週間程度です。
──── 検証時にまず当たるところはどこですか?
浅田 一般には、まずデータベースのインデックスをチェックします。
──── 教科書的には、インデックスがある方が検索が速くなりますね。
浅田 インデックスをがちがちに使っている場合は、かえって遅くなることがあり、それを最適化するだけで検索処理が劇的に速くなります。大量のデータの中からピンポイントでデータを取得するのにはインデックスは有効ですが、ExadataにはSmartScanという機能があり、検索結果がある程度の件数であればインデックスなしの方が速いのです。
SmartScanの活用、パラレルクエリを正しく使うなど、Exadataの最適化にはいままでのデータベース設計とは異なるノウハウが必要になります。
──── なるほど。
浅田 ExadataにはHybrid Columnar Compression(データ圧縮機能)もあります。これをどう使うかも性能とコストに大きく関わってきます。
データ圧縮機能を使うと、おおむねデータベースの物理的なサイズが10分の1程度になります。同時にデータ転送量やディスクI/O量も小さくなり、性能も向上します。
今野 しかし圧縮率と性能はトレードオフの関係になることもあります。例えば圧縮処理にかかるオーバーヘッドでデータをロードする時間が長くなることがあります。PoCではお客様のデータをもらって、最適なポイントを探っていくことになるのです。
──── 必要とする物理システムの構成も圧縮率で変わってくるでしょうから、導入コストも変わってきますね。
浅田 そうです。PoCによって検証した結果を踏まえれば適切な構成を選択できて、導入後に十分な性能が出ない処理があって困った、ということはなくなります。もうあとは導入するだけ、ということです。
また、PoCはExadataだけではなく、Exalyticsでも行う体制が整っています。ビッグデータ系の分析などに威力を発揮します。
施設と共に技術力も充実
今野 弊社は日本オラクル本社にもエンジニアが常駐しており、トラブルが発生した場合には協力して解決していく体制もあり、弊社エンジニアはそのための高い技術力も備えています。
「Oracle Engineered Systemsラボ」には今後もオラクルのエンジニアドシステム製品をさらに追加するなど、施設面での充実や人材面での充実をはかって、導入前のお客様、導入後のお客様のどちらにも充実したソリューションを提供できるよう、体制を作っていく予定です。
──── ありがとうございました。
お問い合わせ:
NTT データ先端技術株式会社
月島ソリューションセンター
Oracle Engineered Systemsラボ
住所 〒104-0052 東京都中央区月島1-15-7
パシフィックマークス月島1階(NTT データ先端技術(株)月島オフィス内)
Tel: 03-5843-6897
Mail: [email protected]
(本記事は、NTTデータ先端技術提供のタイアップ記事です)
あわせて読みたい
Software-Defined Networkで、ネットワーク構成をプログラマが作り込む時代がやってくる
≪前の記事
Cassandra 1.1が登場。問い合わせ言語CQL、Hadoop統合、スケーラビリティなど改善