Опубликовано

Представляем книгу “Конвейеры данных. Карманный справочник”

Конвейеры данных. Карманный справочник

Книга посвящена передовым методам построения конвейеров данных, сбору данных из множества разнообразных источников и преобразованию их для аналитики. Дано введение в конвейеры данных, раскрыта их работа в современном стеке данных. Описаны стандартные шаблоны конвейеров данных. Показан процесс сбора данных от их извлечения до загрузки в хранилище. Затронуты вопросы преобразования и проверки данных, оркестровки конвейеров, методов их обслуживания и мониторинга производительности. Примеры программ написаны на Python и SQL и задействуют множество библиотек с открытым исходным кодом.

Для специалистов по обработке данных

Сбор и обработка данных для аналитики

Конвейеры данных — это фундамент успеха в анализе данных.

Сбор данных из множества разнообразных источников и преобразование их для использования в контексте задачи — вот где кроется разница между наличием данных и получением от них реальной пользы. Этот карманный справочник дает определение конвейеров данных и объясняет, как они работают в современном стеке данных.

Вы познакомитесь с общими соображениями и ключевыми моментами принятия решений при реализации конвейеров, таких как пакетный или потоковый прием данных, а также выбор между разработкой и покупкой инструментов. В книге рассматриваются наиболее распространенные решения, принимаемые специалистами по данным, и обсуждаются основополагающие концепции, применимые к платформам с открытым исходным кодом, коммерческим продуктам и к собственным разработкам.

Дополнительные материалы (примеры кода, упражнения и т.д.) доступны для загрузки по адресу https://github.com/jamesdensmore/datapipelinesbook

  •  Что такое конвейер данных и как он работает
  •  Как данные перемещаются и обрабатываются в современной инфраструктуре, включая облачные платформы
  • Популярные инструменты и продукты, применяемые для построения конвейеров
  • Как конвейеры помогают закрыть потребности в аналитике и отчетности
  • Вопросы обслуживания, тестирования и предупреждения сбоев конвейеров данных

Книгу “Конвейеры данных. Карманный справочник” можно купить со скидкой в интернет-магазине издательства “БХВ“.

Предисловие……………………………………………………………….. 1

Для кого эта книга………………………………………………………………………………… 1

Условные обозначения, используемые в этой книге………………………….. 2

Скачивание примеров кода………………………………………………………………….. 3

Благодарности………………………………………………………………………………………. 4

Глава 1. Введение в конвейеры данных……………………… 5

Что такое конвейеры данных?…………………………………………………………….. 5

Кто строит конвейеры данных?…………………………………………………………… 6

Основы SQL и хранилища данных…………………………………………… 7

Python и/или Java………………………………………………………………………. 7

Распределенные вычисления……………………………………………………. 7

Основы системного администрирования………………………………… 8

Понимание общих целей…………………………………………………………… 8

Зачем создавать конвейеры данных?…………………………………………………. 8

Как строятся конвейеры?……………………………………………………………………… 9

Глава 2. Современная инфраструктура данных………… 11

Разнообразие источников данных…………………………………………………….. 12

Принадлежность исходной системы……………………………………… 12

Интерфейс сбора и структура данных………………………………….. 13

Объем данных………………………………………………………………………….. 15

Чистота и достоверность данных………………………………………….. 15

Задержка и пропускная способность исходной системы……. 17

Облачные хранилища данных и озера данных……………………………….. 17

Инструменты сбора данных………………………………………………………………. 18

Инструменты преобразования и моделирования данных………………. 19

Платформы для оркестровки рабочих процессов……………………………. 21

Направленные ациклические графы (DAG)………………………….. 22

Настройка вашей инфраструктуры данных…………………………………….. 23

Глава 3. Стандартные шаблоны конвейеров данных.. 25

Шаблоны ETL и ELT………………………………………………………………………….. 25

Преимущество ELT перед ETL………………………………………………………….. 27

Подшаблон EtLT…………………………………………………………………………………. 30

ELT в анализе данных………………………………………………………………………… 31

ELT в науке о данных…………………………………………………………………………. 32

ELT для информационных продуктов и машинного обучения………. 33

Этапы конвейера для машинного обучения…………………………. 33

Включение обратной связи в конвейер………………………………….. 35

Дополнительная литература по конвейерам
машинного обучения………………………………………………………………. 36

Глава 4. Сбор данных: начнем с извлечения…………….. 37

Настройка среды Python……………………………………………………………………. 38

Настройка облачного хранилища файлов………………………………………. 40

Извлечение данных из БД MySQL…………………………………………………….. 43

Полное или инкрементное извлечение таблицы MySQL……… 44

Репликация двоичного журнала данных MySQL…………………. 54

Извлечение данных из БД PostgreSQL………………………………………………. 64

Полное или инкрементное извлечение таблицы Postgres…….. 65

Репликация данных с использованием журнала упреждающих записей        67

Извлечение данных из MongoDB………………………………………………………. 68

Извлечение данных из REST API………………………………………………………. 74

Сбор потоковых данных с помощью Kafka и Debezium…………………. 79

Глава 5. Сбор данных: загрузка в хранилище…………… 83

Настройка хранилища Amazon Redshift в качестве места назначения        83

Загрузка данных в хранилище Redshift……………………………………………. 85

