Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
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

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