どうもこんにちは。
最近、「AWSではじめるデータレイク」という本を読んでいます。今まで全く携わってきたことのない分野なので、わからないことばかりですが、知識をつけようと頑張って読んでいます。
というのも、弊社の開発部ではSaasの知識をつけていこうということで、書籍の回し読みを始めています。(部長が図書委員を務めてくれています。)
データウェアハウスとは
膨大なデータを整理しながら目的別に保管するDB(データベース)のこと
企業によっては、データを収集して終わりというところもあるんだと思いますが、大半の企業ではデータを収集したら分析して活かすのが主流なのではないかなと思います。
データウェアハウスは、分析するためのデータ分析できる形にしてから保管する場所と考えて良いと理解しました。
データベースとデータウェアハウスの違いは?
DBは多方面に蓄積されたデータの集合体であり、保存されているのは生のデータです。生のデータで保管されている状態では、システムごとに形式が異なるため、分析が困難となります。
データベースは、アプリケーションがユーザから取得した生のデータを保管しています。
一方で、データウェアハウスは、前述した通り、アプリケーションがユーザから取得した生のデータを分析可能な形にしたデータを保管しています。
上記のように、生のデータなのか、分析可能なデータなのかがデータベースとデータウェアハウスの違いです。
データレイクとは?
規模にかかわらず、すべての構造化データと非構造化データを保存できる一元化されたリポジトリです
AWSを使用されている人は、S3を想像してもらえればわかりやすいでしょうか。
収集したすべての構造化データ(DBに保存するようなデータ)と非構造化データ(PDFやPowerPointなど)を無作為に保存できるといっても過言ではないのではと思っています。(変換前のデータも変換後のデータも分析後のデータも保存できてしまうのが良い!)
ここに保存されたデータを変換したり分析したりする機構/システムは必要になりますが、データの収集、保存、変換、分析をすべて、データレイクを中心として行うことができます。
データウェアハウスとデータレイクの違いは?
違いは大きく分けて3つです。
- データスキーマを有無
- ユーザからのアクセシビリティ
- 柔軟さ
データスキーマの有無
データウェアハウスは、分析するための形式に変換されたデータを保管します。
あらかじめデータ形式を定義する必要があるので、データスキーマが存在します。
一方でデータレイクは、形式は自由なので、データスキーマが存在しません。
ユーザからのアクセシビリティ
ユーザが簡単にデータ分析できるのは、データウェアハウスです。
データウェアハウスはデータ形式が定義されているので、ユーザはデータを取り出すだけです。
一方でデータレイクは、データ形式が定義されていないため、自分で取得したい形式にデータを変換してデータを取り出す必要があります。
柔軟さ
ここでいう柔軟さとは、データ容量が逼迫したときやデータ構造に変更があったときなどのスケーラビリティのことです。
データウェアハウスは、データ形式に変換があったときにスキーマを変更する必要があるので時間がかかります。
データレイクは、容量を増やすことは容易にできます。
比較結果
データを取り出す時に手間がかかりますが、全体的な使いやすさだとデータレイクが適していると言えるでしょうか。
データレイクはオンプレ?クラウド?
データレイクを使用するなら、クラウドで使用するべきだと思います。
オンプレの場合、以下の点でコストがかかります。
- スペース
- セットアップ
- スケーラビリティ
- 要件の見積もり
- 高コスト
しかし、クラウドなら以下のメリットがあります。
- すぐに始められる
- スケーラビリティ
- 低コスト
まとめ
データを保存するなら、クラウドのデータレイクが良い!
以上