refactor(DB): changed product analytics DB structure

This commit is contained in:
Taha Yassine Kraiem 2025-03-25 13:11:30 +01:00 committed by Kraiem Taha Yassine
parent 7f0bc100f5
commit ec2c42c688
4 changed files with 36 additions and 2 deletions

View file

@ -11,3 +11,19 @@ CREATE TABLE IF NOT EXISTS product_analytics.event_properties
_timestamp DateTime DEFAULT now()
) ENGINE = ReplacingMergeTree(_timestamp)
ORDER BY (project_id, event_name, property_name);
DROP TABLE IF EXISTS product_analytics.all_events;
CREATE TABLE IF NOT EXISTS product_analytics.all_events
(
project_id UInt16,
auto_captured BOOL DEFAULT FALSE,
event_name String,
display_name String DEFAULT '',
description String DEFAULT '',
event_count_l30days UInt32 DEFAULT 0,
query_count_l30days UInt32 DEFAULT 0,
created_at DateTime64,
_timestamp DateTime DEFAULT now()
) ENGINE = ReplacingMergeTree(_timestamp)
ORDER BY (project_id, auto_captured, event_name);

View file

@ -642,6 +642,7 @@ CREATE TABLE IF NOT EXISTS product_analytics.group_properties
CREATE TABLE IF NOT EXISTS product_analytics.all_events
(
project_id UInt16,
auto_captured BOOL DEFAULT FALSE,
event_name String,
display_name String DEFAULT '',
description String DEFAULT '',
@ -651,7 +652,7 @@ CREATE TABLE IF NOT EXISTS product_analytics.all_events
created_at DateTime64,
_timestamp DateTime DEFAULT now()
) ENGINE = ReplacingMergeTree(_timestamp)
ORDER BY (project_id, event_name);
ORDER BY (project_id, auto_captured, event_name);
-- The full list of event-properties (used to tell which property belongs to which event)

View file

@ -22,3 +22,19 @@ CREATE TABLE IF NOT EXISTS product_analytics.event_properties
_timestamp DateTime DEFAULT now()
) ENGINE = ReplacingMergeTree(_timestamp)
ORDER BY (project_id, event_name, property_name);
DROP TABLE IF EXISTS product_analytics.all_events;
CREATE TABLE IF NOT EXISTS product_analytics.all_events
(
project_id UInt16,
auto_captured BOOL DEFAULT FALSE,
event_name String,
display_name String DEFAULT '',
description String DEFAULT '',
event_count_l30days UInt32 DEFAULT 0,
query_count_l30days UInt32 DEFAULT 0,
created_at DateTime64,
_timestamp DateTime DEFAULT now()
) ENGINE = ReplacingMergeTree(_timestamp)
ORDER BY (project_id, auto_captured, event_name);

View file

@ -504,6 +504,7 @@ CREATE TABLE IF NOT EXISTS product_analytics.group_properties
CREATE TABLE IF NOT EXISTS product_analytics.all_events
(
project_id UInt16,
auto_captured BOOL DEFAULT FALSE,
event_name String,
display_name String DEFAULT '',
description String DEFAULT '',
@ -513,7 +514,7 @@ CREATE TABLE IF NOT EXISTS product_analytics.all_events
created_at DateTime64,
_timestamp DateTime DEFAULT now()
) ENGINE = ReplacingMergeTree(_timestamp)
ORDER BY (project_id, event_name);
ORDER BY (project_id, auto_captured, event_name);
-- The full list of event-properties (used to tell which property belongs to which event)
CREATE TABLE IF NOT EXISTS product_analytics.event_properties