DWH

  • 用語集

「DWH」

データ活用やDX成功に必要な考え方を、各種キーワードの解説で理解できる用語解説集です。
今回はデータ活用の基盤として活躍する「DWH」について解説をします。

DWHとは

2カラムレイアウト

DWH(データウェアハウス)とは、「 Data WareHouse」を略した言葉です。「Warehouse」とは英語で「倉庫」などを意味する単語で、つまりデータ分析などデータ活用のために「データを溜めておく倉庫」のことをDWHと呼びます。

伝統的には、自社で購入して運用するDWHのパッケージ製品としてTeradata(テラデータ)社の製品などが使われてきました。最近ではDWHもクラウドサービスとして提供されるようになり、Googleクラウドが提供する『BigQuery』、Amazon Web Services(AWS)が提供する『Redshift』、Snowflake社が提供する『Snowflake』などが広く知られています。

【くもラジ】~ええええ?データ活用はデータベースだけじゃ足りない?~DWHとは何?(4分38秒)

Vtuberのくも子とハルカが、今話題のIT情報をわかりやすくお届けします。この動画では、くも子がデータ分析にはまったけどデータ量が多すぎて、データベースが重くなっちゃった…なんでー??どうしたらいいの?
通常のデータベースと、データウェアハウスの違いをギュギュっと約5分でお届けします!

「DWH」は普通のデータベース(RDB)と、どのように違うか

データ分析をするために「データを溜めておくところ」のことをDWHと読んだりするわけですが、そもそもどういうものなのか解らない人、イメージが湧かない人もいるかもしれませんので、まずその説明をします。

DWHは概ねとしては「いわゆる一般的なデータベース」と似たようなもの

DWHはデータ分析をするためにデータを溜めておくところですが、具体的にはMySQLやPostgreSQLなどの「いわゆる一般的なRDB(データベース)」と大体は同じものであることがほとんどです。

ほとんどのDWHは、世間一般的な「データベース」の利用イメージと同様の感覚で利用する製品となっています。つまり、テーブルを定義して作成することでデータを入れられるようにし、SQLを用いてデータを投入し、SQLを用いて格納されているデータを検索することでデータ分析を行います。

一般的なデータベースとの「違い」

そういうわけで、DWHは普段使っているデータベース(RDB)との違いが分かりにくいところがあります。例えば、MySQLやPostgreSQLなどのデータベースをすでに運用しているなら、そこにデータが溜められて、同じようにSQLでデータの検索もできるのに、どうして別途DWHを導入する必要性があるのか、少しわかりにくいところがあります。

機能的には概ねは似ているのですが、「利用用途の違い」に合わせてどのような性能が重視されているかや、どのような機能が重視されているかで大きな違いがあります。

MySQLやPostgreSQLなどの一般的なRDB製品は、いわば「データベース上で業務を遂行するための性能」が作りこまれています。データの書き換え・追加・削除などがデータの矛盾などを起こさず高速に行えるように配慮された設計です。例えば、一つしかない商品に同時に注文を出しても二重に受注するようなことがないとか、一つの注文に関連した複数のデータ操作が「全て行われる」か「全て行われない」のどちらかになる(トランザクション)などデータ整合性を保つ機能のような、業務を遂行するニーズで重要になる機能や性能がしっかり作りこまれています。

一方でDWHは「データ分析」利用用途としているため「分析用の性能や機能」が重視されて作られています。データ分析では現時点のデータだけではなくさかのぼって過去のデータが必要になることが多く、「データベースに大量のデータを格納できること」や「大量のデータを対象とした検索処理であっても十分な速度で実行できる」ことが重視されます。また、過去のデータを中心にして「分析処理をしたいだけ」なので、データの書き換え処理は重要ではなく、データ更新に伴ってデータ整合性が保たれるようにする機能なども重要ではありません。

  • 一般的なRDB
    • 用途は「業務処理」
    • OLTP(オンライントランザクション処理)
    • 保持するデータは最新データ中心
    • データ整合性を保つデータ書き込みや書き換えが重要
    • 一件ずつの大量のデータ処理を高速かつデータ不整合を起こさずに行えることが重要
    • 適切に正規化されてデータ整合性が保たれやすい形でのデータ保持が望ましい
    • SQLで利用する
  • DWH
    • 用途は「データ分析」
    • OLAP(オンライン分析処理)
    • 保持するデータは過去データも含む「大量のデータ」
    • データ書き換えは重要ではなく、データ整合性を保持する機能も重要ではない
    • 大量のデータに対する検索処理(によるデータ分析)を高速に行えることが重要
    • データ分析に適した構造でのデータ保持が望ましい(非正規化することがある)
    • 基本的にSQLで利用するが、用途の違いからSQLの全ての機能が提供されていないことがある

