analytics
Словарь ↗Сэмплирование данных
Сэмплирование — это когда аналитический инструмент отвечает на вопрос по подмножеству данных и масштабирует результат, вместо того чтобы прочитать каждую строку. Оно существует потому, что сканировать всё дорого, и обычно это разумный размен: форма тренда, примерный размер сегмента и направление изменения переносят сэмплирование спокойно. Не переносит его всё редкое и всё точное. Сэмплированный отчёт — плохой способ посчитать события, случающиеся у небольшого числа аккаунтов: в выборку их может попасть очень мало или ни одного, и чем их меньше, тем сильнее болтается оценка. Ещё хуже он годится там, где цифра обязана быть в точности верной: всё, что питает биллинг, договорное обязательство, материалы для совета директоров или отчётность для регулятора, должно приходить из полного подсчёта, потому что сэмплированная цифра, которую потом пришлось пересчитать, вредит куда сильнее медленного запроса. Ловушка, в которую попадают чаще всего, — накапливающиеся фильтры. Выборка по всему трафику щедра, но каждый добавленный фильтр её сужает, и к тому моменту, когда запрос доходит до одного тарифа в одной стране на одном типе устройств, оценка может держаться на горстке записей, а интерфейс по-прежнему показывает уверенное круглое число. Практическая защита — знать про каждый инструмент в стеке: сэмплирует ли он вообще, что это включает и сообщает ли отчёт, что это произошло. Инструмент, который сэмплирует молча, приучает команду доверять цифрам, которые следовало бы допрашивать. Там, где ответ должен быть точным, считайте в хранилище и примите ожидание. Там, где достаточно верного направления, сэмплирование не проблема, а спор о нём тратит ровно то время, которое оно должно было сберечь. Сюда же относятся две смежные привычки: указывайте в отчёте, какие цифры являются оценками, и никогда не смешивайте сэмплированную величину с полной в одном сравнении — разницу между ними прочтут как изменение.
Похожие термины