データウェアハウスに関する基本的な内容をまとめてみたものです。データウェアハウスに関する、Web上にすでにある解説コンテンツをまとめたサイトの抜粋です。
[データウェアハウスの概要] (https://www.techcrowd.jp/datawarehouse/summary-2/)
[データウェアハウスは何のために存在しているのか] (https://www.techcrowd.jp/datawarehouse/summary-2/)
一般的なリレーショナルデータベースでもデータの集計などを行えますが、データが多くなると処理に時間がかかって効率的な作業が難しくなります。そのため、大量のデータを効率良く処理できるようなシステムが必要となり作られたのがデータウェアハウスです。
データウェアハウスは、リレーショナルデータベースよりも大量のデータを高速で処理できるような構造が採用されています。
しかし、データウェアハウスは幅広い用途で用いられるものではなく、大量のデータを扱う特定の用途向けのシステムとして使われるものです。
[データウェアハウスの特徴] (https://www.techcrowd.jp/datawarehouse/summary-2/)
データウェアハウスには大量のデータの集計や分析が効率的にできるように、特定の行に対する処理が得意な列指向データベース(カラムナデータベース)が用いられます。
列指向データベースは一般的なリレーショナルデータベースよりも、大量のデータを高速で処理することが可能な集計や分析に特化されたデータベースです。
そして、容易にスケールアウトできるように、分散処理が容易な構造となっています。
そのため、急に処理するデータ量が増えても短期間でスケールアウトができますし、性能を向上するために簡単にスケールアウトできるので低コストでシステムを構築することが可能です。
[代表的なデータウェアハウス] (https://www.techcrowd.jp/datawarehouse/famous/)
データウエアハウス(DWH)を構築するために、DWH用のDBMSとストレージを含む専用ハードウエアから構成されるDWHアプライアンスを導入するケースが少なくありません。
DWHアプライアンスの代表的な製品としては、OracleのExadataやIBMのNetezzaなどがあります。
Oracle Exadata
・会社規模の利用や大規模なデータを扱う
・Oracle Databaseを使用
・オンラインのトランザクション処理にも適している
IBM Netezza
・企業内の一部の部署で使うことを想定している
・オープンソースPostgreSQLをもとにしている
・複雑な処理をするのに適している
DWHアプライアンスは最初からデータウエアハウスが構築されているために、複雑なチューニングやカスタマイズをしなくても、十分に性能が発揮できます。しかし、より低コストで手軽に使えるクラウド上のデータウエアハウスAmazon RedShiftなども、利用者が増えています。
[AWSのデータウェアハウス: RedShift] (https://www.techcrowd.jp/datawarehouse/summary-2/)
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は手軽に使えて、コストも削減できるデータウェアハウスです。