カスタム分析の機能

カスタム分析の流れ に示したように、カスタム分析を行うには、集計のルールを設定し、集計結果を開発者ポータルやデバイスで取得します。

ここでは、集計のルールの設定方法と、開発者ポータルで取得する際に利用できる機能を示します。

ここでは、アプリデータの分析を行う方法について、以下の内容を説明します。

メトリクスの設定

アプリ分析では、アプリケーション内で測定する対象をメトリクスと呼びます。たとえば、基本分析で、アプリケーションが持つ「ユーザー数」や、その詳細データである「作成されたユーザー数」「削除されたユーザー数」などは、いずれもメトリクスです。開発者ポータルでは、それらの時系列での変化がグラフ化されることになります。

アプリデータまたはイベントデータを分析するには、KiiObject やイベントのデータをメトリクスとして変換する方法をあらかじめ設定しておく必要があります。ここでの設定方法は、アプリデータの分析とイベントデータの分析で共通です。

グラフの軸の設定

カスタム分析を設定するには、グラフの軸を定義します。

  • 縦軸

    まずグラフの縦軸となる項目を、ファクト(使用するフィールド)と 集計方法(このフィールドの集計方法)として指定します。アプリデータの分析 の例では、「Score フィールドの平均」を設定しています。

    ファクトでは、KiiObject やイベントデータが持つ JSON データのうち、特定の 1 つのフィールドを選択し、集計に使用するフィールドとします。

    集計方法は、次のいずれかの選択肢から選ぶことができます。フィールドの型が int/float 型以外の場合は、データの件数のみを選択できます。

    • フィールドに有効な値を持つデータの件数
    • 指定した int/float 型フィールドの平均値
    • 指定した int/float 型フィールドの合計値
    • 指定した int/float 型フィールドの最大値
    • 指定した int/float 型フィールドの最小値

    カスタム分析では、下記に示すディメンションやフィルターなど、様々な項目を切り替えることができますが、これらの項目を切り替えてもフィールドの縦軸に設定した意味付けは変わりません。

  • 横軸

    グラフの横軸は常に時間を表し、カスタマイズすることはできません。また、データの取得間隔は 24 時間です。

ディメンション

ディメンションは、ファクトの値に対するグループキーとするフィールドです。ディメンションを設定すると、ディメンションに指定したフィールドの値ごとにグラフをグループ化して表示できます。つまり、表示されるグラフの数は、ディメンションに指定したフィールドの、値のバリエーションと同じ数になります(バリエーションが多い場合は "Other" にまとめられます)。

たとえば、以下のようにファクトが "気温" のとき、ディメンションに "都市" と "天気" を指定すると、都市ごとの気温の変化、天気ごとの気温の変化をそれぞれ時系列で見ることができます。ディメンションを切り替えても、縦軸の値は "気温" のままである点にご注意ください。

ディメンションにより、グラフの縦軸の値が構成される要素を、ディメンションの要素ごとに分析できます。そのため、値が得られた根拠や背景を、様々な視点から分析できます。

ディメンションとするフィールドは、複数設定できますが、グラフ表示の際に指定できるフィールドは 1 種類のみです。複数のフィールドを設定した場合、それらを切り替えて表示できます。

階級の設定

年齢のように、値のバリエーションが多くなる項目をディメンションとして指定する場合は、値そのものではなく階級をモバイルアプリ側であらかじめ計算してから分析することをおすすめします。

一例として、年齢のように値のバリエーションが多いフィールドの場合、値そのものをディメンションに設定すると 20、21、22…などが別のデータとなるため、傾向がつかみにくい結果となります。この場合、モバイルアプリ側で年齢から "20~29"、"30~39"… のような階級を示す文字列を生成して登録を行うことで、傾向がつかみやすくなります。

階級値をデータ値と同時に出力するのが困難な場合、Server Hook を使って階級値を後から付け足すこともできます。

開発者ポータルでの分析

設定したメトリクスからデータが解析されると、開発者ポータルでグラフを表示したり、API で解析後のデータ値を取得したりできます。

このとき、以下の機能が利用できます。

  • 表示期間の切り替え

    グラフの横軸として表示する期間を選択することができます。特定日時の周辺に発生した事象を詳しく分析することができます。

    Kii Cloud には 24 時間ごとの集計結果が保存されます。表示する期間を短くしても、それより詳細なデータは表示できません。

  • フィルター設定

    ディメンションとは別に、特定のフィールドの特定の値を持つデータだけを使ってグラフを絞り込むことができます。たとえば、上の気温の例では、"都市" で分類している際に、"天気" が "雨" のデータだけの集計結果を表示することができます。

    値で対象データを絞り込むだけのため、フィルターを設定してもディメンションのようにグラフは分割されません。

  • ディメンションのデータ選択

    ディメンションでビューを切り替えているときは、特定のデータのみをピックアップしてグラフ表示できます。たとえば、上の気温の例では、"都市" によるディメンションで東京と大阪のデータのみをグラフ表示することができます。

  • 累積値

    分析対象の期間全体での累積値が自動的に計算されます。たとえば、グラフの縦軸に平均値を選択している場合は累積平均が、データ件数を選択している場合は累積件数が計算されます。

    さらに、ディメンションによる分析を行っているときは、期間全体での累積値をディメンションによって分割した結果が表示されます。

これらの機能を組み合わせて利用することで、解析対象のデータの性質をより詳細につかむことができます。

たとえば、上の ディメンション に示した天気ごとの集計結果では、明確な特徴がつかめませんが、フィルターを組み合わせることで特徴を解析できます。下の画面のように、フィルター設定によって特定の都市を選択した上で、天気が "雨" と "曇り" のデータだけを画面表示すれば、"曇り"(水色)の方が "雨"(緑色)より気温が高いという傾向を視覚的につかむことができます。

API による分析結果の取得

Kii Cloud SDK や REST API を使って分析結果の詳細を取得できます。

取得した分析結果はモバイルアプリや Web アプリで独自の方法を使って表示できます。

なお、Kii Cloud SDK for JavaScript ではこの機能が実装されていません。必要な場合は REST API を使用してください。