Коллеги, всем привет!
Есть желание анализировать кликстрим по компании. Сейчас развернут Clickhouse под кликстрим, но пока еще есть возможность выбрать другие решения.
Общий продукт комплексный, состоит из множества микросервисов, кучи поддоменов, над каждым работает отдельная команда. В рамках каждого события существует довольно обширный контекст (к примеру, если клиентом А был куплен продукт X, то для итоговой аналитики важно знать и все параметры клиента А, и все параметры продукта X, чтобы строить метрики в самых разных разрезах).
У каждого сервиса набор атрибутов в контексте свой. К примеру, region у одного сервиса - это регион, с которого клиент зашел в веб, а у другого сервиса region - это регион, где клиент купил продукт. Команды по сервисам хотят иметь возможность сами добавлять атрибуты, но очевидно, что это может привести к коллизиям в названиях атрибутов.
Соответственно, возникают вопросы:
1) стоит ли весь кликстрим по всем сервисам писать в одну таблицу и пытаться как-то разруливать (путем контроля) проблемы с «похожестью» названий атрибутов?
2) если пишем в одну таблицу, насколько правильно, что для одного сервиса будут использоваться первая половина атрибутов, а вторая будет «пустой», а для другого сервиса первая будет «пустой», а вторая заполнена?
3) стоит ли плодить множество таблиц в кликхаусе (для каждого сервиса - своя, со своим набором атрибутов контекста)?
4) стоит ли вообще писать контекст (обогощать сам факт события) в таблицу с событиями или лучше для аналитики обогащать уже после записи, например, в отдельной базе через ETL процессы?
5) если хранить в разных таблицах (каждый сервис в своей), то насколько удобно/правильно потом будет проводить какую-то сквозную аналитику между сервисами?
Примерное кол-во сервисов (доменов) - 70
Среднее кол-во атрибутов в контексте - 100
Понимаю, что на эти темы может быть множество мнений и нет одного решения, хочется услышать, какой опыт у кого был, с какими еще проблемами сталкивались, какие советы можете дать. Буду очень рад обсудить более подробно и в личке