あらゆる規模や業種の企業にとって、ビッグデータの世界は大きくなる一方です。IDG(International Data Group)による2016年の調査によると、平均的に企業は現在、163TBという気の遠くなるような量の情報管理を行なっているそうです。

この生データを最先端のインサイトに変えるのは簡単ではありません。これを可能にするには、企業がエンタープライズデータマネジメントの手法を習得し、従業員が業務に必要な情報を容易に作成、保存、アクセス、管理、分析できるようにする必要があります。

おそらく、企業のデータ管理において最も一般的な保存形態は、データウェアハウスとデータベースの2つです。では、データベースとデータウェアハウスにはどのような違いがあるのでしょうか。また、それぞれどのような状況・構造に最適なのでしょうか?

目次

データベース とは?

データベースとは、組織化されたデータの集合体です。これらのデータは、検索・取得・操作・分析が容易かつ論理的な形で保存されています。

データベース の活用法

データの分類は一般的にSQL:Structured Query Language (リレーショナル)とNoSQL:Non only Structured Query Language(非リレーショナル)で行われます。

SQLまたはリレーショナルデータベースは、異なるデータ間の関係をコード化した正式なテーブルの中で情報を整理します(表形式)。各テーブルには列と行があり、Microsoft Excel のスプレッドシートの構造に似ています。 リレーショナルデータベースを検索するために、ユーザーはデータベースと通信するためのドメイン固有の言語であるSQLでクエリーを記述します。SQL データベースは、特にOracle、Microsoft SQL Server、IBM Db2、MySQL の 4 製品が有名です。

一方、NoSQLや非リレーショナルデータベースは、リレーショナルテーブルベースのデータモデルから外れたデータを保存するための任意の枠組みを使用します。NoSQLデータベースには、キーバリュー型、ドキュメント型、カラム型、グラフ型などの種類があります。一般的なNoSQLには、MongoDB、Cassandra、Redisなどがあります。

SQLとNoSQLは、それぞれ長所と短所があります。SQLデータベースは垂直方向への拡張(リソースの追加)が容易で、NoSQLデータベースは水平方向への拡張(マシンの追加)が容易である傾向があります。SQLを使ってクエリを書くことは、パフォーマンスや使い勝手の面で大きな利点となる一方で、リレーショナルデータベースは柔軟性に欠け、データ階層の面でより硬直的であることも事実です。

データウェアハウス とは?

データウェアハウスとは、組織内の様々な異種ソースからの情報を集約して保管するシステムのことです。

データウェアハウス の活用法

データウェアハウスは、明確にビジネスシーンでの用途であり、エンドユーザーが様々なソースからの情報を統合して分析できるようにし、意思決定を容易にします。

データベースとデータウェアハウスの違い7つ~概要~

主な違いは、データベースは保存されたデータの組織的な集合体であるのに対し、
データウェアハウスは、複数のデータソースから構築された情報システムであり、データを分析するために使用されます。

以下では、データベースとデータシステムをさらに高次元で区別しています。

  1. データベースは、OLTPソリューションと一緒に使うのが最適。
    データウェアハウスは、OLAPソリューションと一緒に使うのが最適。
  2. データベースは、一度に数千人のユーザー数を扱うことができる。
    データウェアハウスは、一度に少ないユーザー数しか扱うことができない。
  3. データベースは、非常に小規模なトランザクションに最も有効。
    データウェアハウスは、より高度な分析が必要な大規模な問題に最も有効。
  4. データベースは24時間365日利用可能な状態を保たなければならない。ダウンタイムが発生するとコストがかかる。
    データウェアハウスはダウンタイムの影響をあまり受けない。
  5. データベースは、CRUD操作(作成、読み込み、更新、削除)が軽快に行えるように最適化されている。
    データウェアハウスは、複数の大規模データストアに対して、より複雑なクエリをより少ない回数で実行できるように最適化されている。
  6.  データベースは、できるだけ効率的に構成され、複数のテーブルに重複する情報がない。
    データウェアハウスは、通常、データを非正規化し、書き込み操作よりも読み取り操作を優先させる。
  7. データベースには通常、最新の情報しか含まれていないため、過去のクエリを行うことは不可能。
    データウェアハウスは、レポーティングや分析のために1から設計されている。

データベースとデータウェアハウスの比較表

thumbnail image

データベースとデータウェアハウスの違い7つ~詳細~

これまでデータベースとデータウェアハウスの違いの概要を説明してきましたが、ここからはさらに詳しく違いについて説明していきます。

1. OLTP vs OLAP
OLTP(Online Transaction Processing)とは、トランザクションを中心としたデータ処理システムを指します。通常、ビジネスで日常的に使用される情報を含むデータベースは、このパラダイムが主流です。従業員は、高速で効率的なクエリと最新で正確な情報を必要としており、OLTPは特にこれを実現するために設計されています。

OLAP(Online Analytical Processing)とは、性能や日常的な利用よりも、データの分析や意思決定に重点を置いたデータ処理システムを指します。多くのOLAPシステムは、ビジネスインテリジェンス(BI)ソリューションと連携し、技術者でない管理職や経営者でも簡単に答えを導き出すことができるようになっています。

