

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Snowflake データベースへの接続
<a name="snowflake-datasource-for-AMG"></a>

 Snowflake Enterprise データソースを使用すると、Snowflake データを Grafana の他のすべてのデータソースと一緒に視覚化し、コンテキスト内のログデータとメトリクスデータを視覚化できます。このデータソースには強力な先行入力のクエリエディタが含まれており、複雑な注釈、アラートしきい値の設定、アクセスとアクセス許可の制御などがサポートされます。

**注記**  
このデータソースは、Grafana Enterprise 専用です。詳細については、「[Enterprise プラグインへのアクセス許可の管理](upgrade-to-enterprise-plugins.md)」を参照してください。  
さらに、バージョン 9 以降をサポートするワークスペースでは、このデータソースに適切なプラグインをインストール必要がある可能性があります。詳細については、「[プラグインを使用したワークスペースの拡張](grafana-plugins.md)」を参照してください。

## 概要
<a name="snowflake-overview"></a>

### Snowflake とは
<a name="what-is-snowflake"></a>

 Snowflake は、「データウェアハウスアズアサービス」と一般的に呼ばれるクラウドベースのデータストレージおよび分析サービスを提供します。これは、データウェアハウス、データレイク、データエンジニアリング、データサイエンス、データアプリケーション開発、データ共有のためのソリューションを提供します。過去数年間、Snowflake はクラウドベースのハードウェアとソフトウェアを使用して手頃な価格でデータを保存および分析できるため、大きな人気を得ています。最近では、最大のソフトウェア IPO になりました。現在、多くの企業がプライマリデータベースとして Snowflake を使用して、トランザクションカウント、アクティブなユーザーセッション、さらには時系列やメトリクスデータなどのアプリケーションやビジネスデータを保存しています。

### Snowflake および Amazon Managed Grafana の最大限の活用
<a name="making-the-most-of-snowflake-and-AMG"></a>

 **Snowflake データを移動せずに視覚化する**: Grafana の独自のアーキテクチャは、データを移動して冗長ストレージと取り込みに消費するのではなく、データが置かれている場所に直接クエリを実行します。

 **さまざまなソースからパネルを作成する:** 事前に構築されたカスタムダッシュボードを使用すると、さまざまなデータソースのデータを 1 つのウィンドウにまとめることができます。

 **ユーザーレベルでの変換とコンピューティング**: ユーザーはデータを変換し、表示されるデータに対してさまざまな計算を実行できるため、データの準備が少なくて済みます。

 **パネル内で結合、計算、視覚化**: Snowflake やその他のソースからの関連データを表示する混合データソースパネルを作成します。

### 機能
<a name="snowflake-features"></a>

 **[クエリエディタ:]** クエリエディタは、時系列またはテーブルデータを視覚化し、SQL 構文エラーを処理し、基本的な SQL キーワードを自動補完できる、スマート SQL 自動補完エディタです。

 **データソースのアクセス許可**: Grafana で Snowflake データを表示またはクエリできるユーザーを制御します。

 **注釈:** Snowflake イベントを任意の Grafana グラフにオーバーレイし、イベントを他のグラフデータと関連付けます 

 **アラート:** Snowflake にアラートベースのメトリクスストアを設定します 

 **クエリの変数:** Snowflake データに基づいて Grafana にテンプレート変数を作成し、Snowflake クエリに変数を含めてダッシュボードをインタラクティブにします。

 **マルチメトリクスクエリ:** 複数のメトリクスを返す単一のクエリを、それぞれ独自の列に書き込みます。

## Snowflake プラグインの使用の開始
<a name="get-started-with-the-snowflake-plugin"></a>

 Grafana の Snowflake プラグインの使用を開始するには、次の 5 つの簡単な手順を実行します。

### ステップ 1: Snowflake データソースの設定
<a name="set-up-the-snowflake-data-source"></a>

 データソースを設定するには、**[設定]**、**[データソース]**、**[データソースの追加]**、[Snowflake] を選択します。

 認証の詳細を追加すると、データソースのクエリ実行準備が整います。

 次の設定フィールドを使用できます。


|  名前  |  説明  | 
| --- | --- | 
|  アカウント  |  Snowflake のアカウント。 | 
|  ユーザー名  |  サービスアカウントのユーザー名。 | 
|  [パスワード]  |  サービスアカウントのパスワード。 | 
|  スキーマ (オプション)  |  クエリのデフォルトスキーマを設定します。 | 
|  ウェアハウス (オプション)  |  クエリのデフォルトのウェアハウスを設定します。 | 
|  データベース (オプション)  |  クエリのデフォルトのデータベースを設定します。 | 
|  ロール (オプション)  |  クエリのロールを担います。 | 

### ステップ 2: Snowflake データのクエリの記述
<a name="write-queries-for-your-snowflake-data"></a>

 ダッシュボード内にパネルを作成して、Snowflake データソースを選択しクエリエディタの使用を開始します。
+  日付/時刻が含まれている限り、クエリのいずれかの場所に表示される可能性があります。
+  数値列を含める必要があります。これは集計でも int/float 列でもかまいません。
+  時系列データがさまざまなメトリクス用にフォーマットされている場合、必要に応じて文字列列を含めて個別のデータシリーズを作成できます。

