すべてのプロダクト
Search
ドキュメントセンター

Simple Log Service:頻出パターンマイニング関数

最終更新日:Nov 09, 2025

頻出パターンマイニング関数は、多次元データを分析して有意な差がある属性の組み合わせを抽出し、その影響を定量化します。これらの関数は、さまざまなパラメーター構成をサポートしてマイニング結果を最適化します。

get_patterns

get_patterns は、頻出アイテムセットマイニングのオペレーターです。頻出アイテムをマイニングし、結果をマージして重複排除し、表形式データからテンプレート (頻出アイテムセット) を抽出します。

構文

get_patterns($TABLE, $HEADER, $PARAM)

パラメーター

パラメーター

データ型

必須

説明

$TABLE

row<array<T>, array<E>, ..., array<F>>

はい

頻出アイテムマイニングの入力テーブル。各列はマイニング対象のディメンション列です。

$HEADER

array<varchar>

はい

列名。これらは $TABLE の列に対応します。ヘッダー名の数は、テーブルの列数と一致する必要があります。

$PARAM

varchar

いいえ

詳細については、「param パラメーターの説明」をご参照ください。

param パラメーターの説明

パラメーター名

説明

パラメーターの型

必須

デフォルト値

有効値の範囲

minimum_support_fraction

テストグループにおける出力パターンの最小支持度。たとえば、テストグループでパターンが 0.1 の頻度で出現する場合、その支持度は 0.1 です。このパラメーターは、秘密度を調整してパターンの数をコントロールします。

double

いいえ

0.05

(0, 1)

  • クエリ分析:

    この機能はパブリックプレビュー段階です。手動で `set session enable_remote_functions=true` 文を追加する必要があります。この要件は将来のバージョンで削除される予定です。
    (*)| set session enable_remote_functions=true ;
    with t0 as (select  JSON_EXTRACT_SCALAR(entity, '$.platform') AS platform,  JSON_EXTRACT_SCALAR(entity, '$.region') AS region, cast(value as double) as value, if((value > 100), 'true', 'false') as anomaly_label from log), 
    t1 as ( select array_agg(platform) as platform, array_agg(region) as region, array_agg(anomaly_label) as anomaly_label, array_agg(value) as value from t0),
    t2 as (select row(platform, region) as table_row from t1),
    t3 as (select get_patterns(table_row, ARRAY['platform', 'region']) as ret from t2)
    select * from t3 
  • 出力:

    [["platform=eBay","platform=edX","platform=Amazon","platform=Skillshare","platform=Shopify","platform=Khan Academy","platform=Coursera","platform=Udemy","platform=Alibaba","platform=Taobao","platform=Snapchat","platform=Amazon Prime","platform=YouTube","platform=Hulu","platform=Peloton","platform=Twitter","platform=Fitbit","platform=Nike Training","platform=LinkedIn","platform=Instagram","platform=Disney+","platform=Strava","platform=MyFitnessPal","platform=Facebook","platform=Netflix","platform=Console","platform=Samsung SmartThings","platform=Apple HomeKit","platform=Mobile","platform=PC","platform=Google Home","platform=VR"],[156960,149760,148320,148320,146880,145440,139680,136800,133920,133920,96480,95040,92160,90720,90720,89280,89280,87840,84960,83520,83520,82080,82080,77760,70560,46080,41760,41760,34560,33120,31680,30240],null,null]

戻り値の説明

パラメーター

説明

$RET.patterns

array<varchar>

テーブルテンプレートであり、頻出アイテムセットです。各 varchar は、"\"platform\"='Netflix' AND \"region\"='Asia'" のように、条件が AND で接続された式です。配列内の各 varchar は、それぞれ異なるパターンを表します。

  • ["platform=Coursera","platform=Udemy","platform=Khan Academy","platform=","platform=Shopify","platform=Skillshare","platform=edX","platform=eBay","platform=Console","platform=Square","platform=Taobao","platform=Google Meet","platform=E*TRADE","platform=Skype","platform=PayPal","platform=Robinhood","platform=Microsoft Teams","platform=Webex","platform=Zoom","platform=Mobile","platform=Alibaba","platform=VR","platform=Stripe","platform=PC","platform=Amazon","platform=Snapchat","platform=Instagram","platform=Twitter","platform=LinkedIn","platform=Strava","platform=Facebook","platform=Apple HomeKit","platform=Google Home","platform=Amazon Prime"]

$RET.test_supports

array<bigint>

各テンプレートの頻度。

[79200,74880,74880,72000,67680,66240,64800,61920,61920,61920,60480,60480,59040,59040,57600,57600,57600,56160,54720,53280,51840,51840,51840,48960,46080,37440,33120,25920,25920,24480,21600,21600,21600,18720]

$RET.labels

array<bigint>

自動データ分類で将来使用するために予約されている戻り値。値は常に null です。

null

$RET.error_msg

array<varchar>/null

エラーメッセージ。エラーが発生しない場合、戻り値は null です。

null