-
Notifications
You must be signed in to change notification settings - Fork 0
Vocabulary
Metric -- функция ([User], Timespan) -> Result, определённая в терминах User Characteristic
AvgPrice = Sum([user1, user2, user3], [now-1 week, now], "TotalPrice") / Sum([user1, user2, user3], [now-1 week, now], "TotalBuys")
Client -- Зарегистрированный в нашем сервисе человек, потребитель наших услуг. Приносит головную боль и иногда деньги.
User -- Единица для группировки Events. Чаще всего -- пользователь продукта нашего Client. Головная боль наших Client. У user есть facts и characteristics.
User Fact -- свойство User, никак не зависящее от Events. Примеры: тип пользователя (платный, бесплатные, трайл), email, ... Facts поставляются в сервис снаружи. Следует разделять user fact и конкретное значение этого user fact для пользователя. Пример:
- user fact: user type
- значение user fact для пользователя: paid user
User Characteristics -- вычисляемая на основе events характеристика user.
Можно разделить на несколько категорий:
- events total
- events total greater than / less then
- min/max/avg of event distances in time
- repeating event // HasEventLogin([today-7, today-6]) AND HasEventLogin([today-5, today-4]) AND HasEventLogin([today-3, today-2]) AND HasEventLogin([today-1, today])
Каждая user characteristic может быть смоделирована как функция (User, Timespan) -> Result. Опять-таки, необходимо разделять саму характеристику и её значение для конкретного пользователя и Timespan.
Event -- действие User, зарегистрированное в Tellmemore.
UserGroup -- правило заданное через логическую комбинацию (AND/OR/NOT) ограничений на user facts, user characteristics и принадлежности к другим UserGroup (обычно заданное Client), определяющее в каждый конкретный момент времени множество User.
UserId -- уникальный идентификатор User. У одного User может быть более одного UserId. Event связываются с UserId, а не с конкретным User.