メインコンテンツへスキップ

Splunk Lantern

Snowflakeデータベースの使用状況の監視

​​ Snowflakeは人気のあるマネージドデータベースで、プライベートデータや公開されているさまざまなデータソースにすばやくアクセスできます。データソースとそのパフォーマンスを監視およびトラブルシューティングし、次のような質問に回答できる必要があります。

  • クエリがブロックされたり、キューに入れられたりしていませんか?
  • スノーフレークウェアハウスのサイズをアップグレードすべきですか?
  • ログインに失敗した回数が異常に多かったことはありますか?
  • サービスがデータを返さないのはなぜですか?クエリが変更されてエラーが出始めましたか?

このユースケースでの Splunk ソフトウェアの使用方法

Snowflakeのダッシュボードとディテクターを使用して Splunk Observability Cloud コンテンツコントリビューターリポジトリでは、これらの質問に対する回答を得たり、アラートを出したり、その他の重要な使用状況やパフォーマンス指標の傾向をグラフ化したりできます。 Github からファイルをダウンロードする そして、以下を使用してください。 設定例 セットアップに役立つように。

リポジトリを使用して以下にアクセスできます。

  • 7 ダッシュボード
  • 11 個の検出器 ゴールデンシグナル関連や請求に関する一般的な懸念事項に対応
  • 設定例 Snowflakeからにデータを取り込むためのものです。 Splunk Observability Cloud OSS オープンテレメトリーコレクターを通じて

ダッシュボード

スノーフレークホームダッシュボード

Snowflake Home Dashboard には、ウェアハウス、データベース、ユーザーの数などの重要な Snowflake 使用量メトリクスの概要と、毎日のコストと総ストレージ使用量の簡単な概要が表示されます。これにより、Snowflakeのフットプリント全体で何が起こっているかをすばやく把握できます。このダッシュボードでは、通常、関連するメトリクスを価値の高い期間(24 時間や 1 時間など)で分割して表示するグラフが表示されるため、より詳細な調査の出発点となる大まかな理解が得られます。

clipboard_e81b63d2ecbb46e8830b03ebdca0cc069.png

ウェアハウス、データベース、およびスキーマのダッシュボード

より詳細な情報については、ウェアハウス、データベース、スキーマに焦点を当てた他のダッシュボードを参照してください。これにより、クエリ、エラー、流出、キューイング、データインジェストの変化を特定しやすくなり、時間の経過に伴う傾向を把握しやすくなり、より具体的な詳細情報を確認できます。

以下の例では、Snowflake Warehouseダッシュボードには、ウェアハウス別のクエリ、アクティブなウェアハウス、およびウェアハウスサイズ別のクエリを含むエラーが表示されます。この情報を使用して、クエリが多すぎる小規模ウェアハウスや、クエリが少なすぎる大規模なウェアハウスがあるかどうかを確認し、それに応じて調整を行うことができます。

clipboard_ecf239730a452f77ee5623902dc92e2b7.png

クエリーダッシュボード

さらに詳しく知りたい場合は、クエリダッシュボードにアクセスしてください。これにより、実行または実行されたクエリの数、ブロックされたクエリ、プロビジョニングされたクエリ、またはオーバーロードされたクエリが表示されます。このページの最後の表には、データベースとユーザーごとのエラーの内訳が表示され、エラーメッセージとクエリタイプも含まれています。これは、たとえば次のようないくつかのシナリオで役に立ちます。

  • エラーが最も多く発生している場所を調べたい場合
  • エラーが山のように発生していて、その原因を誰が、または何が原因なのかを調べたい場合

clipboard_e5893da6edbaf9f169eaf85635667d86a.png

コストダッシュボード

Snowflakeクレジットは当日の周期的にカウントされ、このダッシュボードは使用量を確認するのに役立ちます。その日に使用された毎日のクレジットと、そのクレジットが何に使用されているかを確認できます。また、サービスタイプ別のクレジットの内訳と、それらのクレジットがどこで使われているかを示す表もあります。

clipboard_e6a3d2d66eeb0eb377f8c5e828d2010f1.png

