情報畑でつかまえてロゴ
本サイトは NTTテクノクロスが旬の IT をキーワードに
IT 部門が今知っておきたい最新テクノロジーに関する情報をお届けするサイトです

石黒博之のお手軽体験!ビジネスインテリジェンス【第一回】事前準備編

本ブログでは、YellowfinというBIツールを用いて、データを分析するとどんなことが見えるのか、分析は実践することはそんなに難しくはなく、簡単にできるということをお伝えしていきます。

BI概要図

こんにちは。NTTソフトウェアの石黒 博之(いしぐろ ひろゆき)と申します。皆様はビジネスインテリジェンス(BI)という言葉を聞いたことはあるでしょうか?先日、就職活動を実施している大学生に

ビジネスインテリジェンスという言葉を知っていますか?

と尋ねたところ、知っている人はほとんどいませんでしたが、

コンビニのポスターなどで売上ランキング等を見たことある人は?

と問うと、当然ですがほぼ全ての学生があると回答します。
BIという用語はあまり聞き慣れないかもしれませんが、ランキングのポスター、世論調査や選挙速報など、私たちの身近にはデータ集めて見やすく可視化するということがとてもポピュラーになっていることは皆様も実感いただけると思います。

本ブログでは、BIツールを用いて、データを分析するとどんなことが見えるのか。分析は実践してみることはそんなに難しくない、簡単に出来るということをお伝えしていきたいと思っています。
なお、本ブログはBIに関する読み物というより、YelowfinというBIツールを用いて分析する方法を中心に説明をさせていただく予定です。

ご興味があれば、ご自身の端末(要管理者権限)にインストールして実践する事も可能です。その場合は、インストーラとライセンスファイルが必要になりますので、弊社に個別にご連絡頂いた方に、個別にご提供する方式とさせて頂いております。
詳しくは、「【番外編1】インストール」をご確認ください。こちらには、Yellowfinを含め、本ブログで利用する環境の構築方法がこちらに記載されています。参考にしながら実践頂ければと思います。

はじめに

BIの話をすると、「分析」という言葉が必ず登場します。分析と聞くと難しく捉えがちですが、「買い物したレシートを集めて今月どの位の金額を使ったのかを計算する」これも立派な分析です。世の中にはそういった計算を簡単に実現してくれるツールがたくさんあります。
弊社でもMotionBoard、Dr.SumEA、Yellowfinと3種類のBIツールを中心にご提案をしておりますが、その中でも「Yellowfin」というツールを紹介させて頂きます。

BIツールを使うのに必要な要素はいくつかありますが、上記の「買い物したレシートを集めて今月どの位の金額を使ったのかを計算する」を例にすると「買い物したレシート」が分析したいデータになり、「今月どの位の金額を使ったのかを計算する」はBIツールの役目となりますで、その他必要になるのは、分析したいデータを登録する場所(モノ)が必要になります。これは、CSVデータ、Excelファイル、Accessファイルなど様々の種類があるのですが、一般的にデータベースに蓄積することが多いので、本ブログでもデータベースを準備してそこにデータを蓄積して進めたいと思います。

なお、データベースにもたくさんの種類がありますが、本ブログでは、無償で利用することができる「PostgreSQL」というデータベースをインストールして利用する方法で実践したいと思います。
YellowfinはJDBC/ODBC接続が出来るDBであれば大体どのデータベースでも繋がりますので、実際の利用時には、ご自身の環境に合ったデータベースをご利用いただけます。

分析するデータ

本ブログで取り扱うデータは、売上情報と顧客、商品のマスタを使ったサンプルデータ(CSV)を利用したいと思います。商品名などは弁当や飲料の名称とし、項目もイメージしやすいように以下の様なシンプルな構成としてみました

データ項目

売上情報

レコード数:約35万件程度

商品マスタ

レコード数:8件

顧客マスタ

レコード数:700件

店舗名 (5店舗)

商品コード

顧客コード

商品コード(8種類)

商品名

性別

売上日 (2015/04/01~2016/12/31)

年齢

顧客コード

売上金額

売上情報

店舗名

商品コード

売上日

顧客コード

売上金額

店舗A

1001

2015/4/1

C00005

340

店舗B

1001

2015/4/1

C00102

340

店舗C

1001

2015/4/1

C00071

340

店舗D

1001

2015/4/1

C00030

340

店舗E

1001

2015/4/1

C00035

340

以後続く、トータル35万件

商品マスタ

商品コード

商品名

1001

しゃけ弁当

1002

のり弁当

1003

唐揚げ弁当

1004

焼肉弁当

1005

とんかつ弁当

1006

幕の内弁当

2001

緑茶

2002

ウーロン茶

顧客マスタ

顧客コード

性別

年齢

C00001

62

C00002

64

C00003

58

C00004

30

C00005

68

以後続く、トータル700件

事前準備としてBIツールで分析を始める前にデータをPostgreSQLに登録する必要がありますが、補足(【番外編2】PostgreSQLへの分析データ登録の流れ)に載せている手順に従って作業を実施しております。

