

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

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

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

 Grafana membutuhkan izin yang diberikan melalui IAM untuk dapat membaca metrik Athena. Anda dapat melampirkan izin ini ke peran IAM dan memanfaatkan dukungan bawaan Grafana untuk mengambil peran. Perhatikan bahwa Anda perlu [Mengonfigurasi kebijakan yang diperlukan](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) untuk peran Anda sebelum menambahkan sumber data ke Grafana. Anda akan memerlukan peran admin atau editor untuk menambahkan sumber data. Kebijakan akses Amazon Grafana Athena bawaan ditentukan di bagian ini. [AWS kebijakan terkelola: AmazonGrafanaAthenaAccess](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonGrafanaAthenaAccess) 

## Permintaan data Athena
<a name="Athena-query"></a>

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

Makro


|  Makro  |  Deskripsi  |  Contoh  |  Contoh Keluaran  | 
| --- | --- | --- | --- | 
|  \$1\$1\$1dateFilter(column)  |  \$1\$1\$1dateFiltermembuat filter bersyarat yang memilih data (menggunakancolumn) berdasarkan rentang tanggal panel.  |  \$1\$1\$1date(my\$1date)  | my\$1date BETWEEN date '2017-07-18' AND date '2017-07-18' | 
|  \$1\$1\$1parseTime(column,format)  |  \$1\$1\$1parseTimemelemparkan varchar sebagai stempel waktu dengan format yang diberikan.  |  \$1\$1\$1parseTime(eventtime, 'yyyy-MM-dd''T''HH:mm:ss''Z')  | parse\$1datetime(time,'yyyy-MM-dd''T''HH:mm:ss''Z') | 
|  \$1\$1\$1timeFilter(column,format)  |  \$1\$1\$1timeFiltermembuat kondisional yang menyaring data (menggunakancolumn) berdasarkan rentang waktu panel. Argumen kedua digunakan untuk mengurai kolom secara opsional dari varchar ke stempel waktu dengan format tertentu.  | \$1\$1\$1timeFilter(time, 'yyyy-MM-dd HH:mm:ss') | TIMESTAMP time BETWEEN TIMESTAMP '2017-07-18T11:15:52Z' AND TIMESTAMP '2017-07-18T11:15:52Z' | 
|  \$1\$1\$1timeFrom()  |  \$1\$1\$1timeFromoutput waktu mulai saat ini dari kisaran panel dengan tanda kutip.  | \$1\$1\$1timeFrom() | TIMESTAMP '2017-07-18 11:15:52' | 
|  \$1\$1\$1timeTo()  |  \$1\$1\$1timeTo menghasilkan waktu akhir saat ini dari kisaran panel dengan tanda kutip.  | \$1\$1\$1timeTo() | TIMESTAMP '2017-07-18 11:15:52' | 
|  \$1\$1\$1timeGroup(column, '1m', format)  |  \$1\$1\$1timeGroup mengelompokkan stempel waktu sehingga hanya ada 1 poin untuk setiap periode pada grafik. Argumen ketiga digunakan untuk mengurai kolom secara opsional dari varchar ke stempel waktu dengan format tertentu.  | \$1\$1\$1timeGroup(time,'5m','yyyy-MM-dd''T''HH:mm:ss.SSSSSS''Z') | FROM\$1UNIXTIME(FLOOR(TO\$1UNIXTIME(parse\$1datetime(time,'yyyy-MM-dd''T''HH:mm:ss.SSSSSS''Z'))/300)\$1300) | 
|  \$1\$1\$1table  |   \$1\$1\$1tablemengembalikan tabel yang dipilih dalam pemilih Tabel.  | \$1\$1\$1table | my\$1table | 
|  \$1\$1\$1column  |  \$1\$1\$1columnmengembalikan kolom yang dipilih dalam pemilih Kolom (membutuhkan tabel).  | \$1\$1\$1column  | col1  | 

**Visualisasi**

Sebagian besar pertanyaan di Athena paling baik diwakili oleh visualisasi tabel. Sebuah query menampilkan kembali data dalam tabel. Jika dapat ditanyakan, maka dapat ditampilkan sebagai tabel.

Contoh ini mengembalikan hasil untuk visualisasi tabel: 

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

**Timeseries/ Visualisasi grafik**

Untuk rangkaian waktu dan visualisasi grafik, Anda harus: 
+ pilih kolom dengan `date` atau `datetime` tipe. `date`Kolom harus dalam urutan menaik (menggunakan`ORDER BY column ASC`).
+ juga pilih kolom numerik.

**Memeriksa kueri**

Grafana yang Dikelola Amazon mendukung makro yang tidak dimiliki Athena, yang berarti kueri mungkin tidak berfungsi saat disalin dan ditempelkan langsung ke Athena. **Untuk melihat kueri interpolasi lengkap, yang bekerja langsung di Athena, klik tombol Query Inspector.** Kueri lengkap ditampilkan di bawah tab **Query**.

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

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

Setiap nilai yang ditanyakan dari tabel Athena dapat digunakan sebagai variabel. Hindari memilih terlalu banyak nilai, karena ini dapat menyebabkan masalah kinerja.

Setelah membuat variabel, Anda dapat menggunakannya dalam kueri Athena 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-Athena-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 menu **Dasbor**.** 

Contoh kueri untuk menambahkan anotasi secara otomatis:

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

Tabel berikut mewakili deskripsi kolom yang dapat digunakan untuk membuat anotasi:


|  Nama  |  Deskripsi  | 
| --- | --- | 
|  Time  |  Nama date/time lapangan. Bisa berupa kolom dengan tipe date/time data SQL asli atau nilai epoch.  | 
|  Timeend  |  Nama opsional dari date/time bidang akhir. Bisa berupa kolom dengan tipe date/time data SQL asli atau nilai epoch. (Grafana v6.6\$1)  | 
|  Text  |  Bidang deskripsi acara.  | 
|  Tags  |  Nama bidang opsional untuk digunakan untuk tag peristiwa sebagai string dipisahkan koma.  | 

## Dukungan data kueri async
<a name="athena-async-query"></a>

Kueri Athena di Grafana Terkelola Amazon ditangani secara asinkron untuk menghindari batas waktu. Kueri asinkron menggunakan permintaan terpisah untuk memulai kueri, lalu memeriksa kemajuannya, dan akhirnya untuk mengambil hasilnya. Ini menghindari batas waktu untuk kueri yang berjalan untuk waktu yang lama.

## Penggunaan kembali hasil kueri
<a name="athena-query-reuse"></a>

Anda dapat menggunakan kembali hasil kueri sebelumnya untuk meningkatkan kinerja kueri. Untuk mengaktifkan penggunaan kembali kueri, aktifkan ada di bagian **Penggunaan kembali hasil kueri** pada editor kueri. Ini harus dilakukan untuk setiap kueri yang ingin Anda gunakan kembali kueri.

**catatan**  
Fitur ini mengharuskan instans Athena Anda berada di engine versi 3. Untuk informasi selengkapnya, lihat [Mengubah versi mesin Athena](https://docs.aws.amazon.com/athena/latest/ug/engine-versions-changing.html) di Panduan Pengguna *Amazon Athena*.