データベースは、通常、高速なデータアクセスのためにOLTPソリューションを必要とするビジネスに向いています。一方、データウェアハウスは、現在のデータだけでなく、過去のデータも集約できるOLAPソリューションを必要とするビジネスに向いています。

2. 同時実行可能ユーザー数
データベースは、OLTPシステムのため、性能低下が発生することなく一度に何千ものユーザーをサポートできます。

他方、OLAPデータウェアハウスは、一度にサポートできるユーザー数に限りがあります。データウェアハウスソリューションは、より複雑なクエリを多数の異なるデータストアに循環させるため、必然的に多くのリソースを必要とし、エンタープライズクラスのデータベースほど拡張性がありません。

3. ユースケケース
データウェアハウスとデータベースは、その利用シーンも大きく異なります。

データベースは、組織の日常的な機能を必要とする非常に小規模なトランザクションに役立ちます。
(例)

  • 病院が新しい患者のデータを入力する。
  • 顧客がオンラインウェブサイトでチケットを購入する。
  • 銀行が2つの口座間でお金を移動させる。  

データウェアハウスは、組織の過去、現在、未来の問題を考えるといったより大規模で高度な分析を必要とする場合に有効です。
(例)

  • 複数のデータベースから情報をマイニングし、隠れたインサイトを見つけ出す。

4.  対象サービスレベル
OLTPトランザクションの性質上、データベースは一般的に24時間365日の99.9%以上の時間帯で利用可能である必要があります。OLTPデータベースのダウンタイムは、非常に大きなコストとなり、ビジネスを停止させることさえあるのです。

一方、データウェアハウスは、バックエンド分析に使われることが多いので、ダウンタイムはそれほど大きな問題ではありません。実際、ほとんどのデータウェアハウスでは、より多くの情報がアップロードされる時、定期的にダウンするように設定されています。

5. 最適化
OLTPデータベースは、CRUD操作(作成、読み込み、更新、削除)が軽快に行えるように最適化されています。しかし、より複雑な分析クエリを実行すると、その性能は急速に低下します。

OLAPデータウェアハウスは、複数の大規模データストアに対する少数の複雑なクエリに対して最適化されています。レスポンスタイムは依然として重要な指標ですが、データウェアハウスにとってより重要な懸念は、実行する分析のクオリティです。

 6. 構造
OLTPデータベースは、高速なクエリを実現するために、複数のテーブルに重複した情報を持たず、可能な限り効率的に構造化されています。これにより、トランザクションの実行に必要なディスク容量とレスポンスタイムの両方が削減されます。

OLAPデータウェアハウスでは、クエリのスピードを重視しないため、不必要な情報はあまり気にする必要がありません。データウェアハウスは通常、データを非正規化し、書き込み操作よりも読み取り操作を優先させます。

7. レポーティングと分析
OLTPデータベースでも限られたレポーティングや分析は可能ですが、データの構造が正規化されているため、実行は比較的困難です。また、データベースには通常、効率を最大化するために最新の情報しか含まれていないため、履歴の照会は不可能です。

一方、データウェアハウスは、レポートや分析のために設計されています。ユーザーは、現在、過去の両方からデータを取得することができ、より幅広いインサイトを得ることができます。

データベースとデータウェアハウス vs データマートとデータレイク

データベースとデータウェアハウスの問題だけが、エンタープライズデータ管理システムの全てではありません。このセクションでは、データベースやデータウェアハウスに代わる、データマートとデータレイクの2つについて簡単に説明します。

データマートの定義と活用法

データマートとは、マーケティング、営業、財務、人事など、組織内の特定のユーザー向けの情報を格納するためのデータベースのことです。

データマートは単体として活用される場合もあれば、大規模なデータウェアハウスの一部として活用される場合もあります。いずれの場合も、組織のデータをより管理しやすいサイズ(通常は100GB未満)に縮小することが目的です。

データレイクの定義と活用法

データレイクは、データウェアハウスと似ていますが、内容をどのように整理するかという厳密な要件はありません。つまりデータレイクは、必ずしも情報を何らかの方法で構造化するわけでもなく、単なるデータの一元的な保管の役割を果たします。構造化されたデータと非構造化データの両方を一緒に保存することができ、データレイクはあらゆるソースやデータタイプからの情報を利用することができます。

データレイクは、現在と過去の情報のちょっとした「捨て場」でもあるため、一般的な構造化されたデータベースよりも柔軟で適応性があります。しかし、開発者やアナリストが大量の情報を処理・利用する場合、コストが発生します。

データベースとデータウェアハウスの統合

データウェアハウスとデータベースは、ビッグデータを利用するすべてのビジネスに必要です。上記で見てきたように、データベースとデータウェアハウスは実際には全く異なるものです。データウェアハウスやデータベースをセッティングするという意思決定は、組織が優れたエンタープライズデータ管理に取り組んでいるかどうかを表す1指標となるでしょう。

Integrate.ioは、ETLプロセス(抽出、変換、格納)の自動化やデータウェアハウス、データベースと統合するクラウドベース、ビジュアル、ローコードのインターフェースを提供しております。

データ統合にお悩みの方を始め、デモ14日間の試験運用、導入チームとの無料セッションをご希望の方は、お電話でお問い合わせください。