SlideShare a Scribd company logo
Простая и дешёвая
бизнес-аналитика на базе
Google BigQuery
Паршуков Алексей
—
Для кого доклад?
Менеджеру – подход
Разработчику – инструмент
● Работаем с 2011 года
● Запись в коммерческие
клиники
● 14 городов России
● Сайт, Мобильное приложение,
Партнерская сеть.
● 50 000 записей ежемесячно
Цикл обратной связи
создать – оценить – научиться
C чего начать
● У вас уже настроена GA или Яндекс.Метрика?
Проблемы с анализом данных
● Пример: Стоимость обработки заявки
● Воронка: Пользователь -> Деньги на РС
Подход web аналитика
Работает, но:
➖ Отсутствие гибкости
➖ Только просмотр страниц и регистрация событий
➖ Сэмплированные данные
Отправить больше данных в GA!
Подход расточительного web аналитика)
И что изменится?
А давайте купим GA 360!
Подход менеджера
Работает, но:
➖ Долго
➖ Автоматически не обновляется
➖ Не для всех задач
➖ Не больше 1 000 000 строк
Всё вставить в Excel
Технический подход
➖ Ухудшит производительность приложения
➖ Скорости всё ещё не хватит
Загрузим все данные в DB приложения!
Поставим отдельный сервер под аналитику!
Подход программиста
Работает, но:
➖ Долго
➖ Дорого
➖ Не гибко
Нужно добавить индексов, железа и построить агрегаты!
А я где-то слышал
Работает, но:
➖ Догоро
➖ Медленно
➖ Не Real-Time
Может быть OLAP?
Подход крутого бизнес аналитика
Решения Business Intelligence:
● Tableau BI
● BIME etc
Работает, но:
➖ Дорого
➖ Долго
➖ Нужно уметь пользоваться
➖ И всё равно не заработает
Золотой грааль бизнес аналитики
Требования к DataHouse
● Объем данных: 1 Терабайт
● Сырые данные (не нужны индексы)
● Вся сила SQL
● Большая скорость произвольной выборки (максимально близко к real
time)
● Простота входа
● Низкая стоимость эксплуатации
Выбираем решение
Точно не подойдут:
● Реляционные базы
● NoSQL
● MongoDB etc
● Hadoop
● Поисковые движки
Standalone решения
Vertica / ClickHouse vs Cloud
Плюсы Минусы
➕ Безопасность данных
➕ Дешевле на очень больших объемах
➖ Инвестиции в инфрастуктуру
➖ Дороже на небольших данных
➖ Сложнее масштабировать
➖ Дорого поддерживать
➖ Проще сломать
Выбираем решение
Amazon Redshift
➖ Нужно думать о масштабирование и
потребление ресурсов
➖ Оплата за инстансы
➕ Запуск в одну кнопку
➕ Минимум головной боли
Cloud
Наш выбор!!!
Что такое BigQuery
● Под Капотом движок Dremel
● Используется в Google c 2005 г.
● Backed для Google Analytics и других сервисов Google
● Выполнение запросов near-real-time
● Масштабируется на тысячи серверов
● До 100 млрд. записей в секунду
● С конца 2012 доступна как часть Google Cloud Platform
BigQuery: особенности использования
● Сразу готова к работе, не нужно думать о масштабировании
● Структурированные данные
● JSON
● SQL
● Immutable
● Отклик от 300мс до 1 сек
● На гарантировано выполнение запроса
BigQuery - как готовить
1. Обязательно используем встроенное партицирование
2. Снижаем нормализацию
3. Выгружаем максимальное количество данных
4. Активно используем JSON
5. Правильно проставляем типы данных!
6. Анонимизируем персональные данные
Что загружать?
● События на сайте и мобильном приложении
● Справочники
● Таск менеджер (релизы)
● Бухгалтерия (деньги)
● Логи
● Реклама, контекст.
● Звонки, коллтрекинг, SMS, Email и etc
● Бонус Срезы конкретных данных
Как можно загружать
1. Готовые интеграции: GA, JIRA, MySQL, Директ
2. Архивы: JSON, CSV, Excel
3. Реалтайм данные: BQ.API
DataFlow
Как работает загрузчик
1. Очередь в RabbitMQ
2. Вставка пачками до 5000 записей
3. Многопоточная вставка
4. Устойчив к ошибкам и задержкам
5. Умеет обновлять таблицу
6. Анонимизация данных
Как обновить immutable данные
Как визуализировать?
● Web
● Google Spreadsheets
● Инструменты для BI
Визуализаци на сайте
Визуализация: OWOX Query editor
Визуализация: OWOX
Google App Script
function runQuery() {
var projectId = 'XXXXXXXX';
var request = {
query: 'SELECT TOP(word, 300) AS word, COUNT(*) AS word_count ' +
'FROM publicdata:samples.shakespeare WHERE LENGTH(word) > 10;'
};
var queryResults = BigQuery.Jobs.query(request, projectId);
...
Визуализация в Google SpreadSheets
Cahrtio
Мониторинг из коробки:
Zabbix: Мониторинг загрузчика
Сколько это стоит?
1. Внедрение (разработка)
2. Поддержка
3. Аренда облака
4. Интеграции
5. Визуализация
Стоимость BigQuery на примере DocDoc
Счёт за Май 2017г.
Статья Размер Стоимость
BigQuery Streaming Insert 140 Gb $7.04
BigQuery Long Term
Storage
169 Gb $1.70
BigQuery Active Storage 569 Gb $11.40
BigQuery Analysis 13 Tb $61.56
Итого: $81,68
Стоимость, как считать
Статья Объём Стоимость
Внедрение (разработка) 3 месяца $ 20 000
Поддержка 8 часов/месяц $ 80
Аренда облака 738 Gb $ 82
Готовые интеграции 2 шт. $ 200
Визуалиция 7 учеток $ 300
Выводы
Не панацея, но отличный вариант!
Вопросы?
Контакты:
● fb.com/parshukov
● Telegram: @parshukov
● Email: a@docdoc.ru

More Related Content

PDF
Как устроено API в AppMetrica
PDF
NewSQL: SQL никуда не уходит / Константин Осипов (tarantool.org)
PDF
Обзор перспективных баз данных для highload / Юрий Насретдинов
PDF
ClickHouse: очень быстро и очень удобно / Виктор Тарнавский, Алексей Миловидо...
PDF
Константин Осипов
PDF
Дмитрий Долгов
ODP
ClickHouse
PPTX
Как ускорить MySQL Handler Socket в 9 раз / Александр Яковлев (Мамба)
Как устроено API в AppMetrica
NewSQL: SQL никуда не уходит / Константин Осипов (tarantool.org)
Обзор перспективных баз данных для highload / Юрий Насретдинов
ClickHouse: очень быстро и очень удобно / Виктор Тарнавский, Алексей Миловидо...
Константин Осипов
Дмитрий Долгов
ClickHouse
Как ускорить MySQL Handler Socket в 9 раз / Александр Яковлев (Мамба)

What's hot (20)

PDF
High load++2016.highlights (dropbox+clickhouse)
PDF
Применение в Enterprise-приложении графовой базы данных Neo4j - Антон Максимо...
PDF
Как мы строили аналитическую платформу на несколько миллиардов событии в месяц
PPTX
Переезжаем на Yandex ClickHouse / Александр Зайцев (LifeStreet)
PPTX
Анализируем данные с Clickhouse
PDF
«Дорожная сеть в графовой базе данных Neo4j» — Вадим Шашенко, 2ГИС
PPTX
Поиск наизнанку
PDF
Cергей Коржнев, 2ГИС
PDF
Выбор NoSQL базы данных для вашего проекта: "Не в свои сани не садись"
PDF
кри 2014 elastic search рациональный подход к созданию собственной системы а...
PPTX
Промышленное ускорение сайтов / Николай Мациевский (Айри.рф)
PPTX
ClickHouse как решение для бизнес аналитики. Дмитрий Кузьмин
PDF
«Система развёртывания многокомпонентного сервиса» — Алексей Салов, YaC 2013
PDF
NoSQL внутри SQL: приземленные вопросы практического применения / Дмитрий До...
PDF
Shadow Fight 2: архитектура системы аналитики для миллиарда событий
PDF
Андрей Лузин
PPTX
MongoDB первые впечатления
PDF
Что нужно знать об архитектуре ClickHouse / Алексей Зателепин (Яндекс)
PDF
Андрей Кондрашов, Банк Москвы. «АБС в крупном Банке. Тестирование PostgreSQL...
PDF
Брокер сообщений Kafka в условиях повышенной нагрузки / Артём Выборнов (Rambl...
High load++2016.highlights (dropbox+clickhouse)
Применение в Enterprise-приложении графовой базы данных Neo4j - Антон Максимо...
Как мы строили аналитическую платформу на несколько миллиардов событии в месяц
Переезжаем на Yandex ClickHouse / Александр Зайцев (LifeStreet)
Анализируем данные с Clickhouse
«Дорожная сеть в графовой базе данных Neo4j» — Вадим Шашенко, 2ГИС
Поиск наизнанку
Cергей Коржнев, 2ГИС
Выбор NoSQL базы данных для вашего проекта: "Не в свои сани не садись"
кри 2014 elastic search рациональный подход к созданию собственной системы а...
Промышленное ускорение сайтов / Николай Мациевский (Айри.рф)
ClickHouse как решение для бизнес аналитики. Дмитрий Кузьмин
«Система развёртывания многокомпонентного сервиса» — Алексей Салов, YaC 2013
NoSQL внутри SQL: приземленные вопросы практического применения / Дмитрий До...
Shadow Fight 2: архитектура системы аналитики для миллиарда событий
Андрей Лузин
MongoDB первые впечатления
Что нужно знать об архитектуре ClickHouse / Алексей Зателепин (Яндекс)
Андрей Кондрашов, Банк Москвы. «АБС в крупном Банке. Тестирование PostgreSQL...
Брокер сообщений Kafka в условиях повышенной нагрузки / Артём Выборнов (Rambl...
Ad

Similar to Простая и дешёвая бизнес-аналитика на базе Google BigQuery / Алексей Паршуков (DocDoc) (20)

PPTX
Аналитика в SaaS-бизнесе на примере OWOX BI
PDF
Евгений Аралов
PDF
Mobile Web Apps development essentials
PDF
Андрей Федоренчик- «Высоконагруженная система с аналитикой на InfoBright»
PDF
Databases on Client Side
PDF
Павел Юрийчук - Разработка приложений под мобильные браузеры
PDF
Highload++ 2015
PPT
Hl2008 Spy Log Architechture 169
PPT
New SpyLOG architechture (Highload 2008)
PPTX
Визуализация отчетов с помощью Data Studio и Power BI
PPTX
Настройка и оптимизация высоконагруженных J2EE веб-приложений / Шамим Ахмед (...
PDF
Как мы строили аналитическую платформу на несколько миллиардов событии в меся...
PPTX
«Правильный процесс дает правильный результат». Как грамотно выстроить работу...
PDF
DataBase Intellegence Presentation
PPTX
Преимущества инструментов Gilev.ru 2016 09
PPTX
SECON'2016. Алексеев Олег, Живой API
PDF
Сервис-провайдинг как инструмент развития бизнеса. А.Альбин.
PDF
Презентация Сафонова и Прусенка на семинаре "Продавайте больше"
PDF
1 2 2_1_c-bitrix_kuleshov
PPTX
1С-Битрикс: Управление сайтом. Платформа для создания и управления корпоратив...
Аналитика в SaaS-бизнесе на примере OWOX BI
Евгений Аралов
Mobile Web Apps development essentials
Андрей Федоренчик- «Высоконагруженная система с аналитикой на InfoBright»
Databases on Client Side
Павел Юрийчук - Разработка приложений под мобильные браузеры
Highload++ 2015
Hl2008 Spy Log Architechture 169
New SpyLOG architechture (Highload 2008)
Визуализация отчетов с помощью Data Studio и Power BI
Настройка и оптимизация высоконагруженных J2EE веб-приложений / Шамим Ахмед (...
Как мы строили аналитическую платформу на несколько миллиардов событии в меся...
«Правильный процесс дает правильный результат». Как грамотно выстроить работу...
DataBase Intellegence Presentation
Преимущества инструментов Gilev.ru 2016 09
SECON'2016. Алексеев Олег, Живой API
Сервис-провайдинг как инструмент развития бизнеса. А.Альбин.
Презентация Сафонова и Прусенка на семинаре "Продавайте больше"
1 2 2_1_c-bitrix_kuleshov
1С-Битрикс: Управление сайтом. Платформа для создания и управления корпоратив...
Ad

More from Ontico (20)

PDF
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
PDF
Масштабируя DNS / Артем Гавриченков (Qrator Labs)
PPTX
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
PDF
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
PDF
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
PDF
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PDF
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
PDF
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
PPTX
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
PPTX
MySQL Replication — Advanced Features / Петр Зайцев (Percona)
PDF
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
PPTX
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
PPTX
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
PDF
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
PPT
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
PPTX
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
PPTX
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
PPTX
100500 способов кэширования в Oracle Database или как достичь максимальной ск...
PPTX
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
PDF
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
100500 способов кэширования в Oracle Database или как достичь максимальной ск...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...

Простая и дешёвая бизнес-аналитика на базе Google BigQuery / Алексей Паршуков (DocDoc)