#### Snowflake クエリのレイアウト
<a name="layout-of-a-snowflake-query"></a>

```
select
  <time_column>,
  <any_numerical_column>
  <other_column_1>,
  <other_column_2>,
  <...>
from
  <any_table>
where
  $__timeFilter(<time_column>) // predefined where clause for time range
  and $<custom_variable> = 1 // custom variables start with dollar sign
```

#### 間隔による時系列グループ用 SQL クエリ形式
<a name="sql-query-format-for-timeseries-group-by-interval"></a>

```
select
  $__timeGroup(created_ts, '1h'), // group time by interval of 1h
  <time_column>, 
  <any_numerical_column>,
  <metric_column>
from
  <any_table>
where
  $__timeFilter(<time_column>) // predefined where clause for time range
  and $<custom_variable> = 1 // custom variables start with dollar sign
group by <time_column>
```

#### テーブル用 SQL クエリ形式
<a name="sql-query-format-for-tables"></a>

```
select
  <time_column>, // optional if result format option is table
  <any_column_1>
  <any_column_2>
  <any_column_3>
from
  <any_table>
where
  $__timeFilter(time_column) // macro for time range, optional if format as option is table
  and $<custom_variable> = 1 // custom variables start with dollar sign
```

### ステップ 3: テンプレート変数の作成および使用
<a name="snowflake-create-and-use-template-variables"></a>

#### テンプレート変数の使用
<a name="snowflake-using-template-variables-1"></a>

 次の例に示すように、クエリにはテンプレート変数を含めることができます。

```
 select
   <column>
 from 
   <table>
 WHERE column >= '$variable'
```

 次の例は、クエリで複数値の変数を使用する方法を示しています。

```
select
  <column>
from 
  <table>
WHERE <column> regexp '${variable:regex}'
```

#### 変数作成のための Snowflake データソースの使用
<a name="using-the-snowflake-datasource-to-create-variables"></a>

 ダッシュボード設定で、**[変数]** を選択し、**[新規]** を選択します。

 「Query」変数型を使用して、Snowflake データソースを「データソース」として選択します。

**重要**  
 変数クエリでは必ず 1 つの列のみを選択してください。

 例: 

```
SELECT DISTINCT query_type from account_usage.query_history;
```

 次の変数が提供されます。

```
All DESCRIBE USE UNKNOWN GRANT SELECT CREATE DROP SHOW
```

### ステップ 4: アラートのセットアップ
<a name="snowflake-set-up-an-alert"></a>

 特定の Snowflake メトリクス、または作成したクエリに、アラートを設定できます。

 クエリエディタ内のアラートタブボタンを選択して、**[アラートを作成]** を選択します。

### ステップ 5. 注釈の作成
<a name="snowflake-create-an-annotation"></a>

 注釈を使用すると、イベントをグラフ上にオーバーレイできます。

 注釈を作成するには、ダッシュボード設定で、**[注釈]**、**[新規]** を選択して、データソースとして [Snowflake] を選択します。

 注釈はイベントであるため、イベントを記述するために、少なくとも 1 つの時間列と 1 つの列が必要です。

 次のサンプルコードは、Snowflake へのログイン失敗すべてに注釈を付けるクエリを示しています。

```
SELECT
  EVENT_TIMESTAMP as time,
  EVENT_TYPE,
  CLIENT_IP
FROM ACCOUNT_USAGE.LOGIN_HISTORY
WHERE $__timeFilter(time) AND IS_SUCCESS!='YES'
ORDER BY time ASC;
```

 And 
+  時間: `TIME` 
+  タイトル: `EVENT_TYPE` 
+  テキスト: `CLIENT_IP` 

 これにより、ダッシュボードパネル上の Snowflake へのログイン失敗すべての注釈がオーバーレイされます。

## 追加機能
<a name="additional-functionality"></a>

### 表示名フィールドの使用
<a name="snowflake-using-display-name"></a>

 このプラグインは、[オプション] パネルの [フィールド] タブにある [表示名] フィールドを使用して、名前、ラベル、または値に基づいて凡例キーを短縮または変更します。他のデータソースでは、カスタム`alias`機能を使用して凡例キーを変更しますが、表示名関数の方がより一貫性のある方法です。

### データソースの権限機能
<a name="snowflake-data-source-permissions"></a>

 Snowflake へのアクセスを制限するには、データソース設定ページの **[アクセス許可]** タブを選択してデータソースのアクセス許可を有効にします。アクセス許可ページでは、管理者はアクセス許可を有効にし、クエリのアクセス許可を特定のユーザーとチームに制限できます。

### Snowflake の請求と使用状況データについて
<a name="understand-your-snowflake-billing-and-usage-data"></a>

 Snowflake データソースでは、便利な請求情報と使用状況情報を表示する、請求および使用状況ダッシュボードをインポートできます。

 Snowflake データソース設定ページにダッシュボードを追加します。

 このダッシュボードは ACCOUNT\_USAGE データベースを使用し、クエリには ACCOUNTADMIN ロールが必要です。これを安全に行うには、ACCOUNTADMIN ロールのユーザーを持つ新しい Grafana データソースを作成します。変数でそのデータソースを選択します。