Manages an Observe dataset. User-defined datasets take a datastream’s dataset and transform its data using OPAL.

Example Usage

data "observe_workspace" "default" {
  name = "Default"

data "observe_dataset" "observation" {
  workspace = data.observe_workspace.default.oid
  name      = "Observation"

resource "observe_dataset" "http_observations" {
  workspace = data.observe_workspace.default.oid
  name      = "HTTP observations"

  inputs = {
    "observation" = data.observe_dataset.observation.oid

  stage {
    pipeline = <<-EOT
      filter OBSERVATION_KIND = "http"



  • inputs (Map of String) The inputs map binds dataset OIDs to labels which can be referenced within stage pipelines.

  • name (String) Dataset name. Must be unique within workspace.

  • stage (Block List, Min: 1) A stage processes an input according to the provided pipeline. If no input is provided, a stage will implicitly follow on from the result of its predecessor. (see below for nested schema)

  • workspace (String) OID of the workspace this object is contained in.


  • acceleration_disabled (Boolean) Disables periodic materialization of the dataset

  • description (String) Dataset description.

  • freshness (String) Target freshness for results. Reducing the freshness will increase the frequency with which queries are run, which incurs higher transform costs.

  • icon_url (String) Icon to be displayed for this object. Icons are sourced from the fluency-filled icon set.

  • on_demand_materialization_length (String) The maximum on-demand materialization length for the dataset.

  • path_cost (Number) Path cost incurred by this dataset when computing graph link. Increasing this value will reduce the preference for using this dataset when computing paths between two datasets.


  • id (String) The ID of this resource.

  • oid (String) OID (Observe ID) for this object. This is the canonical identifier that should be used when referring to this object in terraform manifests.

Nested Schema for stage


  • alias (String) The stage alias is the label by which subsequent stages can refer to the results of this stage.

  • input (String) The stage input defines what input should be used as a starting point for the stage pipeline. It must refer to a label contained in inputs, or a previous stage alias. The stage input can be omitted if inputs contains a single element.

  • output_stage (Boolean) A boolean flag used to specify the output stage. Should be used only for a stage preceding the last stage. The last stage is an output stage by default.

  • pipeline (String) An OPAL snippet defining a transformation on the selected input.


Import is supported using the following syntax:

terraform import observe_dataset.example 1414010