

Untuk kemampuan serupa dengan Amazon Timestream LiveAnalytics, pertimbangkan Amazon Timestream untuk InfluxDB. Ini menawarkan konsumsi data yang disederhanakan dan waktu respons kueri milidetik satu digit untuk analitik waktu nyata. Pelajari lebih lanjut [di sini](https://docs.aws.amazon.com//timestream/latest/developerguide/timestream-for-influxdb.html).

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

# Query
<a name="API_query_Query"></a>

 `Query`adalah operasi sinkron yang memungkinkan Anda menjalankan kueri terhadap data Amazon Timestream Anda.

Jika Anda mengaktifkan`QueryInsights`, API ini juga menampilkan insight dan metrik yang terkait dengan kueri yang Anda jalankan. `QueryInsights`membantu penyetelan kinerja kueri Anda. Untuk informasi selengkapnya`QueryInsights`, lihat [Menggunakan wawasan kueri untuk mengoptimalkan kueri di Amazon Timestream](https://docs.aws.amazon.com/timestream/latest/developerguide/using-query-insights.html).

**catatan**  
Jumlah maksimum permintaan `Query` API yang diizinkan untuk Anda buat dengan `QueryInsights` diaktifkan adalah 1 kueri per detik (QPS). Jika Anda melebihi tingkat kueri ini, itu mungkin mengakibatkan pelambatan.

 `Query`akan habis setelah 60 detik. Anda harus memperbarui batas waktu default di SDK untuk mendukung batas waktu 60 detik. Lihat [contoh kode](https://docs.aws.amazon.com/timestream/latest/developerguide/code-samples.run-query.html) untuk detailnya. 

Permintaan kueri Anda akan gagal dalam kasus berikut:
+  Jika Anda mengirimkan `Query` permintaan dengan token klien yang sama di luar jendela idempotensi 5 menit. 
+  Jika Anda mengirimkan `Query` permintaan dengan token klien yang sama, tetapi mengubah parameter lain, dalam jendela idempotensi 5 menit. 
+  Jika ukuran baris (termasuk metadata kueri) melebihi 1 MB, maka kueri akan gagal dengan pesan kesalahan berikut: 

   `Query aborted as max page response size has been exceeded by the output result row` 
+  Jika prinsipal IAM dari inisiator kueri dan pembaca hasil tidak sama and/or dengan inisiator kueri dan pembaca hasil tidak memiliki string kueri yang sama dalam permintaan kueri, kueri akan gagal dengan kesalahan. `Invalid pagination token` 

## Sintaksis Permintaan
<a name="API_query_Query_RequestSyntax"></a>

```
{
   "ClientToken": "string",
   "MaxRows": number,
   "NextToken": "string",
   "QueryInsights": { 
      "Mode": "string"
   },
   "QueryString": "string"
}
```

## Parameter Permintaan
<a name="API_query_Query_RequestParameters"></a>

Untuk informasi tentang parameter yang umum untuk semua tindakan, lihat [Parameter Umum](CommonParameters.md).

Permintaan menerima data berikut dalam format JSON.

 ** [ClientToken](#API_query_Query_RequestSyntax) **   <a name="timestream-query_Query-request-ClientToken"></a>
 String unik dan peka huruf besar/kecil hingga 64 karakter ASCII yang ditentukan saat permintaan dibuat. `Query` `ClientToken`Memberikan panggilan untuk `Query` *idempoten*. Ini berarti bahwa menjalankan kueri yang sama berulang kali akan menghasilkan hasil yang sama. Dengan kata lain, membuat beberapa `Query` permintaan identik memiliki efek yang sama seperti membuat permintaan tunggal. Saat menggunakan `ClientToken` dalam kueri, perhatikan hal berikut:   
+  Jika Query API dipakai tanpa a`ClientToken`, Query SDK akan menghasilkan `ClientToken` atas nama Anda.
+ Jika `Query` pemanggilan hanya berisi `ClientToken` tetapi tidak menyertakan a`NextToken`, pemanggilan tersebut diasumsikan sebagai `Query` kueri baru yang dijalankan.
+ Jika pemanggilan berisi`NextToken`, pemanggilan tertentu diasumsikan sebagai pemanggilan berikutnya dari panggilan sebelumnya ke Query API, dan kumpulan hasil dikembalikan.
+  Setelah 4 jam, permintaan apa pun dengan hal `ClientToken` yang sama diperlakukan sebagai permintaan baru. 
Tipe: String  
Kendala Panjang: Panjang minimum 32. Panjang maksimum 128.  
Wajib: Tidak

 ** [MaxRows](#API_query_Query_RequestSyntax) **   <a name="timestream-query_Query-request-MaxRows"></a>
 Jumlah total baris yang akan dikembalikan dalam `Query` output. Proses awal `Query` dengan `MaxRows` nilai yang ditentukan akan mengembalikan kumpulan hasil kueri dalam dua kasus:   
+ Ukuran hasilnya kurang dari`1MB`.
+ Jumlah baris dalam set hasil kurang dari nilai`maxRows`.
Jika tidak, pemanggilan awal `Query` hanya mengembalikan a`NextToken`, yang kemudian dapat digunakan dalam panggilan berikutnya untuk mengambil set hasil. Untuk melanjutkan pagination, berikan `NextToken` nilai dalam perintah berikutnya.  
Jika ukuran baris besar (misalnya baris memiliki banyak kolom), Timestream dapat mengembalikan lebih sedikit baris agar ukuran respons tidak melebihi batas 1 MB. Jika tidak `MaxRows` disediakan, Timestream akan mengirimkan jumlah baris yang diperlukan untuk memenuhi batas 1 MB.  
Tipe: Bilangan Bulat  
Rentang yang Valid: Nilai minimum 1. Nilai maksimum 1000.  
Wajib: Tidak

 ** [NextToken](#API_query_Query_RequestSyntax) **   <a name="timestream-query_Query-request-NextToken"></a>
 Token pagination digunakan untuk mengembalikan serangkaian hasil. Ketika `Query` API dipanggil menggunakan`NextToken`, pemanggilan tertentu diasumsikan sebagai pemanggilan berikutnya dari panggilan sebelumnya`Query`, dan kumpulan hasil dikembalikan. Namun, jika `Query` pemanggilan hanya berisi`ClientToken`, pemanggilan tersebut `Query` diasumsikan sebagai kueri baru yang dijalankan.   
Perhatikan hal berikut saat menggunakan NextToken dalam kueri:  
+ Token pagination dapat digunakan hingga lima `Query` pemanggilan, ATAU untuk durasi hingga 1 jam — mana yang lebih dulu.
+ Menggunakan yang sama `NextToken` akan mengembalikan set catatan yang sama. Untuk terus melakukan paginasi melalui set hasil, Anda harus menggunakan yang terbaru. `nextToken`
+ Misalkan `Query` pemanggilan mengembalikan dua `NextToken` nilai, `TokenA` dan. `TokenB` Jika `TokenB` digunakan dalam `Query` pemanggilan berikutnya, maka tidak valid dan `TokenA` tidak dapat digunakan kembali.
+ Untuk meminta set hasil sebelumnya dari kueri setelah pagination dimulai, Anda harus memanggil kembali Query API.
+ Yang terbaru `NextToken` harus digunakan untuk paginasi sampai `null` dikembalikan, pada titik mana yang baru `NextToken` harus digunakan.
+  Jika prinsipal IAM dari inisiator kueri dan pembaca hasil tidak sama and/or dengan inisiator kueri dan pembaca hasil tidak memiliki string kueri yang sama dalam permintaan kueri, kueri akan gagal dengan kesalahan. `Invalid pagination token` 
Tipe: String  
Batasan Panjang: Panjang minimum 1. Panjang maksimum 2048.  
Wajib: Tidak

 ** [QueryInsights](#API_query_Query_RequestSyntax) **   <a name="timestream-query_Query-request-QueryInsights"></a>
Merangkum pengaturan untuk mengaktifkan. `QueryInsights`  
Mengaktifkan `QueryInsights` mengembalikan wawasan dan metrik selain hasil kueri untuk kueri yang Anda jalankan. Anda dapat menggunakan `QueryInsights` untuk menyetel kinerja kueri Anda.  
Tipe: Objek [QueryInsights](API_query_QueryInsights.md)  
Wajib: Tidak

 ** [QueryString](#API_query_Query_RequestSyntax) **   <a name="timestream-query_Query-request-QueryString"></a>
 Query yang akan dijalankan oleh Timestream.   
Tipe: String  
Batasan Panjang: Panjang minimum 1. Panjang maksimum 262144.  
Wajib: Ya

## Sintaksis Respons
<a name="API_query_Query_ResponseSyntax"></a>

```
{
   "ColumnInfo": [ 
      { 
         "Name": "string",
         "Type": { 
            "ArrayColumnInfo": "ColumnInfo",
            "RowColumnInfo": [ 
               "ColumnInfo"
            ],
            "ScalarType": "string",
            "TimeSeriesMeasureValueColumnInfo": "ColumnInfo"
         }
      }
   ],
   "NextToken": "string",
   "QueryId": "string",
   "QueryInsightsResponse": { 
      "OutputBytes": number,
      "OutputRows": number,
      "QuerySpatialCoverage": { 
         "Max": { 
            "PartitionKey": [ "string" ],
            "TableArn": "string",
            "Value": number
         }
      },
      "QueryTableCount": number,
      "QueryTemporalRange": { 
         "Max": { 
            "TableArn": "string",
            "Value": number
         }
      },
      "UnloadPartitionCount": number,
      "UnloadWrittenBytes": number,
      "UnloadWrittenRows": number
   },
   "QueryStatus": { 
      "CumulativeBytesMetered": number,
      "CumulativeBytesScanned": number,
      "ProgressPercentage": number
   },
   "Rows": [ 
      { 
         "Data": [ 
            { 
               "ArrayValue": [ 
                  "Datum"
               ],
               "NullValue": boolean,
               "RowValue": "Row",
               "ScalarValue": "string",
               "TimeSeriesValue": [ 
                  { 
                     "Time": "string",
                     "Value": "Datum"
                  }
               ]
            }
         ]
      }
   ]
}
```

## Elemen Respons
<a name="API_query_Query_ResponseElements"></a>

Jika tindakan berhasil, layanan mengirimkan kembali respons HTTP 200.

Layanan mengembalikan data berikut dalam format JSON.

 ** [ColumnInfo](#API_query_Query_ResponseSyntax) **   <a name="timestream-query_Query-response-ColumnInfo"></a>
 Tipe data kolom dari set hasil yang dikembalikan.   
Tipe: Array objek [ColumnInfo](API_query_ColumnInfo.md)

 ** [NextToken](#API_query_Query_ResponseSyntax) **   <a name="timestream-query_Query-response-NextToken"></a>
 Token pagination yang dapat digunakan lagi pada `Query` panggilan untuk mendapatkan set hasil berikutnya.   
Tipe: String  
Batasan Panjang: Panjang minimum 1. Panjang maksimum 2048.

 ** [QueryId](#API_query_Query_ResponseSyntax) **   <a name="timestream-query_Query-response-QueryId"></a>
 ID unik untuk kueri yang diberikan.   
Tipe: String  
Batasan Panjang: Panjang minimum 1. Panjang maksimum adalah 64.  
Pola: `[a-zA-Z0-9]+` 

 ** [QueryInsightsResponse](#API_query_Query_ResponseSyntax) **   <a name="timestream-query_Query-response-QueryInsightsResponse"></a>
Merangkum `QueryInsights` berisi wawasan dan metrik yang terkait dengan kueri yang Anda jalankan.  
Tipe: Objek [QueryInsightsResponse](API_query_QueryInsightsResponse.md)

 ** [QueryStatus](#API_query_Query_ResponseSyntax) **   <a name="timestream-query_Query-response-QueryStatus"></a>
Informasi tentang status kueri, termasuk kemajuan dan byte yang dipindai.  
Tipe: Objek [QueryStatus](API_query_QueryStatus.md)

 ** [Rows](#API_query_Query_ResponseSyntax) **   <a name="timestream-query_Query-response-Rows"></a>
 Hasil set baris dikembalikan oleh query.   
Tipe: Array objek [Row](API_query_Row.md)

## Kesalahan
<a name="API_query_Query_Errors"></a>

Untuk informasi tentang kesalahan yang umum untuk semua tindakan, lihat [Kesalahan Umum](CommonErrors.md).

 ** AccessDeniedException **   
Anda tidak memiliki izin yang diperlukan untuk mengakses pengaturan akun.  
Kode Status HTTP: 400

 ** ConflictException **   
 Tidak dapat melakukan polling hasil untuk kueri yang dibatalkan.   
Kode Status HTTP: 400

 ** InternalServerException **   
Terjadi kesalahan server internal saat memproses permintaan.  
Kode Status HTTP: 400

 ** InvalidEndpointException **   
Endpoint yang diminta tidak valid.  
Kode Status HTTP: 400

 ** QueryExecutionException **   
 Timestream tidak dapat menjalankan kueri dengan sukses.   
Kode Status HTTP: 400

 ** ThrottlingException **   
Permintaan itu dibatasi karena permintaan yang berlebihan.  
Kode Status HTTP: 400

 ** ValidationException **   
 Permintaan tidak valid atau cacat.   
Kode Status HTTP: 400

## Lihat Juga
<a name="API_query_Query_SeeAlso"></a>

Untuk informasi selengkapnya tentang penggunaan API ini di salah satu bahasa khusus AWS SDKs, lihat berikut ini:
+  [AWS Antarmuka Baris Perintah V2](https://docs.aws.amazon.com/goto/cli2/timestream-query-2018-11-01/Query) 
+  [AWS SDK for .NET V4](https://docs.aws.amazon.com/goto/DotNetSDKV4/timestream-query-2018-11-01/Query) 
+  [AWS SDK for C\$1\$1](https://docs.aws.amazon.com/goto/SdkForCpp/timestream-query-2018-11-01/Query) 
+  [AWS SDK for Go v2](https://docs.aws.amazon.com/goto/SdkForGoV2/timestream-query-2018-11-01/Query) 
+  [AWS SDK for Java V2](https://docs.aws.amazon.com/goto/SdkForJavaV2/timestream-query-2018-11-01/Query) 
+  [AWS SDK untuk V3 JavaScript ](https://docs.aws.amazon.com/goto/SdkForJavaScriptV3/timestream-query-2018-11-01/Query) 
+  [AWS SDK para Kotlin](https://docs.aws.amazon.com/goto/SdkForKotlin/timestream-query-2018-11-01/Query) 
+  [AWS SDK for PHP V3](https://docs.aws.amazon.com/goto/SdkForPHPV3/timestream-query-2018-11-01/Query) 
+  [AWS SDK untuk Python](https://docs.aws.amazon.com/goto/boto3/timestream-query-2018-11-01/Query) 
+  [AWS SDK for Ruby V3](https://docs.aws.amazon.com/goto/SdkForRubyV3/timestream-query-2018-11-01/Query) 