timestream-query

class moto.timestreamquery.models.TimestreamQueryBackend(region_name: str, account_id: str)

Implementation of TimestreamQuery APIs.

Implemented features for this service

  • [ ] cancel_query

  • [X] create_scheduled_query

  • [X] delete_scheduled_query

  • [ ] describe_account_settings

  • [X] describe_endpoints

  • [X] describe_scheduled_query

  • [ ] execute_scheduled_query

  • [ ] list_scheduled_queries

  • [ ] list_tags_for_resource

  • [ ] prepare_query

  • [X] query

    Moto does not have a builtin time-series Database, so calling this endpoint will return zero results by default.

    You can use a dedicated API to configuring a queue of expected results.

    An example invocation looks like this:

    first_result = {
        'QueryId': 'some_id',
        'Rows': [...],
        'ColumnInfo': [...],
        'QueryStatus': ...
    }
    result_for_unknown_query_string = {
        'QueryId': 'unknown',
        'Rows': [...],
        'ColumnInfo': [...],
        'QueryStatus': ...
    }
    expected_results = {
        "account_id": "123456789012",  # This is the default - can be omitted
        "region": "us-east-1",  # This is the default - can be omitted
        "results": {
            # Use the exact querystring, and a list of results for it
            # For example
            "SELECT data FROM mytable": [first_result, ...],
            # Use None if the exact querystring is unknown/irrelevant
            None: [result_for_unknown_query_string, ...],
        }
    }
    requests.post(
        "http://motoapi.amazonaws.com/moto-api/static/timestream/query-results",
        json=expected_results,
    )
    

    When calling query(QueryString=’SELECT data FROM mytable’), the first_result will be returned. Call the query again for the second result, and so on.

    If you don’t know the exact query strings, use the None-key. In the above example, when calling SELECT something FROM unknown, there are no results for that specific query, so result_for_unknown_query_string will be returned.

    Results for unknown queries are cached, so calling SELECT something FROM unknown will return the same result.

  • [ ] tag_resource

  • [ ] untag_resource

  • [ ] update_account_settings

  • [X] update_scheduled_query