両方を兼ねたデータベースがあれば済むのではないか?

なお、「業務を遂行するための性能」と「分析用の性能」を一つの製品で兼ねることができればシンプルで良かったのですが、 残念ながら技術上の理由で兼ねることが難しい事情があるため、業務遂行を担うデータベース製品とは別に、分析用の大量データを対象にした処理を得意とする製品が別途作られるようになったのが「DWH」になります。

➡DWHとは:
大量のデータであっても分析クエリによる分析処理がしっかり実施できるような、「分析用の性能」を重視したデータベース

あるいはこのような事情を知らず、普通のデータベース(RDB)を使ってデータ分析をしていて、データ量が増えたことにより「処理がとても遅くなって困っている」のなら、DWHを導入することで問題点が解決できるかもしれません。

「BIツール」との関係

DWHはデータを溜め、SQLなどで分析クエリを使っての分析作業を実現可能にします。BIツールは、分析結果をグラフなどで可視化することに重点を置いた製品になります。組み合わせて利用し、DWHに蓄えられたデータに対してBIツールを使って分析することもできます。

「データレイク」との関係

DWHがデータスキーマ(受け入れるデータの形式)を事前に定義しないとデータを入れられないのに対し、「データレイク」ではデータの形式を意識せずに、様々な大量のデータ(画像や動画などのデータすら)を受け入れられます。 多種多様なデータが大量に発生する時代になったことから、スキーマを用意しなくても、まずは柔軟にどんなデータでも受け入れられる基盤が求められ利用されるようになりました。

Hadoopなどを使って実現される他、各クラウドサービスが提供している(例えば「Amazon S3」など)オブジェクトストレージサービスを利用して実現することができます。

DWHとは方式レベルでの競合技術とみなすこともできます。一方でそれぞれの特徴を生かしてデータレイクとDWHを組み合わせての利用も良くなされます。

「DWH上でのデータ分析」よりも「データの準備」の方が大変な現実

DWHを使ってデータ基盤を構築してデータ分析ができるようになると、思わぬ事実が明らかになります。データ分析そのものよりも、分析に必要なデータの準備に多くの時間がかかることが多かったのです。

データは社内の様々な場所に散在し、しかも多種多様なデータ形式となっていることが普通です。分析をするためにはDWHにデータを持ってこなければいけませんが、様々な場所からデータを読み取り、データ形式などを変換してそろえる前処理をする必要があります。

データ分析に取り組もう、と始めてみたはずが、何か分析しようと思うたび、あちこちからCSVファイルなどでデータを取ってきてExcelで前処理の加工してみたいな大変な作業を延々とやっている、そうことは実際よくあることだと思います。

そこで生まれたのが、多種多様なデータソースに接続でき、データを取得してデータ変換なども効率的に実現できる「データ連携ツール」でした。DWHの悩みを解消する手段として生まれたこのような製品カテゴリは「ETL」と呼ばれるようになります。

➡データ活用の思わぬ落とし穴:
データ分析そのものより、分析に必要なデータの準備に時間がかかることが多い

「DWH」でのデータ活用には「データ連携ツール」が必要

昨今、データ活用に取り組もうとされる組織は多いと思います。データ活用の推進は様々な方法や技術で行えますが、DWHとBIツールを導入して、全社のデータ基盤とする取り組み方はよくあるアプローチだと思います。

DWHの活用ではデータ連携のニーズが様々に発生することがあり、(ETLやEAI、iPaaSなどと呼ばれる)「データ連携ツール」をうまく活用できるかどうかがデータ活用の成功失敗を分けることがあります。例えば、

  • DWHへデータを持ってくる手段:
    データは社内やクラウドの様々なシステムに、多種多様な形式で存在します。
  • DWH上のデータを加工する手段:
    分析作業の前にデータ形式を整えるなどのデータ加工が必要になることがあります。
  • DWHに溜まっているデータを取り出して外部で活用する手段:
    データ基盤としてDWHが定着すると、DWH上にあるデータを外部の様々なシステムで活用するニーズが生じてきます。
  • データレイクなど他の技術と組み合わせて利用する手段:
    例えばデータレイクで一度様々なデータを受け止め、データレイクのデータを加工してDWHに流し込むような、「それぞれの長所を組み合わせて利用する」のであれば、データレイクとDWHを連携する手段が必要になります(あるいはデータ基盤を移行する場合にも必要になります)。

