Details

    • Type: Task
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: 0.6.0
    • Fix Version/s: 0.7.0
    • Component/s: Core
    • Labels:
      None

      Description

      The schema of the data table is,

      CREATE TABLE ${keyspace}.data (
          tenant_id text,
          type int,
          metric text,
          interval text,
          dpart bigint,
          time timeuuid,
          data_retention int static,
          m_tags map<text, text> static,
          n_value double,
          availability blob,
          l_value bigint,
          aggregates set<frozen <aggregate_data>>,
          tags map<text, text>,
          PRIMARY KEY ((tenant_id, type, metric, interval, dpart), time)
      )
      WITH CLUSTERING ORDER BY (time DESC);
      

      The m_tags column stores metric tags. The reason for storing metric tags in the data table was to make querying for data points more efficient. When querying for data points, we want to include any metric tags in the results. We currently store all data points for a metric in a single, physical partition. With HWKMETRICS-189 however, data points will be bucketed by day, meaning data points for each day will go into separate partitions. This makes storing metric tags in the data table impractical.

      When we query for data points, we should instead query the metrics_idx table in parallel to load tags and any other metric meta data like data retention settings.

        Gliffy Diagrams

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  nstefan Stefan Negrea
                  Reporter:
                  john.sanda John Sanda
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  1 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved: