mirror of
https://github.com/plausible/analytics.git
synced 2024-12-26 11:02:52 +03:00
b9c2110472
* Get rid of PASS_V2_SCHEMA_MIGRATION * Use in-memory domain lookup + regular table settings * Remove faulty date arithmetic + prev part calculation * Set V2_MIGRATION_DONE in Mix.env == :dev * Mute credo
46 lines
1.5 KiB
Elixir
46 lines
1.5 KiB
Elixir
CREATE TABLE IF NOT EXISTS sessions_v2 <%= if @cluster? do %>ON CLUSTER '{cluster}'<% end %>
|
|
(
|
|
`session_id` UInt64,
|
|
`sign` Int8,
|
|
`site_id` UInt64,
|
|
`user_id` UInt64,
|
|
`hostname` String,
|
|
`timestamp` DateTime CODEC(DoubleDelta, LZ4),
|
|
`start` DateTime CODEC(DoubleDelta, LZ4),
|
|
`is_bounce` UInt8,
|
|
`entry_page` String,
|
|
`exit_page` String,
|
|
`pageviews` Int32,
|
|
`events` Int32,
|
|
`duration` UInt32,
|
|
`referrer` String,
|
|
`referrer_source` String,
|
|
`country_code` LowCardinality(FixedString(2)),
|
|
`screen_size` LowCardinality(String),
|
|
`operating_system` LowCardinality(String),
|
|
`browser` LowCardinality(String),
|
|
`utm_medium` String,
|
|
`utm_source` String,
|
|
`utm_campaign` String,
|
|
`browser_version` LowCardinality(String),
|
|
`operating_system_version` LowCardinality(String),
|
|
`subdivision1_code` LowCardinality(String),
|
|
`subdivision2_code` LowCardinality(String),
|
|
`city_geoname_id` UInt32,
|
|
`utm_content` String,
|
|
`utm_term` String,
|
|
`transferred_from` String,
|
|
`entry_meta.key` Array(String),
|
|
`entry_meta.value` Array(String)
|
|
)
|
|
<%= if @cluster? do %>
|
|
ENGINE = ReplicatedCollapsingMergeTree('/clickhouse/{cluster}/tables/{shard}/plausible_prod/sessions_v2', '{replica}', sign)
|
|
<% else %>
|
|
ENGINE = CollapsingMergeTree(sign)
|
|
<% end %>
|
|
PARTITION BY toYYYYMM(start)
|
|
PRIMARY KEY (site_id, toDate(start), user_id, session_id)
|
|
ORDER BY (site_id, toDate(start), user_id, session_id)
|
|
SAMPLE BY user_id
|
|
<%= @table_settings %>
|