kaskada.query

Module Contents

Classes

QueryResource

ResponseType

Generic enumeration.

Functions

create_query(expression[, result_behavior, ...])

Performs a query

execute_create_query(request, client)

Executes a create query request using the streaming request format

get_query(query_id[, client])

Gets a query by query ID

list_queries([search, client])

Lists all queries the user has previously performed

Attributes

logger

logger[source]
class QueryResource(query)[source]

Bases: object

Parameters:

query (kaskada.kaskada.v1alpha.query_service_pb2.Query) –

CURRENT_DATA_TOKEN = ''[source]
to_query_request()[source]
run(data_token=None, dry_run=False, experimental_features=False, client=None)[source]
Parameters:

client (Optional[kaskada.client.Client]) –

run_with_latest(dry_run=False, experimental_features=False)[source]
class ResponseType[source]

Bases: enum.Enum

Generic enumeration.

Derive from this class to define new enumerations.

FILE_TYPE_PARQUET = 1[source]
FILE_TYPE_CSV = 2[source]
create_query(expression, result_behavior='all-results', response_as=ResponseType.FILE_TYPE_PARQUET, data_token_id=None, dry_run=False, changed_since_time=None, final_result_time=None, limits=None, slice_filter=None, experimental=False, client=None)[source]

Performs a query

Parameters:
  • expression (str) – A Fenl expression to compute

  • result_behavior (str, optional) – Determines which results are returned. Either “all-results” (default), or “final-results” which returns only the final values for each entity.

  • response_as (ResponseType) – Determines how the response is returned. Either “parquet” (default) or “csv”.

  • data_token_id (str, optional) – Enables repeatable queries. Queries performed against the same dataToken are always run against the same input data.

  • dry_run (bool, optional) – When True, the query is validated and if there are no errors, the resultant schema is returned. No actual computation of results is performed.

  • changed_since_time (datetime.datetime, optional) – Time bound (inclusive) after which results will be output.

  • final_result_time (Union[str, datetime.datetime], optional) – Time bound (inclusive) at which results will be output.

  • limits (pb.QueryRequest.Limits, optional) – Configure limits on the output set.

  • slice_filter (SliceFilter, optional) – How to slice the input data for the query

  • experimental (bool) – When True, then experimental features are allowed. Data returned when using this flag is not guaranteed to be correct. Default to False

  • client (Client, optional) – The Kaskada Client. Defaults to kaskada.KASKADA_DEFAULT_CLIENT.

Returns:

query_pb.CreateQueryResponse

Return type:

kaskada.kaskada.v1alpha.query_service_pb2.CreateQueryResponse

execute_create_query(request, client)[source]

Executes a create query request using the streaming request format

Parameters:
  • request (kaskada.kaskada.v1alpha.query_service_pb2.CreateQueryRequest) –

  • client (kaskada.client.Client) –

Return type:

kaskada.kaskada.v1alpha.query_service_pb2.CreateQueryResponse

get_query(query_id, client=None)[source]

Gets a query by query ID :param query_id: The target query ID :type query_id: str :param client: The Kaskada Client. Defaults to kaskada.KASKADA_DEFAULT_CLIENT. :type client: Client, optional

Raises:

NotImplementedError

Returns:

query_pb.GetQueryResponse

Parameters:
list_queries(search=None, client=None)[source]

Lists all queries the user has previously performed

Parameters:
  • search (str) – The search parameter to filter queries by. Defaults to None.

  • client (Client, optional) – The Kaskada Client. Defaults to kaskada.KASKADA_DEFAULT_CLIENT.

Raises:

NotImplementedError

Returns:

query_pb.ListQueryResponse