Читаем Роман с Data Science. Как монетизировать большие данные полностью

В Retail Rocket использовался Hive поверх Hadoop для службы технической поддержки, но запросы могли выполняться больше получаса. Поэтому требуемые ими данные были переведены в Clickhouse (колоночная база данных), и обработка запросов ускорилась в сотни раз. А скорость очень важна для интерактивных аналитических задач. Сотрудники Retail Rocket мгновенно полюбили новое решение за его скорость. Hadoop при этом остался в качестве рабочей лошадки для расчета рекомендаций.

<p><strong>Как данные попадают в хранилища</strong></p>

Чтобы данные оставались актуальными, их нужно периодически обновлять. Делать это можно путем полного или инкрементального обновления.

Полное обновление применяют к справочникам и состояниям на определенный момент времени (об этих типах я писал в главе 5). Выглядит оно следующим образом – данные скачиваются из источника в промежуточную таблицу или папку (staging) хранилища, и если операция прошла успешно, эти старые данные меняются на свежие. Плюсом такого типа обновления является полное соответствие данных источнику на момент скачивания. Первым минусом является время для обновления таблиц, которое напрямую зависит от размера исходных данных. Второй минус – потеря изменений после обновления данных. Представьте, что у вас есть справочник с товарами магазина, в исходной системе он всегда актуален, а в хранилище обновляется каждый день в полночь. Если какой-то товар был заведен и удален из справочника – вы этого не заметите в хранилище. Для аналитика это будет выглядеть так, будто такого товара не существовало. Заказы этого товара могли совершаться. Поэтому при анализе заказов возникнет ситуация нарушения целостности данных: в таблице этот заказ есть, в справочнике товаров – нет.

Инкрементальное обновление данных применяется для лога изменений (я писал о нем в главе 5). Конечно, можно его полностью перезагружать, но обычно это нецелесообразно из-за большого объема, а следовательно, медленной скорости обновления. Само инкрементальное обновление выглядит следующим образом: система смотрит в хранилище, какие данные были загружены последними (это может быть время или какой-то идентификатор). Далее делается запрос к источнику: «Отдай мне данные, которые поступили после момента X». После получения эти данные добавляются к старым в хранилище. Плюсом инкрементального обновления является скорость. Минусом – возможна рассинхронизация данных, когда были добавлены лишние записи, которые уже были, или, наоборот, произошла потеря данных.

Принципиально есть два типа инкрементального обновления: пакетный и потоковый.

Пакетный (batch) – данные загружаются большими блоками. Например, таблица с заказами клиентов обновляется раз в сутки в первый час ночи – происходит загрузка данных за последние сутки, и они добавляются в хранилище. Вариантов реализаций таких обновлений много – от специализированного софта до самописных систем. Я использовал оба подхода. В Ozon.ru и Wikimart.ru пользовался Microsoft Integration Services, которые входили в пакет MS SQL Server. В ней просто мышкой рисуются потоки данных между источником и хранилищем, программирования там минимум. В Retail Rocket использовалась самописная утилита без графического интерфейса, которая занималась скачиванием данных из Hadoop в ClickHouse.

Потоковый (stream) – данные загружаются по одной записи или мелкими пакетами по мере их поступления. Обычно это создается для данных, которые нужно поддерживать в «реальном времени». Если обратиться к примеру выше, то в таблицу с заказами клиентов новые заказы будут попадать по мере их появления. В таком случае будет небольшое запаздывание между созданием самого заказа и его появлением в хранилище. Оно может варьироваться от миллисекунд до часов, и это время обязательно контролируется через мониторинг.

<p><strong>Hadoop и MapReduce</strong></p>

Сначала расскажу, как появился Hadoop. К этому приложил руку Google. На мой взгляд, у этой компании есть два великих изобретения: PageRank и MapReduce. Джеффри Дин и Санджай Гемават (Jeffrey Dean и Sanjay Ghemawat) в течение четырех месяцев 2003 года разрабатывали технологию MapReduce [38]. Эта идея пришла к ним, когда они в третий раз переписывали движок Google, отвечающий за скачивание и индексацию страниц. Эти два разработчика решили важную проблему: они нашли способ скоординировать работу огромного числа зачастую ненадежных компьютеров в разных дата-центрах по всему миру. Ведь отказ одного или нескольких компьютеров потребует повторного запуска расчетов, что очень проблематично, когда мы имеем дело с тысячей машин. Но самое замечательное, что Дин и Гемават не просто нашли решение частной проблемы – они создали философию. MapReduce позволил разработчикам Google обращаться к серверам их дата-центров как к одному огромному компьютеру.

