Per funzionalità simili a Amazon Timestream for, prendi in considerazione Amazon Timestream LiveAnalytics per InfluxDB. Offre un'acquisizione semplificata dei dati e tempi di risposta alle query di una sola cifra di millisecondi per analisi in tempo reale. Scopri di più qui.
Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Query
Queryè un'operazione sincrona che consente di eseguire una query sui dati di Amazon Timestream.
Se abilitataQueryInsights, questa API restituisce anche informazioni e metriche relative alla query che hai eseguito. QueryInsightsaiuta a ottimizzare le prestazioni della query. Per ulteriori informazioni suQueryInsights, consulta Using query insights per ottimizzare le query in Amazon Timestream.
Nota
Il numero massimo di richieste Query API che puoi effettuare con QueryInsights enabled è 1 query al secondo (QPS). Se superi questa frequenza di query, potrebbe verificarsi una limitazione.
Queryscadrà dopo 60 secondi. È necessario aggiornare il timeout predefinito nell'SDK per supportare un timeout di 60 secondi. Per i dettagli, consulta l'esempio di codice.
La richiesta di interrogazione avrà esito negativo nei seguenti casi:
-
Se invii una
Queryrichiesta con lo stesso token client al di fuori della finestra di idempotenza di 5 minuti. -
Se invii una
Queryrichiesta con lo stesso token client, ma modifichi altri parametri, entro la finestra di idempotenza di 5 minuti. -
Se la dimensione della riga (inclusi i metadati della query) supera 1 MB, la query avrà esito negativo e verrà visualizzato il seguente messaggio di errore:
Query aborted as max page response size has been exceeded by the output result row -
Se il principale IAM dell'iniziatore della query e il lettore dei risultati non coincidono, l'iniziatore and/or della query e il lettore dei risultati non hanno la stessa stringa di query nelle richieste di query, la query avrà esito negativo e restituirà un errore.
Invalid pagination token
Sintassi della richiesta
{
"ClientToken": "string",
"MaxRows": number,
"NextToken": "string",
"QueryInsights": {
"Mode": "string"
},
"QueryString": "string"
}
Parametri della richiesta
Per informazioni sui parametri comuni per tutte le azioni, consulta Parametri comuni.
La richiesta accetta i seguenti dati in formato JSON.
- ClientToken
-
Stringa unica, con distinzione tra maiuscole e minuscole, contenente un massimo di 64 caratteri ASCII, specificata quando viene effettuata una richiesta.
QueryFornire unClientTokenrende la chiamata idempotente.QueryCiò significa che l'esecuzione ripetuta della stessa query produrrà lo stesso risultato. In altre parole, fare piùQueryrichieste identiche ha lo stesso effetto di fare una singola richiesta. Quando si utilizzaClientTokenin una query, tenete presente quanto segue:-
Se l'API Query viene istanziata senza un
ClientToken, Query SDK genera un file perClientTokenconto dell'utente. -
Se la
Querychiamata contiene soloClientTokenma non include aNextToken, si presume che tale invocazione diQuerysia l'esecuzione di una nuova query. -
Se la chiamata contiene
NextToken, si presume che quella particolare invocazione sia una chiamata successiva di una precedente chiamata all'API Query e viene restituito un set di risultati. -
Dopo 4 ore, qualsiasi richiesta con lo stesso valore
ClientTokenviene trattata come una nuova richiesta.
▬Tipo: stringa
Vincoli di lunghezza: lunghezza minima di 32. La lunghezza massima è 128 caratteri.
Campo obbligatorio: no
-
- MaxRows
-
Il numero totale di righe da restituire nell'
Queryoutput. L'esecuzione iniziale diQuerycon unMaxRowsvalore specificato restituirà il set di risultati della query in due casi:-
La dimensione del risultato è inferiore a
1MB. -
Il numero di righe nel set di risultati è inferiore al valore di
maxRows.
Altrimenti, l'invocazione iniziale di restituisce
Querysolo aNextToken, che può quindi essere utilizzato nelle chiamate successive per recuperare il set di risultati. Per riprendere l'impaginazione, fornite ilNextTokenvalore nel comando successivo.Se la dimensione della riga è grande (ad esempio una riga ha molte colonne), Timestream può restituire un numero inferiore di righe per evitare che la dimensione della risposta superi il limite di 1 MB. Se non
MaxRowsviene fornito, Timestream invierà il numero di righe necessario per soddisfare il limite di 1 MB.Tipo: integer
Intervallo valido: valore minimo di 1. Valore massimo pari a 1000.
Campo obbligatorio: no
-
- NextToken
-
Un token di impaginazione utilizzato per restituire una serie di risultati. Quando l'
QueryAPI viene richiamata utilizzandoNextToken, si presume che quella particolare invocazione sia una chiamata successiva di una chiamata precedente a e viene restituito un set diQueryrisultati. Tuttavia, se laQuerychiamata contiene solo il, si presume che tale invocazione sia una nuova esecuzione diQueryuna query.ClientTokenQuando si utilizza NextToken in una query, tenere presente quanto segue:
-
Un token di impaginazione può essere utilizzato per un massimo di cinque
Querychiamate, OPPURE per una durata massima di 1 ora, a seconda dell'evento che si verifica per primo. -
L'utilizzo dello stesso
NextTokenrestituirà lo stesso set di record. Per continuare a sfogliare il set di risultati, è necessario utilizzare i più recenti.nextToken -
Supponiamo che una
Querychiamata restituisca due valori e.NextTokenTokenATokenBSeTokenBviene utilizzato in unaQuerychiamata successiva, viene invalidato e non può essereTokenAriutilizzato. -
Per richiedere un set di risultati precedente da una query dopo l'inizio dell'impaginazione, è necessario richiamare nuovamente l'API Query.
-
L'ultima
NextTokendeve essere utilizzata per impaginare fino a quando nonnullviene restituita, a quel punto deve essere usata una nuovaNextToken. -
Se il principale IAM dell'iniziatore di query e il lettore dei risultati non sono gli stessi and/or , l'iniziatore di query e il lettore di risultati non hanno la stessa stringa di query nelle richieste di query, la query avrà esito negativo e verrà generato un errore.
Invalid pagination token
▬Tipo: stringa
Limitazioni di lunghezza: lunghezza minima di 1. La lunghezza massima è 2048 caratteri.
Campo obbligatorio: no
-
- QueryInsights
-
Incapsula le impostazioni per l'abilitazione.
QueryInsightsL'attivazione
QueryInsightsrestituisce approfondimenti e metriche oltre ai risultati delle query per la query eseguita. È possibile utilizzarloQueryInsightsper ottimizzare le prestazioni delle query.Tipo: oggetto QueryInsights
Campo obbligatorio: no
- QueryString
-
La query che deve essere eseguita da Timestream.
▬Tipo: stringa
Limitazioni di lunghezza: lunghezza minima pari a 1. Lunghezza massima di 262144.
Campo obbligatorio: sì
Sintassi della risposta
{
"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"
}
]
}
]
}
]
}
Elementi di risposta
Se l'operazione riesce, il servizio restituisce una risposta HTTP 200.
I dati seguenti vengono restituiti in formato JSON mediante il servizio.
- ColumnInfo
-
I tipi di dati delle colonne del set di risultati restituito.
Tipo: matrice di oggetti ColumnInfo
- NextToken
-
Un token di impaginazione che può essere riutilizzato durante una
Querychiamata per ottenere il successivo set di risultati.▬Tipo: stringa
Limitazioni di lunghezza: lunghezza minima di 1. La lunghezza massima è 2048 caratteri.
- QueryId
-
Un ID univoco per la query specificata.
▬Tipo: stringa
Limitazioni di lunghezza: lunghezza minima pari a 1. La lunghezza massima è 64 caratteri.
Modello:
[a-zA-Z0-9]+ - QueryInsightsResponse
-
Incapsula
QueryInsightscontenente informazioni e metriche relative alla query che hai eseguito.Tipo: oggetto QueryInsightsResponse
- QueryStatus
-
Informazioni sullo stato della query, inclusi lo stato di avanzamento e i byte scansionati.
Tipo: oggetto QueryStatus
- Rows
-
Le righe del set di risultati restituite dalla query.
Tipo: matrice di oggetti Row
Errori
Per informazioni sugli errori comuni a tutte le operazioni, consultare Errori comuni.
- AccessDeniedException
-
Non disponi delle autorizzazioni necessarie per accedere alle impostazioni dell'account.
Codice di stato HTTP: 400
- ConflictException
-
Impossibile visualizzare i risultati di un sondaggio per una query annullata.
Codice di stato HTTP: 400
- InternalServerException
-
Si è verificato un errore interno del server durante l'elaborazione della richiesta.
Codice di stato HTTP: 400
- InvalidEndpointException
-
L'endpoint richiesto non è valido.
Codice di stato HTTP: 400
- QueryExecutionException
-
Timestream non è riuscito a eseguire la query con successo.
Codice di stato HTTP: 400
- ThrottlingException
-
La richiesta è stata limitata a causa di un numero eccessivo di richieste.
Codice di stato HTTP: 400
- ValidationException
-
Richiesta non valida o non valida.
Codice di stato HTTP: 400
Vedi anche
Per ulteriori informazioni sull'utilizzo di questa API in una delle lingue specifiche, consulta quanto segue AWS SDKs: