Expand description
Data structures used by operation inputs/outputs.
Modules§
- Builders
- Error types that Amazon Timestream Query can respond with.
Structs§
Contains the metadata for query results such as the column names, data types, and other attributes.
Datum represents a single data point in a query result.
This type is used to map column(s) from the query result to a dimension in the destination table.
Represents an available endpoint against which to make API calls against, as well as the TTL for that endpoint.
Configuration required for error reporting.
This contains the location of the error report for a single scheduled query call.
Statistics for a single scheduled query run.
MixedMeasureMappings are mappings that can be used to ingest data into a mixture of narrow and multi measures in the derived table.
Attribute mapping for MULTI value measures.
Only one of MixedMeasureMappings or MultiMeasureMappings is to be provided. MultiMeasureMappings can be used to ingest data as multi measures in the derived table.
Notification configuration for a scheduled query. A notification is sent by Timestream when a scheduled query is created, its state is updated or when it is deleted.
Mapping for named parameters.
QueryInsights
is a performance tuning feature that helps you optimize your queries, reducing costs and improving performance. WithQueryInsights
, you can assess the pruning efficiency of your queries and identify areas for improvement to enhance query performance. WithQueryInsights
, you can also analyze the effectiveness of your queries in terms of temporal and spatial pruning, and identify opportunities to improve performance. Specifically, you can evaluate how well your queries use time-based and partition key-based indexing strategies to optimize data retrieval. To optimize query performance, it's essential that you fine-tune both the temporal and spatial parameters that govern query execution.The key metrics provided by
QueryInsights
areQuerySpatialCoverage
andQueryTemporalRange
.QuerySpatialCoverage
indicates how much of the spatial axis the query scans, with lower values being more efficient.QueryTemporalRange
shows the time range scanned, with narrower ranges being more performant.Benefits of QueryInsights
The following are the key benefits of using
QueryInsights
:-
Identifying inefficient queries –
QueryInsights
provides information on the time-based and attribute-based pruning of the tables accessed by the query. This information helps you identify the tables that are sub-optimally accessed. -
Optimizing your data model and partitioning – You can use the
QueryInsights
information to access and fine-tune your data model and partitioning strategy. -
Tuning queries –
QueryInsights
highlights opportunities to use indexes more effectively.
The maximum number of
Query
API requests you're allowed to make withQueryInsights
enabled is 1 query per second (QPS). If you exceed this query rate, it might result in throttling.-
Provides various insights and metrics related to the query that you executed.
Provides insights into the spatial coverage of the query, including the table with sub-optimal (max) spatial pruning. This information can help you identify areas for improvement in your partitioning strategy to enhance spatial pruning
For example, you can do the following with the
QuerySpatialCoverage
information:-
Add measure_name or use customer-defined partition key (CDPK) predicates.
-
If you've already done the preceding action, remove functions around them or clauses, such as
LIKE
.
-
Provides insights into the table with the most sub-optimal spatial range scanned by your query.
Information about the status of the query, including progress and bytes scanned.
Provides insights into the temporal range of the query, including the table with the largest (max) time range.
Provides insights into the table with the most sub-optimal temporal pruning scanned by your query.
Represents a single row in the query results.
Details on S3 location for error reports that result from running a query.
S3 report location for the scheduled query run.
Configuration of the schedule of the query.
Scheduled Query
Structure that describes scheduled query.
Encapsulates settings for enabling
QueryInsights
on anExecuteScheduledQueryRequest
.Provides various insights and metrics related to the
ExecuteScheduledQueryRequest
that was executed.Run summary for the scheduled query
Details of the column that is returned by the query.
Details on SNS that are required to send the notification.
A tag is a label that you assign to a Timestream database and/or table. Each tag consists of a key and an optional value, both of which you define. Tags enable you to categorize databases and/or tables, for example, by purpose, owner, or environment.
Configuration used for writing the output of a query.
Destination details to write data for a target data source. Current supported data source is Timestream.
The timeseries data type represents the values of a measure over time. A time series is an array of rows of timestamps and measure values, with rows sorted in ascending order of time. A TimeSeriesDataPoint is a single data point in the time series. It represents a tuple of (time, measure value) in a time series.
Configuration to write data into Timestream database and table. This configuration allows the user to map the query result select columns into the destination table columns.
Destination for scheduled query.
Contains the data type of a column in a query result set. The data type can be scalar or complex. The supported scalar data types are integers, Boolean, string, double, timestamp, date, time, and intervals. The supported complex data types are arrays, rows, and timeseries.
Enums§
- When writing a match expression against
DimensionValueType
, it is important to ensure your code is forward-compatible. That is, if a match arm handles a case for a feature that is supported by the service but has not been represented as an enum variant in a current version of SDK, your code should continue to work when you upgrade SDK to a future version in which the enum does include a variant for that feature. - When writing a match expression against
MeasureValueType
, it is important to ensure your code is forward-compatible. That is, if a match arm handles a case for a feature that is supported by the service but has not been represented as an enum variant in a current version of SDK, your code should continue to work when you upgrade SDK to a future version in which the enum does include a variant for that feature. - When writing a match expression against
QueryInsightsMode
, it is important to ensure your code is forward-compatible. That is, if a match arm handles a case for a feature that is supported by the service but has not been represented as an enum variant in a current version of SDK, your code should continue to work when you upgrade SDK to a future version in which the enum does include a variant for that feature. - When writing a match expression against
QueryPricingModel
, it is important to ensure your code is forward-compatible. That is, if a match arm handles a case for a feature that is supported by the service but has not been represented as an enum variant in a current version of SDK, your code should continue to work when you upgrade SDK to a future version in which the enum does include a variant for that feature. - When writing a match expression against
S3EncryptionOption
, it is important to ensure your code is forward-compatible. That is, if a match arm handles a case for a feature that is supported by the service but has not been represented as an enum variant in a current version of SDK, your code should continue to work when you upgrade SDK to a future version in which the enum does include a variant for that feature. - When writing a match expression against
ScalarMeasureValueType
, it is important to ensure your code is forward-compatible. That is, if a match arm handles a case for a feature that is supported by the service but has not been represented as an enum variant in a current version of SDK, your code should continue to work when you upgrade SDK to a future version in which the enum does include a variant for that feature. - When writing a match expression against
ScalarType
, it is important to ensure your code is forward-compatible. That is, if a match arm handles a case for a feature that is supported by the service but has not been represented as an enum variant in a current version of SDK, your code should continue to work when you upgrade SDK to a future version in which the enum does include a variant for that feature. - When writing a match expression against
ScheduledQueryInsightsMode
, it is important to ensure your code is forward-compatible. That is, if a match arm handles a case for a feature that is supported by the service but has not been represented as an enum variant in a current version of SDK, your code should continue to work when you upgrade SDK to a future version in which the enum does include a variant for that feature. - When writing a match expression against
ScheduledQueryRunStatus
, it is important to ensure your code is forward-compatible. That is, if a match arm handles a case for a feature that is supported by the service but has not been represented as an enum variant in a current version of SDK, your code should continue to work when you upgrade SDK to a future version in which the enum does include a variant for that feature. - When writing a match expression against
ScheduledQueryState
, it is important to ensure your code is forward-compatible. That is, if a match arm handles a case for a feature that is supported by the service but has not been represented as an enum variant in a current version of SDK, your code should continue to work when you upgrade SDK to a future version in which the enum does include a variant for that feature.