Инкрементные и полные загрузки……………………………………………………… 89

Загрузка данных, извлеченных из журнала CDC……………………………. 92

Настройка хранилища Snowflake в качестве пункта назначения…. 94

Загрузка данных в хранилище Snowflake………………………………………… 96

Использование вашего файлового хранилища в качестве
озера данных………………………………………………………………………………………. 98

Фреймворки с открытым исходным кодом……………………………………….. 99

Коммерческие альтернативы…………………………………………………………… 100

Глава 6. Преобразование данных……………………………. 103

Неконтекстные преобразования……………………………………………………… 104

Удаление дубликатов записей в таблице……………………………. 104

Парсинг URL-адресов…………………………………………………………… 109

Когда лучше выполнять преобразование?…………………………………….. 113

Основы моделирования данных……………………………………………………… 114

Ключевые термины моделирования данных………………………. 114

Моделирование полностью обновляемых данных……………. 115

Медленно меняющиеся измерения для полностью обновленных данных       119

Моделирование инкрементно собираемых данных…………… 122

Моделирование данных только для добавления……………….. 127

Моделирование данных об изменениях……………………………… 137

Глава 7. Оркестровка конвейеров…………………………… 143

Направленные ациклические графы………………………………………………. 143

Настройка и знакомство с Apache Airflow……………………………………… 144

Установка и настройка…………………………………………………………. 145

База данных Airflow………………………………………………………………. 146

Веб-сервер и пользовательский интерфейс……………………………………. 148

Планировщик…………………………………………………………………………. 152

Исполнители………………………………………………………………………….. 152

Операторы……………………………………………………………………………… 153

Создание DAG Airflow………………………………………………………………………. 154

Простой DAG…………………………………………………………………………. 154

Конвейер ELT и DAG…………………………………………………………….. 157

Дополнительные задачи конвейера………………………………………………… 162

Оповещения и уведомления………………………………………………….. 162

Проверка данных…………………………………………………………………… 163

Расширенные конфигурации оркестровки……………………………………… 163

Связанные и несвязанные задачи конвейера………………………. 164

Когда следует разделять DAG……………………………………………… 164

Координация нескольких DAG с сенсорами……………………….. 165

Управляемые варианты развертывания Airflow…………………………….. 168

Другие фреймворки для оркестровки……………………………………………… 169

Глава 8. Проверка данных в конвейерах………………… 171

Проверяйте раньше, проверяйте чаще……………………………………………. 171

Качество данных исходной системы…………………………………… 172

Риски процесса сбора данных……………………………………………… 173

Проверка данных с участием аналитиков………………………….. 174

Простой фреймворк проверки данных……………………………………………. 175

Простой фреймворк проверки данных………………………………… 175

Структура проверочного теста……………………………………………. 179

Запуск проверочного теста………………………………………………….. 181

Использование фреймворка в DAG Airflow…………………………. 182

Когда нужно остановить конвейер, а когда предупредить и продолжить       183

Дополнения к фреймворку……………………………………………………. 185

Примеры проверок……………………………………………………………………………. 189

Дубликаты записей после сбора данных……………………………. 190

Неожиданное изменение числа строк после сбора
данных……………………………………………………………………………………. 191

Колебания значения показателя………………………………………….. 194

Коммерческие и открытые фреймворки проверки данных…………… 199

Глава 9. Передовые методы обслуживания
конвейеров……………………………………………………………… 201

Как реагировать на изменения в исходных системах…………………… 201

Добавление абстракции……………………………………………………….. 201

Поддержка контрактов данных……………………………………………. 202

Ограничения схемы при чтении…………………………………………… 204

Масштабирование сложности конвейеров…………………………………….. 206

Стандартизация сбора данных……………………………………………. 206

Повторное использование логики модели данных…………….. 208

Обеспечение целостности зависимостей…………………………….. 211

Глава 10. Измерение и мониторинг производительности конвейера            215

Ключевые показатели конвейера……………………………………………………. 215

Подготовка хранилища данных……………………………………………………… 216

Структура данных………………………………………………………………… 216

Журналирование и получение данных о производительности……. 217

Получение истории выполнения DAG из Airflow………………… 218

Добавление журналирования в инструмент проверки данных 222

Преобразование данных о производительности…………………………… 228

Коэффициент успешного выполнения DAG………………………… 229

Отслеживание времени выполнения DAG…………………………… 230

Объем выполненных тестов и доля успешных
результатов……………………………………………………………………………. 232

Оркестровка конвейера производительности………………………………… 235

DAG конвейера производительности…………………………………… 235

Раскрытие информации о производительности…………………………….. 237

Предметный указатель……………………………………………. 239

Об авторе………………………………………………………………… 241

Об изображении на обложке…………………………………… 243

Денсмор Джеймс

Джеймс Денсмор (James Densmore) — технический директор HubSpot, а также основатель и главный консультант Data Liftoff. Он имеет более чем 10-летний опыт руководства группами данных и построения инфраструктуры данных в Wayfair, O’Reilly Media, HubSpot и Degreed. Джеймс получил степень бакалавра компьютерных наук в Северо-Восточном университете и степень магистра делового администрирования в Бостонском колледже.

Summary
Aggregate Rating
3.5 based on 2 votes
Добавить комментарий