Insights で SQL の JOIN 関数をシミュレートする

New Relic Insights には、SQL の JOIN に似た機能はありません。また、Insight ではクエリのネストやサブクエリもサポートしていません。

しかし、イベントの一部としてカスタム属性を送信し、クエリで WHERE 句や FACET句を使うことで、JOIN をシミュレートできます。

カスタム属性を使って、SQL の JOIN をシミュレートする

アプリケーションから詳細なデータを取得するには、Insights イベントに対して、カスタム属性を設定します。

たとえば、ある製品の購入において、ブラウザごとに最も遅いウェブの処理時間を知りたいとします。Product と名付けた Insights のカスタム属性をアプリケーションの購入処理のメソッドで追加します。そうすると、以下の Insights クエリを実行できるようになります。

SELECT max(duration), average(duration), max(backendDuration), average(backendDuration) 
FROM PageView 
WHERE Product = 'Hat' 
FACET userAgentName 
SINCE 7 days ago