Skip to content
Snippets Groups Projects

ClickHouse data collector

Merged charlie ablett requested to merge 414610-cablett-clickhouse-data-collector into master
All threads resolved!
Compare and Show latest version
8 files
+ 264
161
Compare changes
  • Side-by-side
  • Inline
Files
8
@@ -2,7 +2,7 @@
module Gitlab
module ContributionAnalytics
class ClickHouseDataCollector < PostgresqlDataCollector
class ClickHouseDataCollector
attr_reader :group, :from, :to
def initialize(group:, from:, to:)
@@ -11,7 +11,7 @@ def initialize(group:, from:, to:)
@to = to
end
def base_query
def totals_by_author_target_type_action
clickhouse_query = <<~CLICKHOUSE
SELECT count(*) as count_all,
"contribution_analytics_events"."author_id" AS events_author_id,
@@ -24,9 +24,9 @@ def base_query
argMax(target_type, contribution_analytics_events.updated_at) as target_type,
argMax(action, contribution_analytics_events.updated_at) as action
FROM contribution_analytics_events
WHERE startsWith(path, '24/')
AND "contribution_analytics_events"."created_at" >= '2022-05-01'
AND "contribution_analytics_events"."created_at" <= '2023-05-07'
WHERE startsWith(path, '#{group.traversal_ids.join('/')}/)
AND "contribution_analytics_events"."created_at" >= '#{from.strftime('%Y-%m-%d')}'
AND "contribution_analytics_events"."created_at" <= '#{to.strftime('%Y-%m-%d')}'
GROUP BY id
) contribution_analytics_events
GROUP BY "contribution_analytics_events"."action","contribution_analytics_events"."target_type","contribution_analytics_events"."author_id"
Loading