From 30098613c46130291f3bbb6b791a4b6ffefa320c Mon Sep 17 00:00:00 2001 From: Blargian <41984034+Blargian@users.noreply.github.com> Date: Thu, 2 Jul 2026 18:33:33 +0000 Subject: [PATCH] chore(clickstack): sync OTel schemas from upstream HyperDX --- .../_schema_otel_metrics_exponential_histogram.md | 13 +++++++------ .../_snippets/_schema_otel_metrics_gauge.md | 13 +++++++------ .../_snippets/_schema_otel_metrics_histogram.md | 13 +++++++------ .../_snippets/_schema_otel_metrics_sum.md | 13 +++++++------ .../_snippets/_schema_otel_metrics_summary.md | 11 ++++++----- 5 files changed, 34 insertions(+), 29 deletions(-) diff --git a/docs/use-cases/observability/clickstack/ingesting-data/_snippets/_schema_otel_metrics_exponential_histogram.md b/docs/use-cases/observability/clickstack/ingesting-data/_snippets/_schema_otel_metrics_exponential_histogram.md index f5f9dae3e92..d17e5aafdf8 100644 --- a/docs/use-cases/observability/clickstack/ingesting-data/_snippets/_schema_otel_metrics_exponential_histogram.md +++ b/docs/use-cases/observability/clickstack/ingesting-data/_snippets/_schema_otel_metrics_exponential_histogram.md @@ -10,12 +10,12 @@ CREATE TABLE IF NOT EXISTS ${DATABASE}.otel_metrics_exponential_histogram `ScopeDroppedAttrCount` UInt32 CODEC(ZSTD(1)), `ScopeSchemaUrl` String CODEC(ZSTD(1)), `ServiceName` LowCardinality(String) CODEC(ZSTD(1)), - `MetricName` String CODEC(ZSTD(1)), + `MetricName` LowCardinality(String) CODEC(ZSTD(1)), `MetricDescription` String CODEC(ZSTD(1)), `MetricUnit` String CODEC(ZSTD(1)), `Attributes` Map(LowCardinality(String), String) CODEC(ZSTD(1)), - `StartTimeUnix` DateTime64(9) CODEC(Delta(8), ZSTD(1)), - `TimeUnix` DateTime64(9) CODEC(Delta(8), ZSTD(1)), + `StartTimeUnix` DateTime CODEC(Delta, ZSTD(1)), + `TimeUnix` DateTime CODEC(Delta, ZSTD(1)), `Count` UInt64 CODEC(Delta(8), ZSTD(1)), `Sum` Float64 CODEC(ZSTD(1)), `Scale` Int32 CODEC(ZSTD(1)), @@ -25,7 +25,7 @@ CREATE TABLE IF NOT EXISTS ${DATABASE}.otel_metrics_exponential_histogram `NegativeOffset` Int32 CODEC(ZSTD(1)), `NegativeBucketCounts` Array(UInt64) CODEC(ZSTD(1)), `Exemplars.FilteredAttributes` Array(Map(LowCardinality(String), String)) CODEC(ZSTD(1)), - `Exemplars.TimeUnix` Array(DateTime64(9)) CODEC(ZSTD(1)), + `Exemplars.TimeUnix` Array(DateTime) CODEC(ZSTD(1)), `Exemplars.Value` Array(Float64) CODEC(ZSTD(1)), `Exemplars.SpanId` Array(String) CODEC(ZSTD(1)), `Exemplars.TraceId` Array(String) CODEC(ZSTD(1)), @@ -38,11 +38,12 @@ CREATE TABLE IF NOT EXISTS ${DATABASE}.otel_metrics_exponential_histogram INDEX idx_scope_attr_key mapKeys(ScopeAttributes) TYPE bloom_filter(0.01) GRANULARITY 1, INDEX idx_scope_attr_value mapValues(ScopeAttributes) TYPE bloom_filter(0.01) GRANULARITY 1, INDEX idx_attr_key mapKeys(Attributes) TYPE bloom_filter(0.01) GRANULARITY 1, - INDEX idx_attr_value mapValues(Attributes) TYPE bloom_filter(0.01) GRANULARITY 1 + INDEX idx_attr_value mapValues(Attributes) TYPE bloom_filter(0.01) GRANULARITY 1, + INDEX idx_time_minmax TimeUnix TYPE minmax GRANULARITY 1 ) ENGINE = MergeTree PARTITION BY toDate(TimeUnix) -ORDER BY (ServiceName, MetricName, Attributes, toUnixTimestamp64Nano(TimeUnix)) +ORDER BY (ServiceName, MetricName, toStartOfHour(TimeUnix), cityHash64(Attributes), TimeUnix) TTL toDateTime(TimeUnix) + ${TABLES_TTL} SETTINGS ttl_only_drop_parts = 1; ``` diff --git a/docs/use-cases/observability/clickstack/ingesting-data/_snippets/_schema_otel_metrics_gauge.md b/docs/use-cases/observability/clickstack/ingesting-data/_snippets/_schema_otel_metrics_gauge.md index 6b7553b906a..aaf12db885f 100644 --- a/docs/use-cases/observability/clickstack/ingesting-data/_snippets/_schema_otel_metrics_gauge.md +++ b/docs/use-cases/observability/clickstack/ingesting-data/_snippets/_schema_otel_metrics_gauge.md @@ -10,16 +10,16 @@ CREATE TABLE IF NOT EXISTS ${DATABASE}.otel_metrics_gauge `ScopeDroppedAttrCount` UInt32 CODEC(ZSTD(1)), `ScopeSchemaUrl` String CODEC(ZSTD(1)), `ServiceName` LowCardinality(String) CODEC(ZSTD(1)), - `MetricName` String CODEC(ZSTD(1)), + `MetricName` LowCardinality(String) CODEC(ZSTD(1)), `MetricDescription` String CODEC(ZSTD(1)), `MetricUnit` String CODEC(ZSTD(1)), `Attributes` Map(LowCardinality(String), String) CODEC(ZSTD(1)), - `StartTimeUnix` DateTime64(9) CODEC(Delta(8), ZSTD(1)), - `TimeUnix` DateTime64(9) CODEC(Delta(8), ZSTD(1)), + `StartTimeUnix` DateTime CODEC(Delta, ZSTD(1)), + `TimeUnix` DateTime CODEC(Delta, ZSTD(1)), `Value` Float64 CODEC(ZSTD(1)), `Flags` UInt32 CODEC(ZSTD(1)), `Exemplars.FilteredAttributes` Array(Map(LowCardinality(String), String)) CODEC(ZSTD(1)), - `Exemplars.TimeUnix` Array(DateTime64(9)) CODEC(ZSTD(1)), + `Exemplars.TimeUnix` Array(DateTime) CODEC(ZSTD(1)), `Exemplars.Value` Array(Float64) CODEC(ZSTD(1)), `Exemplars.SpanId` Array(String) CODEC(ZSTD(1)), `Exemplars.TraceId` Array(String) CODEC(ZSTD(1)), @@ -28,11 +28,12 @@ CREATE TABLE IF NOT EXISTS ${DATABASE}.otel_metrics_gauge INDEX idx_scope_attr_key mapKeys(ScopeAttributes) TYPE bloom_filter(0.01) GRANULARITY 1, INDEX idx_scope_attr_value mapValues(ScopeAttributes) TYPE bloom_filter(0.01) GRANULARITY 1, INDEX idx_attr_key mapKeys(Attributes) TYPE bloom_filter(0.01) GRANULARITY 1, - INDEX idx_attr_value mapValues(Attributes) TYPE bloom_filter(0.01) GRANULARITY 1 + INDEX idx_attr_value mapValues(Attributes) TYPE bloom_filter(0.01) GRANULARITY 1, + INDEX idx_time_minmax TimeUnix TYPE minmax GRANULARITY 1 ) ENGINE = MergeTree PARTITION BY toDate(TimeUnix) -ORDER BY (ServiceName, MetricName, Attributes, toUnixTimestamp64Nano(TimeUnix)) +ORDER BY (ServiceName, MetricName, toStartOfHour(TimeUnix), cityHash64(Attributes), TimeUnix) TTL toDateTime(TimeUnix) + ${TABLES_TTL} SETTINGS ttl_only_drop_parts = 1; ``` diff --git a/docs/use-cases/observability/clickstack/ingesting-data/_snippets/_schema_otel_metrics_histogram.md b/docs/use-cases/observability/clickstack/ingesting-data/_snippets/_schema_otel_metrics_histogram.md index a63918274aa..97c48bed0e1 100644 --- a/docs/use-cases/observability/clickstack/ingesting-data/_snippets/_schema_otel_metrics_histogram.md +++ b/docs/use-cases/observability/clickstack/ingesting-data/_snippets/_schema_otel_metrics_histogram.md @@ -10,18 +10,18 @@ CREATE TABLE IF NOT EXISTS ${DATABASE}.otel_metrics_histogram `ScopeDroppedAttrCount` UInt32 CODEC(ZSTD(1)), `ScopeSchemaUrl` String CODEC(ZSTD(1)), `ServiceName` LowCardinality(String) CODEC(ZSTD(1)), - `MetricName` String CODEC(ZSTD(1)), + `MetricName` LowCardinality(String) CODEC(ZSTD(1)), `MetricDescription` String CODEC(ZSTD(1)), `MetricUnit` String CODEC(ZSTD(1)), `Attributes` Map(LowCardinality(String), String) CODEC(ZSTD(1)), - `StartTimeUnix` DateTime64(9) CODEC(Delta(8), ZSTD(1)), - `TimeUnix` DateTime64(9) CODEC(Delta(8), ZSTD(1)), + `StartTimeUnix` DateTime CODEC(Delta, ZSTD(1)), + `TimeUnix` DateTime CODEC(Delta, ZSTD(1)), `Count` UInt64 CODEC(Delta(8), ZSTD(1)), `Sum` Float64 CODEC(ZSTD(1)), `BucketCounts` Array(UInt64) CODEC(ZSTD(1)), `ExplicitBounds` Array(Float64) CODEC(ZSTD(1)), `Exemplars.FilteredAttributes` Array(Map(LowCardinality(String), String)) CODEC(ZSTD(1)), - `Exemplars.TimeUnix` Array(DateTime64(9)) CODEC(ZSTD(1)), + `Exemplars.TimeUnix` Array(DateTime) CODEC(ZSTD(1)), `Exemplars.Value` Array(Float64) CODEC(ZSTD(1)), `Exemplars.SpanId` Array(String) CODEC(ZSTD(1)), `Exemplars.TraceId` Array(String) CODEC(ZSTD(1)), @@ -34,11 +34,12 @@ CREATE TABLE IF NOT EXISTS ${DATABASE}.otel_metrics_histogram INDEX idx_scope_attr_key mapKeys(ScopeAttributes) TYPE bloom_filter(0.01) GRANULARITY 1, INDEX idx_scope_attr_value mapValues(ScopeAttributes) TYPE bloom_filter(0.01) GRANULARITY 1, INDEX idx_attr_key mapKeys(Attributes) TYPE bloom_filter(0.01) GRANULARITY 1, - INDEX idx_attr_value mapValues(Attributes) TYPE bloom_filter(0.01) GRANULARITY 1 + INDEX idx_attr_value mapValues(Attributes) TYPE bloom_filter(0.01) GRANULARITY 1, + INDEX idx_time_minmax TimeUnix TYPE minmax GRANULARITY 1 ) ENGINE = MergeTree PARTITION BY toDate(TimeUnix) -ORDER BY (ServiceName, MetricName, Attributes, toUnixTimestamp64Nano(TimeUnix)) +ORDER BY (ServiceName, MetricName, toStartOfHour(TimeUnix), cityHash64(Attributes), TimeUnix) TTL toDateTime(TimeUnix) + ${TABLES_TTL} SETTINGS ttl_only_drop_parts = 1; ``` diff --git a/docs/use-cases/observability/clickstack/ingesting-data/_snippets/_schema_otel_metrics_sum.md b/docs/use-cases/observability/clickstack/ingesting-data/_snippets/_schema_otel_metrics_sum.md index a1f59a6ab1f..2ef0c8182ae 100644 --- a/docs/use-cases/observability/clickstack/ingesting-data/_snippets/_schema_otel_metrics_sum.md +++ b/docs/use-cases/observability/clickstack/ingesting-data/_snippets/_schema_otel_metrics_sum.md @@ -10,16 +10,16 @@ CREATE TABLE IF NOT EXISTS ${DATABASE}.otel_metrics_sum `ScopeDroppedAttrCount` UInt32 CODEC(ZSTD(1)), `ScopeSchemaUrl` String CODEC(ZSTD(1)), `ServiceName` LowCardinality(String) CODEC(ZSTD(1)), - `MetricName` String CODEC(ZSTD(1)), + `MetricName` LowCardinality(String) CODEC(ZSTD(1)), `MetricDescription` String CODEC(ZSTD(1)), `MetricUnit` String CODEC(ZSTD(1)), `Attributes` Map(LowCardinality(String), String) CODEC(ZSTD(1)), - `StartTimeUnix` DateTime64(9) CODEC(Delta(8), ZSTD(1)), - `TimeUnix` DateTime64(9) CODEC(Delta(8), ZSTD(1)), + `StartTimeUnix` DateTime CODEC(Delta, ZSTD(1)), + `TimeUnix` DateTime CODEC(Delta, ZSTD(1)), `Value` Float64 CODEC(ZSTD(1)), `Flags` UInt32 CODEC(ZSTD(1)), `Exemplars.FilteredAttributes` Array(Map(LowCardinality(String), String)) CODEC(ZSTD(1)), - `Exemplars.TimeUnix` Array(DateTime64(9)) CODEC(ZSTD(1)), + `Exemplars.TimeUnix` Array(DateTime) CODEC(ZSTD(1)), `Exemplars.Value` Array(Float64) CODEC(ZSTD(1)), `Exemplars.SpanId` Array(String) CODEC(ZSTD(1)), `Exemplars.TraceId` Array(String) CODEC(ZSTD(1)), @@ -30,11 +30,12 @@ CREATE TABLE IF NOT EXISTS ${DATABASE}.otel_metrics_sum INDEX idx_scope_attr_key mapKeys(ScopeAttributes) TYPE bloom_filter(0.01) GRANULARITY 1, INDEX idx_scope_attr_value mapValues(ScopeAttributes) TYPE bloom_filter(0.01) GRANULARITY 1, INDEX idx_attr_key mapKeys(Attributes) TYPE bloom_filter(0.01) GRANULARITY 1, - INDEX idx_attr_value mapValues(Attributes) TYPE bloom_filter(0.01) GRANULARITY 1 + INDEX idx_attr_value mapValues(Attributes) TYPE bloom_filter(0.01) GRANULARITY 1, + INDEX idx_time_minmax TimeUnix TYPE minmax GRANULARITY 1 ) ENGINE = MergeTree PARTITION BY toDate(TimeUnix) -ORDER BY (ServiceName, MetricName, Attributes, toUnixTimestamp64Nano(TimeUnix)) +ORDER BY (ServiceName, MetricName, toStartOfHour(TimeUnix), cityHash64(Attributes), TimeUnix) TTL toDateTime(TimeUnix) + ${TABLES_TTL} SETTINGS ttl_only_drop_parts = 1; ``` diff --git a/docs/use-cases/observability/clickstack/ingesting-data/_snippets/_schema_otel_metrics_summary.md b/docs/use-cases/observability/clickstack/ingesting-data/_snippets/_schema_otel_metrics_summary.md index c43b2520822..e77c6c3e15e 100644 --- a/docs/use-cases/observability/clickstack/ingesting-data/_snippets/_schema_otel_metrics_summary.md +++ b/docs/use-cases/observability/clickstack/ingesting-data/_snippets/_schema_otel_metrics_summary.md @@ -10,12 +10,12 @@ CREATE TABLE IF NOT EXISTS ${DATABASE}.otel_metrics_summary `ScopeDroppedAttrCount` UInt32 CODEC(ZSTD(1)), `ScopeSchemaUrl` String CODEC(ZSTD(1)), `ServiceName` LowCardinality(String) CODEC(ZSTD(1)), - `MetricName` String CODEC(ZSTD(1)), + `MetricName` LowCardinality(String) CODEC(ZSTD(1)), `MetricDescription` String CODEC(ZSTD(1)), `MetricUnit` String CODEC(ZSTD(1)), `Attributes` Map(LowCardinality(String), String) CODEC(ZSTD(1)), - `StartTimeUnix` DateTime64(9) CODEC(Delta(8), ZSTD(1)), - `TimeUnix` DateTime64(9) CODEC(Delta(8), ZSTD(1)), + `StartTimeUnix` DateTime CODEC(Delta, ZSTD(1)), + `TimeUnix` DateTime CODEC(Delta, ZSTD(1)), `Count` UInt64 CODEC(Delta(8), ZSTD(1)), `Sum` Float64 CODEC(ZSTD(1)), `ValueAtQuantiles.Quantile` Array(Float64) CODEC(ZSTD(1)), @@ -26,11 +26,12 @@ CREATE TABLE IF NOT EXISTS ${DATABASE}.otel_metrics_summary INDEX idx_scope_attr_key mapKeys(ScopeAttributes) TYPE bloom_filter(0.01) GRANULARITY 1, INDEX idx_scope_attr_value mapValues(ScopeAttributes) TYPE bloom_filter(0.01) GRANULARITY 1, INDEX idx_attr_key mapKeys(Attributes) TYPE bloom_filter(0.01) GRANULARITY 1, - INDEX idx_attr_value mapValues(Attributes) TYPE bloom_filter(0.01) GRANULARITY 1 + INDEX idx_attr_value mapValues(Attributes) TYPE bloom_filter(0.01) GRANULARITY 1, + INDEX idx_time_minmax TimeUnix TYPE minmax GRANULARITY 1 ) ENGINE = MergeTree PARTITION BY toDate(TimeUnix) -ORDER BY (ServiceName, MetricName, Attributes, toUnixTimestamp64Nano(TimeUnix)) +ORDER BY (ServiceName, MetricName, toStartOfHour(TimeUnix), cityHash64(Attributes), TimeUnix) TTL toDateTime(TimeUnix) + ${TABLES_TTL} SETTINGS ttl_only_drop_parts = 1; ```