

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Menggunakan sumber data Amazon Redshift
<a name="Redshift-using-the-data-source"></a>

## Kebijakan IAM
<a name="Redshift-policies"></a>

 Grafana membutuhkan izin yang diberikan menggunakan IAM untuk dapat membaca metrik Redshift. Anda dapat melampirkan izin ini ke peran IAM dan memanfaatkan dukungan bawaan Grafana untuk mengambil peran. Kebijakan akses Amazon Grafana Redshift bawaan ditentukan di bagian ini. [AWS kebijakan terkelola: AmazonGrafanaRedshiftAccess](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonGrafanaRedshiftAccess) 

## Kueri data Amazon Redshift
<a name="Redshift-query"></a>

 Sumber data Amazon Redshift menyediakan editor kueri SQL standar. Grafana yang Dikelola Amazon menyertakan beberapa makro untuk membantu menulis kueri timeseries yang lebih kompleks. 

Makro


|  Makro  |  Deskripsi  |  Contoh keluaran  | 
| --- | --- | --- | 
|  \$1\$1\$1timeEpoch(column)  |  \$1\$1\$1timeEpochakan diganti dengan ekspresi untuk mengonversi ke stempel waktu UNIX dan mengganti nama kolom menjadi waktu  |  UNIX\$1TIMESTAMP(dateColumn) as "time"  | 
|  \$1\$1\$1timeFilter(column)  |  \$1\$1\$1timeFiltermembuat kondisional yang menyaring data (menggunakancolumn) berdasarkan rentang waktu panel  |  time BETWEEN '2017-07-18T11:15:52Z' AND '2017-07-18T11:15:52Z'  | 
|  \$1\$1\$1timeFrom()  |  \$1\$1\$1timeFromoutput waktu mulai saat ini dari kisaran panel dengan tanda kutip  | '2017-07-18T11:15:52Z' | 
|  \$1\$1\$1timeTo()  |  \$1\$1\$1timeTooutput waktu akhir saat ini dari kisaran panel dengan tanda kutip  | '2017-07-18T11:15:52Z' | 
|  \$1\$1\$1timeGroup(column, '1m')  |  \$1\$1\$1timeGroupmengelompokkan stempel waktu sehingga hanya ada 1 poin untuk setiap periode pada grafik  | floor(extract(epoch from time)/60)\$160 AS "time" | 
|  \$1\$1\$1schema  |  \$1\$1\$1schema menggunakan skema yang dipilih  | public | 
|  \$1\$1\$1table  |   \$1\$1\$1tableoutput tabel dari yang diberikan \$1\$1\$1schema (menggunakan skema publik secara default)  | sales | 
|  \$1\$1\$1column  |  \$1\$1\$1columnoutput kolom dari saat ini \$1\$1\$1table  | date  | 
|  \$1\$1\$1unixEpochFilter(column)  |  \$1\$1\$1unixEpochFilterdiganti dengan filter rentang waktu menggunakan nama kolom yang ditentukan dengan waktu yang direpresentasikan sebagai stempel waktu Unix  |   column >= 1624406400 AND column <= 1624410000  | 
|  \$1\$1\$1unixEpochGroup(column)  |  \$1\$1\$1unixEpochGroupsama dengan \$1\$1\$1timeGroup tetapi untuk waktu yang disimpan sebagai stempel waktu Unix  | floor(time/60)\$160 AS "time" | 

**Visualisasi**

Sebagian besar kueri di Redshift paling baik diwakili oleh visualisasi tabel. Setiap kueri akan menampilkan data dalam tabel. Jika bisa ditanyakan, maka bisa dimasukkan ke dalam tabel. 

Contoh ini mengembalikan hasil untuk visualisasi tabel: 

```
SELECT {column_1}, {column_2} FROM {table};
```

**Deret waktu dan visualisasi grafik**

Untuk deret waktu dan visualisasi grafik, ada beberapa persyaratan: 
+ Kolom dengan `date` atau `datetime` tipe harus dipilih.
+ `date`Kolom harus dalam urutan menaik (menggunakan`ORDER BY column ASC`).
+ Anda harus memilih kolom numerik.

Untuk membuat grafik yang lebih masuk akal, pastikan untuk menggunakan `$__timeFilter` dan `$__timeGroup` makro.

**Contoh kueri timeseries:**

```
SELECT
  avg(execution_time) AS average_execution_time,
  $__timeGroup(start_time, 'hour'),
  query_type
FROM
  account_usage.query_history
WHERE
  $__timeFilter(start_time)
group by
  query_type,start_time
order by
  start_time,query_type ASC;
```

**Modus isi**

Grafana juga melengkapi bingkai secara otomatis tanpa nilai dengan beberapa default. Untuk mengonfigurasi nilai ini, ubah **Nilai Isi** di editor kueri. 

**Memeriksa kueri**

Karena Grafana mendukung makro yang Redshift tidak, kueri yang dirender sepenuhnya, yang dapat disalin dan ditempelkan langsung ke Redshift, terlihat di Query Inspector. **Untuk melihat kueri interpolasi lengkap, pilih menu Query **Inspector**, dan kueri lengkap terlihat di tab Query.**

## Template dan variabel
<a name="using-redshift-templates-variables"></a>

Untuk informasi selengkapnya tentang cara menambahkan varialble kueri Redshift baru, lihat. [Menambahkan variabel kueri](variables-types.md#add-a-query-variable) Gunakan sumber data Redshift Anda sebagai sumber data Anda untuk kueri yang tersedia.

Nilai apa pun yang ditanyakan dari tabel Amazon Redshift dapat digunakan sebagai variabel. Pastikan untuk menghindari memilih terlalu banyak nilai, karena ini dapat menyebabkan masalah kinerja. 

Setelah membuat variabel, Anda dapat menggunakannya dalam kueri Redshift Anda dengan menggunakan. [Sintaks variabel](templates-and-variables.md#variable-syntax) Untuk informasi lebih lanjut tentang variabel, lihat[Template dan variabel](templates-and-variables.md).

## Anotasi
<a name="using-redshift-annotations"></a>

[Anotasi](dashboard-annotations.md)memungkinkan Anda untuk melapisi informasi acara yang kaya di atas grafik. **Anda dapat menambahkan anotasi dengan memilih panel atau dengan menambahkan kueri anotasi menggunakan tampilan **Anotasi**, dibuka dari menu Dasbor.** 

Contoh kueri untuk menambahkan anotasi secara otomatis:

```
SELECT
  time as time,
  environment as tags,
  humidity as text
FROM
  $__table
WHERE
  $__timeFilter(time) and humidity > 95
```

Tabel berikut mewakili nilai-nilai kolom diperhitungkan untuk membuat anotasi:


|  Nama  |  Deskripsi  | 
| --- | --- | 
|  Time  |  Nama bidang tanggal atau waktu. Bisa berupa kolom dengan tipe data tanggal atau waktu SQL asli atau nilai epoch.  | 
|  Timeend  |  Nama opsional dari bidang tanggal akhir atau waktu. Bisa berupa kolom dengan tanggal SQL asli atau tipe data waktu atau nilai epoch.  | 
|  Text  |  Bidang deskripsi acara.  | 
|  Tags  |  Nama bidang opsional untuk digunakan untuk tag peristiwa sebagai string dipisahkan koma.  | 