なお、本ブログで利用しているデータは、以下で提供させていただきます。ご自身の端末で実践する場合、こちらからダウンロードしてください。

本ブログで利用しているデータのダウンロード

ご興味がある方は、補足も合わせてご覧ください。

分析を始めよう(ビューの作成)

それでは、早速分析を始めたいと思います。

今回はまず「ビュー」を作成します。
Yellowfinは複数のテーブルを結合したものを「ビュー」と呼んでいて、様々な分析レポートは「ビュー」に対して作成する、という仕組みを取っています。

YellowfinはWebブラウザ上で全て操作ができるツールとなっているので、使用を開始するには、ブラウザを立ち上げてインストール先の環境にアクセスするだけです。


ビューの準備

ログイン画面でユーザ名とパスワードを入力してログインします。

ログイン画面
評価版をインストールした場合は、デモ用のライセンスを使っているという注意が表示されますが、気にせず「Click Here To Continue」を選択します。

デモ用メッセージ
初回のみPostgreSQLへの接続情報を登録します。画面左上のメニューを開いて「管理」→「管理コンソールの順に選択します。

Yellowfin menu
「データソース」を選択して、プルダウンの一番下に表示された「追加」を選択します。

管理コンソール(データベース)
”データソースを選択”の欄にある、「データベース」を選択します。

新規接続


ビューの詳細を設定しましょう。

本ブログでは、売上の分析を実施するため、”名前”の欄には、「売上分析」と入力します。
次に、”データベースタイプ”に「PostgreSQL」を選択します。
すると、接続に必要な入力欄が追加されるので、インストール時に設定した内容をそれぞれ入力し、その後「ビュー作成」を選択します。

新規接続2
”ビューのタイプ”で「複数テーブル」を選んでから、「ビューの編集」を選択します。

新規接続3


すると、次のようなキャンパス画面(ビュービルダー)に画面が切り替わります。

このビュービルダーで、テーブル間の結合条件などを全て設定していきます。SQLの知識があるとより分かりやすいですが、無くてもマウス操作だけで完結できるように作られていますので、心配は不要です

ちなみにビューを作成するとレポート(分析用の帳票やグラフ)を作成する時に再利用が可能となるため、ビュー作成はシステム管理者などが行い、一般利用者は作成したビューを選択してレポートを作成する。という流れを取るのが一般的です。

ビュービルダー

ビューの作成(Step1)

それでは、ビューの作成を行っていきましょう。左側に表示されているのがデータベース上に登録されているテーブルです。ビューとして登録するため、中央のキャンパスにドラック&ドロップで売上情報を登録すると以下の様な形で売上情報の箱が中央のキャンパスに登録されます。


ビュー Step1-1

同じ流れで商品マスタと顧客マスタも登録します。

ビュー Step1-2


必要なデータの登録が完了したので、次はデータとデータを関連付ける、結合条件を設定します。

今回のデータは、「売上情報の顧客コード」と「顧客マスタの顧客コード」、「売上情報の商品コード」と「商品マスタの商品コード」がそれぞれ一致するので、これらを結合条件として設定します。
設定は、まずキャンパス内の売上情報の×ボタンの右側にある□が2つ重なったボタンを選択します。

ビュー Step1-3
すると以下の様な画面がポップアップで表示されます。この画面で結合条件を設定します。

ビュー Step1-4

”結合先”は、「商品マスタ」を選択し、”結合タイプ”は「Inner Join」、”要素数”は「n対1」を選択します。

上述の通り、売上情報の商品コードと商品マスタの商品コードが結合条件となるので、”結合の詳細”では、左右どちらにも「商品コード」を選択し、条件は「等しい」にして、「追加」を選択します。

ビュー Step1-5
”結合ロジック”に、今設定した結合条件が追加されたことを確認し、「保存して閉じる」を選択します。

ビュー Step1-6
ウィンドウが閉じられると、売上情報と商品マスの間に、結合されていることを示す表示が追加されています。

ビュー Step1-7
同様の手順で売上情報と顧客マスタを結合します。

ビュー Step1-8正しく設定されれば、次のように売上情報、商品マスタ、顧客マスタが結合された状態になります。

ビュー Step1-9


続いて、分析で使う項目を設定します。
売上情報の中に表示されている歯車のマークをクリックすると画面右側のビューオプションの欄の表示が変更されるので、"カラム(列)"の欄を開いて分析に利用する項目にチェックを入れましょう。
今回は、全て使用するので、「すべて選択」で構いません。

こうすることで、ビューに設定したテーブル情報のうち、分析の対象となるデータのみを事前に設定しておくことが可能になります。(例えば、分析に意味を持たない、通番などを外すことができます)

ビュー Step1-10

商品マスタと顧客マスタも同様に選択しますが、顧客コードと商品コードは売上情報側で既に分析対象として設定しているため、チェックを付ける必要がありません。
このように重複した項目を本設定で対象外にするような設定も行えます。


