docs(warehouse): объяснены расчет строк и замена дневных разделов
Зачем: выражения «собираются в донор» и «публикуются дни» требовали знать устройство конвейера до чтения объяснения. Что: описаны назначение промежуточных таблиц и последовательность расчета, записи и замены разделов. Перечитаны остальные объяснения: выбор дней, разворачивание позиций заказа, проверка сессий и повтор запуска. Проверка: make lint, git diff --check, локальные ссылки и якоря. SQL без комментариев и AST обоих дагов без строк документации не изменились. Refs: #249
This commit is contained in:
1 parent
5f317ba8d2
commit
086007fbd4
12 files changed
+216
-166
No files matched your search
@@ -1,16 +1,19 @@
|
||||
-- DDS: сборка сессий выбранных дней в донор dds.session_stage_dist.
|
||||
-- Донор очищается целиком; одна вставка собирает весь диапазон.
|
||||
-- DDS: расчет сессий за дни от first_day до last_day включительно.
|
||||
-- Сначала очищаем промежуточную таблицу session_stage_rep, затем записываем
|
||||
-- в нее рассчитанные строки через session_stage_dist. Основная session_rep
|
||||
-- остается прежней до выполнения session_replace.sql.
|
||||
--
|
||||
-- Первое окно помечает событие единицей, если с предыдущего события того же
|
||||
-- посетителя за тот же день прошло больше 1800 секунд. Второе окно суммирует
|
||||
-- эти единицы: получается номер визита внутри посетителя и дня.
|
||||
-- PARTITION BY (client_id, event_date) разделяет визиты по модельной полночи.
|
||||
-- эти единицы: получается номер визита для каждого посетителя за день.
|
||||
-- PARTITION BY (client_id, event_date) считает каждый модельный день отдельно:
|
||||
-- события разных дней не попадут в одну сессию даже при короткой паузе.
|
||||
-- Учитываются все типы событий.
|
||||
--
|
||||
-- У первого события lagInFrame возвращает его собственное время: разница
|
||||
-- равна нулю, opens_visit = 0, и первый visit_no тоже равен нулю.
|
||||
-- Оба окна используют (event_time, event_id), чтобы при равном времени
|
||||
-- признак начала и накопленный номер визита относились к одним событиям.
|
||||
-- отметка начала и номер визита относились к одним событиям.
|
||||
-- Порог 1800 секунд — правило визита; он не передается параметром.
|
||||
ALTER TABLE dds.session_stage_rep ON CLUSTER clickstream_cluster DROP PARTITION ALL;
|
||||
|
||||
|
||||
Reference in new issue
Block a user