- データウェアハウスは、列指向データベースで大規模なデータの集計や分析に用いられるシステム
- データウェアハウスは分散処理が容易な構造なので、スケールアウトして低コストでシステムを構築することができる
- 大量のデータの集計や分析に適していることから、企業などの意思決定システムとして用いられる
データウェアハウスは何のために存在しているのか
一般的なリレーショナルデータベースでもデータの集計などを行えますが、データが多くなると処理に時間がかかって効率的な作業が難しくなります。
そのため、大量のデータを効率良く処理できるようなシステムが必要となり作られたのがデータウェアハウスです。
データウェアハウスは、リレーショナルデータベースよりも大量のデータを高速で処理できるような構造が採用されています。
しかし、データウェアハウスは幅広い用途で用いられるものではなく、大量のデータを扱う特定の用途向けのシステムとして使われるものです。
データウェアハウスの特徴
データウェアハウスには大量のデータの集計や分析が効率的にできるように、特定の行に対する処理が得意な列指向データベース(カラムナデータベース)が用いられます。
列指向データベースは一般的なリレーショナルデータベースよりも、大量のデータを高速で処理することが可能な集計や分析に特化されたデータベースです。
そして、容易にスケールアウトできるように、分散処理が容易な構造となっています。
そのため、急に処理するデータ量が増えても短期間でスケールアウトができますし、性能を向上するために簡単にスケールアウトできるので低コストでシステムを構築することが可能です。
AWSのデータウェアハウス: RedShift
AWSのデータウェアハウス、RedShiftは圧倒的に安価、容易にスケールアウトでき、フルマネージドのサービスのため手軽に扱うことができます。機能的な特徴として、カラムナーデータベースとMPP、サービス面としての特徴として圧倒的に安価、フルマネージドのサービスがあげられます。
カラムナーデータベース
大規模なデータを扱うデータウェアハウスは、カラムごとの処理を行うカラムナーデータベースが有効ですが、RedShiftもカラムナーデータベース(カラム型DB)です。
・カラムナーデータベースはある特定のカラムだけ操作できるので、集計処理などを高速で行うことができます
・同一のカラムの内容は、同じデータが繰り返して使われることが多いので、圧縮効率が良くなるために記憶領域を有効に使えます
MPP(Massively Parallel Processing)
RedShiftはMPPによって、リソースを共有せずに線形スケールを可能とするシェアード・ナッシングを実現しています。
そのため、インスタンスを追加することでデータの容量を増やすだけではなく、処理能力も向上させることも可能です。
大量のデータを扱うデータウェアハウスは、このような機能を持つことが不可欠となっています。
圧倒的に安価
一般的なデータウェアハウスを購入する場合よりも、Amazon Redshiftを利用することで年間の費用を1/10~1/1000にすることも可能です。
しかも、機能的には一般的なデータウェアハウスとほとんど変わりませんので、クラウド環境でデータウェアハウスを利用する場合は、Amazon Redshiftが最もコストパフォーマンスの良い選択肢の一つとなります。
クラウド上のデータウェアハウスなので手軽に使える
Amazon RedShiftはクラウド上のデータウェアハウスなので、AWSマネジメントコンソールを数回クリックするか、プログラムからAPIを呼び出すだけで簡単に使うことができます。
システムのことは、ほとんどAmazon RedShiftが自動的に管理してくれますので、データウェアハウスのためにエンジニアを雇用する必要もありません。
Amazon RedShiftは手軽に使えて、コストも削減できるデータウェアハウスです。
本サイト上に掲載されているまとめ記事が、毎週ステップメールで受け取ることもできます。
参考文献