Перейти на страницу:

Все книги серии IT для бизнеса

О криптовалюте просто. Биткоин, эфириум, блокчейн, децентрализация, майнинг, ICO & Co
О криптовалюте просто. Биткоин, эфириум, блокчейн, децентрализация, майнинг, ICO & Co

Эта книга – самый быстрый способ войти в мир криптовалют и начать ими пользоваться.Вы хоть раз спрашивали себя, что такое биткоин, криптовалюта или блокчейн? А децентрализация? Как вы думаете, кто выиграл от появления интернета? Люди, которые были подготовлены к нему и стали использовать его в личных или коммерческих целях до того, как подтянулись остальные.Новая технология «блокчейн» дает аналогичную возможность. Она играет сейчас такую же роль, какую играл интернет последние 20 лет. Главный вопрос, который каждый себе задает, это «c чего мне начать?»Джулиан Хосп, соучредитель компании TenX и один из ведущих мировых экспертов по криптовалютам, просто и доступно объясняет сложные термины и дает четкую инструкцию к действию: как пользоваться криптовалютами, соблюдая правила онлайн-безопасности.У Илона Маска уже есть книга Джулиана Хоспа. А у вас?

Джулиан Хосп

Деловая литература / Маркетинг, PR, реклама / Финансы и бизнес
Роман с Data Science. Как монетизировать большие данные
Роман с Data Science. Как монетизировать большие данные

Как выжать все из своих данных? Как принимать решения на основе данных? Как организовать анализ данных (data science) внутри компании? Кого нанять аналитиком? Как довести проекты машинного обучения (machine learning) и искусственного интеллекта до топового уровня? На эти и многие другие вопросы Роман Зыков знает ответ, потому что занимается анализом данных почти двадцать лет. В послужном списке Романа – создание с нуля собственной компании с офисами в Европе и Южной Америке, ставшей лидером по применению искусственного интеллекта (AI) на российском рынке. Кроме того, автор книги создал с нуля аналитику в Ozon.ru.Эта книга предназначена для думающих читателей, которые хотят попробовать свои силы в области анализа данных и создавать сервисы на их основе. Она будет вам полезна, если вы менеджер, который хочет ставить задачи аналитике и управлять ею. Если вы инвестор, с ней вам будет легче понять потенциал стартапа. Те, кто «пилит» свой стартап, найдут здесь рекомендации, как выбрать подходящие технологии и набрать команду. А начинающим специалистам книга поможет расширить кругозор и начать применять практики, о которых они раньше не задумывались, и это выделит их среди профессионалов такой непростой и изменчивой области. Книга не содержит примеров программного кода, в ней почти нет математики.В формате PDF A4 сохранен издательский макет.

Роман Зыков

Карьера, кадры / Прочая компьютерная литература / Книги по IT

Похожие книги

10 гениев бизнеса
10 гениев бизнеса

Люди, о которых вы прочтете в этой книге, по-разному относились к своему богатству. Одни считали приумножение своих активов чрезвычайно важным, другие, наоборот, рассматривали свои, да и чужие деньги лишь как средство для достижения иных целей. Но общим для них является то, что их имена в той или иной степени становились знаковыми. Так, например, имена Альфреда Нобеля и Павла Третьякова – это символы культурных достижений человечества (Нобелевская премия и Третьяковская галерея). Конрад Хилтон и Генри Форд дали свои имена знаменитым торговым маркам – отельной и автомобильной. Биографии именно таких людей-символов, с их особым отношением к деньгам, власти, прибыли и вообще отношением к жизни мы и постарались включить в эту книгу.

А. Ходоренко

Карьера, кадры / Биографии и Мемуары / О бизнесе популярно / Документальное / Финансы и бизнес