ビュー Step1-11


最後に右側のビューオプションの欄を開いて、このビューに分かりやすい名前を登録します。それぞれの項目の意味は次のようになっています。

名前:ビューの名前
ビジネス上の説明:一般利用者にも見えるビューの説明
技術的な説明:本管理画面のみで表示される説明

本ブログでは、名前に「売上分析ビュー」、ビジネス上の説明に「売上分析が行えます」を入力しています。
入力が完了したら次のステップへ進むため、左上の「2」のボタンを選択します。

ビュー Step1-12

ビューの作成(Step2)

次のステップに進むと、左側の枠は、先ほど選択したデータ項目に変わります。
本画面の”有効なフィールド”で、管理者が一般利用者にわかりやすいように、データベースで定義されている項目の表記を変更したり、選択した項目を分類分けすることができます。


ビュー Step2-1


”有効なフィールド”にあるカテゴリーの編集を選択するとカテゴリー追加の画面が表示されます。
カテゴリとは、分析用のデータをレポート作成時に分かりやすく分類するための機能となります。
デフォルトで用意されているものを追加しても良いですが、分かりやすい分類項目があまり無いため、商品マスタと顧客マスタの項目を「マスタ」として、売上情報は、「売上情報」としてそれぞれ新規カテゴリーを作成して追加したいと思います。

左下にある「新規カテゴリー作成」を選択すると、カテゴリ名の入力枠が表示されますので、ここに「マスタ」と入力して、枠の横にある「追加」を選択します。


同じ手順で売上情報も追加して”General”側に追加されたことを確認し、「保存して閉じる」を選択します。

ビュー Step2-3
”カテゴリの追加ウィンドウ”が閉じられると、”有効なフィールド”にマスタと売上情報が追加されています。

ビュー Step2-4


次にドラック&ドロップで”未結合のフィールド”の中にあるマスタテーブル(商品マスタ、顧客マスタ)の項目はマスタのカテゴリーへ、売上情報テーブルの項目は売上情報のカテゴリーへ登録します。
CtrlキーやShiftキーを使うと複数の項目をまとめて登録することも可能です。
有効になった項目は太字に変わります。


ここで、各項目名の前についている青と黄色のマークに注目しましょう。

Yellowfinは合計や平均などを計算する項目(主に数値)は青丸印(メトリック)、分析で分類など要素項目になるもの(主に文字列項目)は、黄色四角印(ディメンション)で表現します。売上日などの日付の項目は、初期値だと青丸印で登録されるのですが、日付を合計したり平均したりすることは無いので、ディメンションに変更します。これにより、後で説明するメトリックでは扱えない機能などが使えるようになって便利です。
変更は、”有効なフィールド”の「売上日」を選択して、画面下部に表示される変更用メニューで、”フィールドタイプ”の項目から「ディメンション」を選択し、「保存ボタン」を選択するだけです。

この画面では、表示名なども変更が出来るので、データベースのテーブル名は英語でも、レポートを作成するには、日本語表記の方が分かりやすいといった場合に、管理者が項目の表示名を変更して、一般利用者には日本語で表示させる。といったこともできます。

ビュー Step2-6
売上日がディメンションに変わったことを確認したら、次のステップへ進むため「3」のボタンを選択します。

ビュー Step2-7

ビューの作成(Step3)

ステップ3は最終確認画面となります。
ステップ2まででの設定を確認できる画面となっていますので、特に問題が無ければ「有効化」ボタンを選択します。

ビュー Step3-1ビュー Step3-2

これでデータベースとの接続設定と分析用のビュー作成が完了しました。

日付の書式設定

最後に細かいですが日付の書式設定が初期値だと、日/月/年の順番になってしまうので、その設定だけ変更したいと思います。
管理コンソールの画面内のシステム構成を選択します。


書式設定1


左上の地球のアイコン(地域ボタン)を選択して、”日付と時刻の設定”メニューから「年/月/日」の書式を選択します。必要であれば、会計年度の開始日も変更しましょう。とりあえずここでは、4月始まりを想定して、4月を選択します。
変更を終えたら、右上の「保存」を選択します。

書式設定2

以上で、事前準備は完了となります。
次回以降は、作成したビューを使って、レポートを作成したいと思います。

> 【第二回】シンプルなレポートを作成してみよう

Yellowfin商品サイトへ
著者プロフィール
石黒 博之
石黒 博之

ビジネスソリューション事業部 アシスタントマネージャー

ビッグデータという言葉が流行する前からビッグデータに出会ったことがきっかけでビジネスインテリジェンス(BI)の仕事に携わりました。本BLOGでも登場するYellowfinというBIツールの社内第一人者として社内外にアピールしながら、日々BIの業務に当たっております。2015年度には、東日本旅客鉄道株式会社様の分析基盤を構築いたしました。詳細は、弊社導入事例のページでも紹介しておりますので是非ご覧ください。