これら様々な作業を、何かある度に手作業で行っていては、手間と時間がかかって困るはずです。また、どういうデータが必要で、そのデータをどう分析するのかは、事前にはわかるものではなく、実際にデータ分析やデータ活用を進めてみてから解ることが多い傾向もあります。

よってDWHの活用のためには以下のような特性を実現するデータ連携ツールが必要になってきます。

多種多様なシステムやデータに「つなぐ」ことができる

様々な社内システム、あちこちで使われている形式もまちまちなExcelファイル、導入した様々なクラウド、多種多様なデータやシステムに連携できる能力が必要になります。

十分に高い処理性能

分析用のデータは過去から蓄積されたデータなど、データサイズが大きいことが良くあります。大量のデータも高速に処理できる必要があります。簡易な便利ツールでは不十分で、本格的な利用ができる手段が必要にあります。

様々な処理の自動化

データを取得してDWHに流し込む定期的な処理の自動化、DWH上でデータを整える作業、例えばDWH上に溜まったデータを機械学習に流し込んで処理し予測結果を業務に自動反映させるなど、自動化手段として活用できる手段が望まれます。

業務の現場が自分で使える使いやすさ

データの利活用では、ITシステムに求めることを事前に分析しにくいことがあります。データを集めて分析し、そこから気付きを得ることを繰り返すことになるためです。

分析して解ったことがあったとします。追加でこういうデータ分析を行いたいが、そのためには追加で新たなデータが必要になるとか、解ったことを業務の成果にするためにはこういう自動連携処理を実現する必要があるとか、そういうことはよくあるはずです。 このように「何か気がつくたび」に、「ITの改修を依頼して待つ必要が生じる」のではデータ活用は効率的に進みません。かといって、これらを手作業で頑張ってはデータの雑用まみれになってしまってやはり進まなくなります。

さらには、このような気付きはIT側の専門家ではなく「業務に詳しい人」の方が得意です。よって、彼らが自ら取り組みを進められることも望まれます。

よってデータ利活用をうまく進めるためには、どのようにデータ連携するかを現場で迅速に作り替えられること、さらには業務やビジネスの現状やニーズについて良くわかっている人の主導で取り組めることが望まれることになります。

GUIのみでデータ連携を自在に開発できるノーコードやローコードのツールがあれば、現場がこのようなニーズを自ら迅速に解決し、データ活用を効率的に進めることができます。

関係するキーワード(さらに理解するために)

  • ETL
    • 昨今盛んに取り組まれているデータ活用の取り組みでは、データの分析作業そのものではなく、オンプレミスからクラウドまで、あちこちに散在するデータを集めてくる作業や前処理が実作業の大半を占めます。そのような処理を効率的に実現する手段です。
  • BIツール
    • データを様々な分析軸で集計・分析できるツールです。データを分析し、分析結果を得る手段であり、分析結果をグラフなどで見やすい形でレポートにしてくれる機能などがあります。
  • データレイク
  • データメッシュ
  • オブジェクトストレージ
  • iPaaS
    • 様々なクラウドを外部のシステムやデータと、GUI上での操作だけで「つなぐ」クラウドサービスのことをiPaaSと呼びます。
  • ノーコード/ローコード

DataSpiderの評価版・無料オンラインセミナー

当社で開発販売しているデータ連携ツール「DataSpider」は、ETLとしての機能も備えており、DWHの利活用をささえる手段として多数の利用実績もあるデータ連携ツールです。

通常のプログラミングのようにコードを書くこと無くGUIだけ(ノーコード)で開発でき、「高い開発生産性」「業務の基盤(プロフェッショナルユース)を担えるだけの本格的な性能」「業務の現場が自分で使える使いやすさ(プログラマではなくても十分に使える)」を備えています。
データ活用のみならず、クラウド活用などの様々なIT利活用の成功を妨げている「バラバラになったシステムやデータをつなぐ」問題をスムーズに解決することができます。

無料体験版や、無償で実際使ってみることができるオンラインセミナーも開催しておりますので、ぜひ一度お試しいただけますと幸いです。

用語集 コラム一覧

英数字・記号

あ行

か行

さ行

た行

な行

は行

ま行

や行

ら行

わ行

» データ活用コラム一覧

おすすめコンテンツ

関連コンテンツ

コラム一覧に戻る