YANDEX DATALENS
YANDEX DATALENS Быстрый старт и неожиданности при масштабировании Этим постом начинаем цикл статей по разным BI-системам. Планируем выдержать более-менее единую структуру описания. И позже дополнить статьи демо-дашбордами и видео-демонстрациями. Но... как говорит одна моя хорошая знакомая: "Всё будет, но не сразу"... 1️⃣ Знакомство с системой DataLens – продукт компании Яндекс, интегрированный в достаточно широкий ландшафт многочисленных продуктов компании. Самое большое сообщество пользователей среди российских BI-систем. Только телеграм-канал насчитывает более 14,7 тысяч подписчиков, пользователей по разным источникам - в разы больше. На то могу выделить, как минимум, несколько причин: ➕ наличие opensource варианта системы ➕ длительное время бесплатного распространения облачной версии ➕ широкая инфраструктура Яндекса ➕ относительная простота входа – зарегистрировался и пользуйся ➕ бесплатные курсы на Яндекс.Практикум DataLens, в отличие от многих российских систем, представлен в нескольких вариантах: облачный, серверный и opensource. Любой инфраструктурный каприз. Почти. Здесь и далее буду говорить про наиболее распространённый вариант использования – облачную версию. 2️⃣ Подготовка данных Две важные особенности системы, которые могут сильно влиять на архитектуру всего проекта: DataLens не хранит данные в себе и не имеет встроенного ETL-модуля. Что это значит для бизнеса: ❗️Когда пользователь открывает дашборд, DataLens отправляется за данными в источник. Если этот источник медленно отдаёт данные / данных много / запрос к данным пытается хитро их преобразовать на ходу – пользователь наблюдает крутящееся колёсико ожидания вместо графиков. ❗️Так как встроенного модуля преобразования данных у DataLens нет, то преобразования должны быть выполнены либо непосредственно в запросе к данным (помним про колёсико), либо данные в источнике должны быть уже преобразованы заранее. ❗️И как итог - на проектах DataLens почти всегда подразумевает организацию хранилища данных, которое заберёт на себя все преобразования. И чем "ближе" это хранилище к DataLens, тем меньше ожидание пользователя. Максимально оптимальное решение – ClickHouse, развёрнутый на серверах самого Яндекса. 3️⃣ Модель данных Только классические "звезда" и "снежинка". Модель типа "созвездие" с несколькими таблицами фактов не допустима. Какая-нибудь модель, когда у нас не "снежинка", а, простите, "сугроб" (любят некоторые аналитики такое делать) – тоже в DataLens не собрать. Всё строго. Что это значит для бизнеса: ❗️Большое внимание уделяется этапу формирования итоговых витрин данных, и, соответственно, модели. Чуть больше, чем в любых других системах. 4️⃣ Языки и расчёты Для создания вычисляемых полей используется SQL-подобный язык, есть набор агрегатных функций и оконных выражений. Что это значит для бизнеса: ❗️Низкий порог для аналитиков, знающих SQL. Для базовых и умеренно сложных вычислений достаточно. Но если нужно рассчитать что-то более-менее сложное, то обычно вычисления переносятся на хранилище и учитываются при подготовке данных. 5️⃣ Визуализация Стандартный набор визуализаций, закрывающий бОльшую часть запросов проекта. Умеренный выбор настроек. Местами есть жёсткие ограничения. Например, для корректной работы таблицы в датасете должно быть не более 100 000 строк. Некоторое время назад появилась возможность разрабатывать свои кастомные визуализации с прямыми запросами в источник. Что это значит для бизнеса: ❗️Тщательно продумываем и проектируем подготовку данных. Оцениваем достаточность стандартных визуализаций. 6️⃣ Ценообразование Облачная версия для одного пользователя – бесплатна. Регистрируем учётку в Яндексе и поехали. Но как только мы добавляем к себе второго пользователя – начинаем платить сразу за обоих по 990р в месяц. Это очень даже приятная цена. Для серверной версии ценовая политика начинает расчёт от 100 пользователей и 1,6 млн р в год. А здесь резкий скачок. 🔸🔸🔸 ❓О чём рассказать подробнее?