セキュリティダッシュボード

このダッシュボードには、環境内の合計ログイン数、失敗したログイン数、およびユーザー別のセッション数が表示されます。これにより、早急な対応が必要となる可能性のあるさまざまな傾向を特定できます。

clipboard_e97360eb5d8e8bc7201800ba49999738d.png

ディテクタ

ザの ゴールデン・シグナル は、さまざまなソフトウェアサービスの追跡に役立つ指標です。は スノーフレーク用検出器 で提供されています。 オブザーバビリティ・コンテンツ・コントリビューター・リポジトリ ゴールデンシグナルのパターンに従い、レイテンシー、エラー、トラフィック、サチュレーション (L.E.T.S.) と課金関連のディテクターをいくつか見てみましょう。これらのディテクタは役に立ちます。 有利なスタート また、各自の環境の期待値に合わせて閾値を簡単に調整できます。

レイテンシー

  • 小規模/超小規模のウェアハウスでの長時間のクエリ (通常、ウェアハウスのサイズをアップグレードしたいというサインです)
  • 15 分以上かかるクエリ

エラー

  • DB エラー総数
  • DB エラー率
  • ユーザー別のログイン失敗率

トラフィック

  • ウェアハウスごとにブロックされたクエリ
  • 過去 X 時間以内にクエリが見られなかった

サチュレーション

  • オーバーロードされたクエリ
  • X 秒以上キューに入れられたクエリ

請求

  • 倉庫異常検知に使用されたクレジット
  • クラウドサービスのコストが高い倉庫

これらのディテクターを例として使用すると、インシデント中に発生している可能性のある問題と、それらがSnowflakeまたはスタックの他の要素に関連しているかどうかを特定するのに役立ちます。

設定例

これらの例では、以下を使用していることを前提としています。 スプランクオテルコレクター ただし、これらの例は他の OTEL 構成でも機能します。これらはほんの一例です。設定は少し異なる可能性があります。

  1. Agent_Config.yaml 。レシーバー、エクスポーター、パイプライン設定が含まれます。Snowflakeのレシーバーエントリは次の場所にあります。 smartagent/sql
    • Snowflakeアカウントをこの設定に追加する必要があります。アカウントは次の形式から取得されます。 <account>.snowflakecomputing.com
    • ではなくカスタムロールを使用する予定の場合 ACCOUNTADMIN 設定にロールを追加する必要があります。
    • の解像度 3600 でアクションが実行されてから表示されるまでの待ち時間が長くなるため、秒 (1 時間) を推奨します SNOWFLAKE/ACCOUNT_USAGE DB ビュー。これより長い間隔で収集することも可能ですが、お勧めしません。
  2. Splunk-Otel-Collector.conf 。snowflakeのユーザー名/パスワード、Splunkオブザーバビリティトークンなどの参照変数が含まれています。
    • に Splunk オブザーバビリティトークンを追加してください SPLUNK_ACCESS_TOKEN
    • Snowflake ユーザーを以下に追加します。 SNOWFLAKE_USER (ユーザーには、へのアクセスを許可するロールが必要です) SNOWFLAKE/ACCOUNT_USAGE DB ビュー)。
    • Snowflakeユーザーアカウントのパスワードを以下に追加します SNOWFLAKE_PASS
  3. Snowflake-Metrics.yaml 。Splunk オブザーバビリティの指標とディメンションの SQL クエリとマッピングが含まれています。
    • ザ・ snowflake-other-metrics.yaml このファイルには、以下を含む、詳細でカーディナリティの高い DB クエリメトリクス用の SQL クエリが含まれています。 query_id GUID であるディメンション。
    • これらのメトリックスを使用するときは、以下を置き換えてください DB Metricssnowflake-metrics.yaml.
    • 請求使用量は米ドルで表示されます。

次のステップ

以下のリソースは、このガイダンスの理解と実装に役立つ場合があります。

  • によって書かれました Jeremy Hicks
  • オブザーバビリティ・フィールド・ソリューション・エンジニア Splunk