

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Snowflake 데이터 소스에 연결
<a name="snowflake-datasource-for-AMG"></a>

 Snowflake Enterprise 데이터 소스를 사용하면 Grafana의 다른 모든 데이터 소스와 함께 Snowflake 데이터를 시각화하고 컨텍스트의 로그 및 지표 데이터를 시각화할 수 있습니다. 이 데이터 소스에는 강력한 미리 입력 쿼리 편집기가 포함되어 있으며, 복잡한 주석을 지원하고, 알림 임계치를 설정하며, 액세스 및 권한을 제어하는 등의 작업을 지원합니다.

**참고**  
이 데이터 소스는 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의 고유한 아키텍처는 데이터를 이동하고 중복 스토리지 및 수집 비용을 지불하는 대신 데이터가 있는 곳에서 직접 쿼리합니다.

 **다양한 소스의 패널 구성:** 사전 빌드된 대시보드와 사용자 지정 대시보드를 사용하여 다양한 데이터 소스의 데이터를 단일 창으로 가져옵니다.

 **사용자 수준에서의 변환 및 컴퓨팅**: 사용자는 데이터 준비 노력을 거의 들이지 않고도 데이터를 변환하고 보고 있는 데이터에서 다양한 계산을 실행할 수 있습니다.

 **패널 내에서 결합, 컴퓨팅 및 시각화**: Snowflake 및 기타 소스의 관련 데이터를 표시하는 혼합 데이터 소스 패널을 생성합니다.

### 특성
<a name="snowflake-features"></a>

 **쿼리 편집기:** 쿼리 편집기는 시계열 또는 테이블 데이터를 시각화하고, SQL 구문 오류를 처리하며, 기본 SQL 키워드를 자동 완성할 수 있는 스마트 SQL 자동 완성 편집기입니다.

 **데이터 소스 권한:** Grafana에서 Snowflake 데이터를 보거나 쿼리할 수 있는 사용자 제어 

 **주석:** 이벤트를 다른 그래프 데이터와 상관시키기 위해 모든 Grafana 그래프에서 Snowflake 이벤트를 오버레이합니다.

 **알림:** 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를 선택하세요.

 인증 세부 정보를 추가하면 데이터 소스가 쿼리할 준비가 됩니다\$1

 다음 구성 필드를 사용할 수 있습니다.


|  이름  |  설명  | 
| --- | --- | 
|  Account  |  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>

 대시보드 설정에서 **변수**를 선택하고 **새로 만들기**를 선택하세요.

 '쿼리' 변수 유형을 사용하여 Snowflake 데이터 소스를 '데이터 소스'로 선택하세요.

**중요**  
 변수 쿼리에서 열 하나만 선택해야 합니다.

 예제: 

```
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를 데이터 소스로 선택하세요.

 주석은 이벤트이므로 이벤트를 설명하려면 하나 이상의 열 및 하나의 열이 필요합니다.

 다음 코드 예제에서는 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;
```

 및 
+  시간: `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\$1USAGE 데이터베이스를 사용하며 쿼리 수행자는 ACCOUNTADMIN 역할을 보유해야 합니다. 이를 안전하게 수행하려면 ACCOUNTADMIN 역할의 사용자가 있는 새 Grafana 데이터 소스를 생성합니다. 그런 다음, 변수에서 해당 데이터 소스를 선택하세요.