ブレークダウンソースのバケットグループ

  • リリースバージョン: Xanadu
  • 更新日 2024年08月01日
  • 所要時間:5分
  • バケット グループ たとえば、値の範囲を個別のバケットにグループ化することで、データを分類してブレークダウンとして使用できるようにするために使用されます。

    データアーキテクチャでは、バケットグループはバケットグループ [pa_bucket_groups] レコードで、バケットはバケット [pa_buckets] レコードで定義されます。各バケット [pa_buckets] レコードには、バケット グループ [pa_bucket_groups] レコードへの参照であるバケットグループフィールドが含まれています。

    バケットグループを操作するには、バケット [pa_buckets] をファクトテーブルとして使用し、条件でバケットグループを指定するブレークダウンソースを作成します。このソースに基づいて構築されたブレークダウンがスクリプトを含むブレークダウンマッピングを使用する場合、ブレークダウンはスクリプトが返す値をバケットにグループ化します。ブレークダウンマッピングでスクリプトを使用する代わりにフィールドを指定すると、ブレークダウンはマッピングされたフィールドの値をバケットにグループ化します。

    バケットへのフィールド値のグループ化

    スクリプトを使用しないブレークダウンマッピングでバケット グループを使用して、マップされたフィールドの値をバケットにグループ化できます。

    ユースケースは、ブール値の true 値と false 値を意味のあるラベルを持つ 2 つのバケットに変換するのと同じくらい簡単です。

    ブール値をバケットにソートする

    ベース パフォーマンスアナリティクス インストールには、アナリティクス使用状況の概要の一部として [アクティブ] ブレークダウンが含まれています。このブレークダウンでは、ジョブ履歴 [pa_jobs_logs] テーブルの job.active ブールフィールドへのマッピングを使用します。ブレークダウン ソースはバケット グループを使用し、job.active の true 値は [アクティブ] バケットにソートされ、 false 値は [非アクティブ] バケットにソートされます。false の値は数値的に 1 未満の値と見なされ、true の値は数値的に 1 以上であることに注意してください。

    非アクティブおよびアクティブなバケットとその範囲を示すバケットグループフォーム

    スクリプトの結果をバケットにグループ化する

    ある範囲の値を収集するブレークダウンマッピングスクリプトがある場合は、バケットグループを定義してそれらの値を個別のバケットに分割できます。

    バケット グループを作成したら、バケット グループに基づいてブレークダウン ソースを作成します。次に、そのブレークダウン ソースを使用するブレークダウンを作成します。ブレークダウンのブレークダウンマッピングを作成するときは、マッピングのスクリプトを定義または選択します。ブレークダウンは、スクリプトが返す結果をバケットグループのバケットにグループ化します。例については、「例:スクリプト マッピング」を参照してください。

    既存のスクリプトのバケット グループを書き込むこともできますし、最初にバケット グループを書き込んでからスクリプトを書き込むこともできます。ブレークダウンを作成するには、両方が存在する必要があります。

    注:
    同じスクリプトを任意の数のバケット グループで使用できます。また、原則として、同じ種類のデータを返すスクリプトは、同じバケット グループで使用できます。

    バケット グループの作成

    データを再分類するバケットのグループを指定します。

    始める前に

    必要なロール:pa_data_collector または admin

    手順

    1. 移動先 すべて > ブレークダウン > バケットグループ.
    2. [新規] をクリックします。
    3. バケット グループを明確に特定する名前 (経過範囲 (日数) など) を入力します。
    4. [新規行を挿入] をダブルクリックし、新しいバケットを追加します。
    5. 最初のバケットに名前を入力し、Enter キーを押すか、緑のチェック アイコンをクリックします。
    6. [開始] および [終了] 列をダブルクリックし、開始値と終了値を入力します。
      終了値に一致するレコードはバケットから除外されます。したがって、1 つのバケットの終了値と次のバケットの開始値を同じに設定します。その値と完全に一致するレコードは、その値を開始値として持つバケットにソートされます。
      警告:
      あるバケットの終了値が次のバケットの開始値と一致しない場合、レコードがどのバケットにもソートされない「穴」ができあがります。たとえば、20 で終了し、次のバケットが 21 から始まるバケットがある場合、スクリプトが 20.0000~ 〜 20.9999~ の値を返すレコードは、どのバケットにもソートされません。
    7. すべてのバケット範囲を定義した後、[送信] をクリックします。

    [インシデント経過時間範囲] バケット グループ

    次のように、インシデントを経過時間別にグループ化する場合を考えてみましょう。
    • 1 日未満
    • 1 – 5 日
    • 6–30 日
    • 31 – 90 日
    • 90 日を超える
    受信 Performance Analytics (パフォーマンスアナリティクス) > スクリプトには、Incident.Age.Days という名前のスクリプトが既にあります。このスクリプトは、インシデントの開始日からスコアが収集された最新の日付までの経過時間 (日数) を導出します。
    var diff=function(x,y){return y.dateNumericValue() - x.dateNumericValue();};
    var days=function(x,y){return diff(x,y)/(24*60*60*1000);};
    days(current.opened_at, score_end);
    Incident Age Ranges (Days) という名前の新しいバケット グループを作成します。このバケット グループでは、目的の日付に開始し、次のバケットの先頭で終了するバケットのセットを定義します。たとえば、06 〜 30 日のバケットは 6 で開始し、31 で終了します。
    06 〜 30 日のバケット

    このバケットには、経過時間が正確に 6 日から 30 日と 23 時間 59 分 59 秒までのインシデントが含まれます。

    最終的に、インシデントを分割する経過時間範囲に対応する 5 つのバケットを含むバケット グループが作成されます。

    バケット グループ

    スクリプトマッピングの例は、このバケットグループとスクリプトを使用するブレークダウンを示しています。

    次のタスク

    バケット [pa_buckets] ファクト テーブル、[Sys ID] フィールド、および条件 [バケット グループ][Is][<作成したバケット グループの名前>] を使用するブレークダウン ソースを作成します。次に、このブレークダウン ソースを使用し、ブレークダウンマッピングに関連するスクリプトを使用するブレークダウンを作成します。