Snowflake の統合により、クエリのパフォーマンスやストレージ システムやウェアハウスの健全性に関するデータを収集できます。次に、統合により、このデータが事前に構築された一連のデータとして表示されます。 を使用すると、最も重要なクエリ データをすべて 1 か所で表示できます。
ヒント
この統合は、 オープンソース カテゴリの Community project [コミュニティ プロジェクト] に分類されます。このコードは、問題や PR を通じてコミュニティからの意見を取り入れて公開で開発されています。New Relic 内にはアクティブなメンテナ チームがあり、New Relic Explorers Hub でのトラブルシューティング サポートやプロジェクト リポジトリでドキュメントが利用可能です。
Snowflake と New Relic の統合を設定したら、すぐにこのようなダッシュボードでデータを確認できます。
インフラストラクチャエージェントをインストールします
New Relic で Snowflake データを表示するには、インフラストラクチャ エージェントをインストールします。インフラストラクチャ エージェントは Snowflake からデータを収集し、そのデータを New Relic に送信します。New Relic では、パフォーマンス メトリック ダッシュボードを使用して、Snowflake ストレージ システムの動作を追跡できます。
ガイド付きインストールに従って、システムにインフラストラクチャ エージェントをインストルメント化します。
Snowflake と New Relic の統合
次の手順に従って、インフラストラクチャ エージェントが Snowflake アプリからデータをキャプチャできるようにします。
CLI で次のコマンドを実行して、New Relic Snowflake リポジトリのクローンを作成します。
$git clone https://github.com/newrelic/newrelic-snowflake-integration.git
releases
セクションから、 snowflakeintegration-linux
バイナリをダウンロードします。そのバイナリをクローンされたリポジトリに配置します。
次のコマンドを実行して、バイナリが実行可能であることを確認します。
$chmod +x snowflakeintegration-linux
統合に最新の情報を使用していることを確認するには、 config.yaml
ファイルを更新して、ファイルが Snowflake のキー ペア認証セクションにあるスニペットと一致するようにします。
New Relic インフラストラクチャ エージェントがsystemd
サービスとして実行される場合は、次の手順に従って環境変数を設定します。(New Relic インフラストラクチャ エージェントをsystemd
サービスとして実行していない場合は、このステップをスキップし、ステップ 5 に従ってください)。
「NEWRELIC_SNOWFLAKE_HOME の設定」セクションに記載されているように、 NEWRELIC_SNOWFLAKE_HOME
環境変数を設定します。(New Relic インフラストラクチャ エージェントをsystemd
サービスとして実行している場合は、このステップをスキップし、ステップ 4 に進みます)。
プラットフォームに関連するフレックス構成を flexConfigs からエージェントの integrations.d
フォルダーにコピーします。
- Linux の場合は、次の場所にあります。
/etc/newrelic-infra/integrations.d/
- Windows の場合は、次の場所にあります。
C:\Program Files\New Relic\newrelic-infra\integrations.d\
これらの手順をすべて実行したら、このドキュメントに戻って、New Relic アカウントにダッシュボードをインストールします。
カスタム クエリを作成する
独自にカスタマイズしたメトリクスを New Relic に送信し、そのデータをダッシュボードに表示できます。以下にカスタム クエリの 2 つの例を示します。
読み込みに最も時間がかかるクエリを見つけるには:
ファイルを作成して名前を付ける longest_queries.sql
ファイル パスをnewrelic-snowflake-integrations/queries
として指定します。
longest_queries.sql
に、次のスニペットを追加します:
(execution_time / 60000) as exec_time,
snowflake.account_usage.query_history
execution_status = 'SUCCESS'
flex-snowflake-linux.yml
ファイルに、次のスニペットを追加します。
- name: longestQueries
entity: snowflake
New Relic will capture all your Snowflake metrics when you use event_type: SnowflakeVirtualWarehouse
.
event_type: SnowflakeVirtualWarehouse
custom_attributes:
metric_type: snowflake.query_performance
commands:- run: YOUR_PATH_TO_DOWNLOADED_BINARY_FILE YOUR_PATH_TO_CLONED_REPOSITORY_DIRECTORY/config.yaml YOUR_PATH_TO_CLONED_REPOSITORY_DIRECTORY/queries/longest_queries.sql
読み込みに最も時間がかかるクエリを見つけるには:
ファイルを作成して名前を付ける credit_usage_by_warehouse.sql
ファイル パスをYOUR_PATH_TO_CLONED_REPOSITORY_DIRECTORY/queries/credit_usage_by_warehouse.sql
として指定します。
credit_usage_by_warehouse.sql
に、次のスニペットを追加します:
sum(credits_used) as total_credits_used
snowflake.account_usage.warehouse_metering_history
次のスニペットをflex-snowflake.yml
に追加します:
- name: CreditUsageByWarehouse
event_type: SnowflakeVirtualWarehouse
metric_type: snowflake.credit_usage_by_warehouse
- run: YOUR_PATH_TO_DOWNLOADED_BINARY_FILE YOUR_PATH_TO_CLONED_REPOSITORY_DIRECTORY/config.yaml YOUR_PATH_TO_CLONED_REPOSITORY_DIRECTORY/queries/credit_usage_by_warehouse.sql
ダッシュボードで Snowflake メトリックを表示する
Snowflake クイックスタートをインストールすると、重要な Snowflake データを New Relic で確認できます。
- one.newrelic.comにアクセスし、次に [メトリクスとイベント] をクリックします。
- NRQL クエリを実行して Snowflake メトリクスを表示します:
SELECT * FROM SnowflakeAccount
またはSELECT * FROM SnowflakeVirtualWarehouse
。 - New Relic が Snowflake メトリクスを取り込んだことを確認したら、 one.newrelic.comからDashboardsに移動して、Snowflake ダッシュボードを表示します。
次は何ですか?
NRQL クエリの作成とダッシュボードの生成の詳細については、次のドキュメントをご覧ください。