DWHの大規模化における解決策
課題解決へのアプローチ
(1)「コストパフォーマンス」へのアプローチとしての有効性
カラムストア型DB
カラムストア型DBは、カラム単位で重複を排除しながらデータをディスクに格納し、データ処理時のIO量を削減することで、特定のカラムのフルスキャンを行う場合、劇的な性能改善をもたらすソリューションです。
一方で、多数のカラムをデータ処理に用いるクエリや、データの挿入・更新に関しては、ディスク上の複数の場所にアクセスする必要が出てくるため、従来のDBより性能を劣化させることもあります。
カラムストア型DBを採用しているのは、SybaseIQ、Greenplum、Exadataです。
GreenplumおよびExadataにおいては、カラムストア型DB機能はオプションで有効/無効が選択できます。
MPP
シェアード・ナッシング・アーキテクチャ上で、データ処理を複数の独立した処理に分割し並列にデータ処理を行うことで、DWHのデータ処理性能を飛躍的に向上させるソリューションです。
DWHに適用される上で欠点となる部分は見当たりません。並列で実行する処理を管理するオーバーヘッドがあるため、従来のDBよりも業務系システムでよく行われるOLTP(オンライントランザクション処理)型の処理については、遅くなることがあります。
MPPを採用しているのは、Teradata、Netezza、Greenplumです。
ハードウエア・アプライアンス型
ハードウエア・アプライアンスとしてDWHを提供することで、購入時にかかる直接コストは大きくなりますが、DWHシステムの内部設計にかかるコストを削減できます。
アプライアンスとして開発工程を経て出荷されるため、内部で用いられるハードウエアおよびソフトウエアのテクノロジーは1世代前を追いかける形になります。ここは安定性と先進性のトレードオフと考えられるでしょう。
一方、専用のハードウエアになるため、汎用ハードウエアの保守費用に比べ割高になり得ます。保守費用については注意が必要です。
また、運用を考えた場合、新しい機能を持つ新機種へバージョンアップを検討する際、既存システムへの影響を測るためには、ユーザーは新しい機種を手に入れテストを行う必要があり、大掛かりな作業になります。
ハードウエア・アプライアンスとして提供されるのは、Teradata、Netezza、Exadataです。
ソフトウエア型
DWHをソフトウエアとして汎用ハードウエア上に実装することで、システム購入時の直接コストをハードウエア・アプライアンスより大幅に下げることができます。汎用ハードウエアの保守費用は今日では各ハードウエア・ベンダの努力で低く抑えられているため、保守費用も低く抑えられます。
また、運用を考えた場合、既存の業務系システム等で運用しているシステム監視ポリシーをそのまま適用できること、常に進化するDWHの新機能を取り入れていくためのバージョンアップを考えた際、バージョンアップ・テストをユーザー側でも手軽に行えることはメリットになります。
さらに、汎用ハードウエアでシステムを組むため、日進月歩で進化するハードウエアそのものの機能拡張・性能向上メリットを柔軟にいち早く、そして無理なく取り込めるため、コストパフォーマンスを最大化できます。
一方、DWHシステムの内部設計が必要となり、これは間接コストとして見込む必要があります。
ソフトウエアとして提供されているのは、SybaseIQ、Greenplumです。
(2)「拡張性」へのアプローチとしての有効性
カラムストア型DB
カラムストア型DB機能は、「拡張性」へのソリューションではありません。
MPP
MPPは明らかに「拡張性」の課題に対するコア・ソリューションです。DWHが大規模化してもシェアード・ナッシング・アーキテクチャでデータ処理単位を疎結合にして分散処理をさせられるため、拡張性を実現するための必要条件といえます。以下ハードウエア・アプライアンス型とソフトウエア型の説明ではこのMPP処理を有するソリューションを前提に紹介します。
ハードウエア・アプライアンス型(+MPP)
ハードウエア・アプライアンス型(+MPP)の特徴を持つソリューションは、アプライアンスとして固められた単位でシステム拡張が可能です。しかしながら、専用ハードウエアを利用するためどうしてもフォークリフト型のシステム拡張になります。「拡張性」へのアプローチとしては柔軟性においてソフトウエア型に劣ります。
Teradata、Netezzaがこれにあたります。
ソフトウエア型(+MPP)
ソフトウエア型(+MPP)の特徴を持つソリューションは、汎用ハードウエアを並べるアーキテクチャであり、必要とするハードウエアを追加することでシステム拡張が可能で、課題「拡張性」に対するベスト・ソリューションであるといって良いでしょう。
Greenplumがこれにあたります。
図3はこれまで説明した課題解決へのアプローチをソリューションごとにマトリクスであらわしたものです。
ソリューションの最適な選択
各ソリューションの特徴とDWH大規模化が生む課題への有効性を紹介してきましたが、DWHの導入を考える場合、ターゲットとするデータサイズ(~1TB、~数百TB、~PB)とシステム規模(1部門のみ利用、全社共通DHW基盤 等々)により、ユーザー側のニーズは多様なはずです。
このため、DWH導入を検討される場合は、必ず性能要件、システム要件について、事前に製品評価を行い確認されることと思います。
一方で、データは増え続ける宿命にあり、これに対応すべく進化してきたDWHソリューションの経緯と将来のあるべき姿に焦点を当て、決して小さくはないDWHシステムへの投資が無駄にならないようなIT戦略を選択することは性能要件、システム要件と同じか、それ以上に重要と言えます。