Фраза дня: инженер данных

Что такое инженер по данным?
Инженер данных - это ИТ-работник, основной задачей которого является подготовка данных для аналитического или оперативного использования. Эти инженеры-программисты обычно несут ответственность за построение конвейеров данных для объединения информации из различных исходных систем. Они интегрируют, консолидируют, очищают данные и структурируют их для использования в аналитических приложениях. Они стремятся сделать данные легкодоступными и оптимизировать экосистему больших данных своей организации.

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

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

Роль инженера данных
Инженеры по обработке данных сосредоточены на сборе и подготовке данных для использования специалистами по обработке данных и аналитиками. Они берут на себя три основные роли:

  1. Универсалы. Специалисты по обработке данных общего профиля обычно работают с небольшими командами, занимаясь комплексным сбором, приемом и обработкой данных. У них может быть больше навыков, чем у большинства инженеров по обработке данных, но меньше знаний об архитектуре системы. Специалист по данным, желающий стать инженером по данным, хорошо подошел бы на роль универсального специалиста. Проект, который специалист по данным общего профиля мог бы предпринять для небольшой службы доставки еды в мегаполисе, заключался бы в создании информационной панели, которая отображает количество доставок, выполненных каждый день за последний месяц, и прогнозирует объем доставки на следующий месяц.
  2. Инженеры, ориентированные на обслуживание конвейеров данных.. Эти инженеры по обработке данных обычно работают в группе анализа данных среднего размера и в более сложных проектах по науке о данных в распределенных системах. Эта роль скорее понадобится средним и крупным компаниям. Региональная компания по доставке еды может предпринять проект, ориентированный на конвейер, чтобы создать инструмент для специалистов по обработке данных и аналитиков для поиска информации о доставках в метаданных. Они могут посмотреть на пройденное расстояние и время, необходимое для доставки в прошлом месяце, а затем использовать эти данные в алгоритме прогнозирования, чтобы увидеть, что это означает для будущего бизнеса компании.
  3. Инженеры, ориентированные на базы данных. Перед этими инженерами данных возложена задача внедрения, обслуживания и наполнения аналитических баз данных. Эта роль обычно существует в более крупных компаниях, где данные распределены по нескольким базам данных. Инженеры работают с конвейерами, настраивают базы данных для эффективного анализа и создают схемы таблиц, используя методы извлечения, преобразования, загрузки (ETL). ETL - это процесс, в котором данные копируются из нескольких источников в единую целевую систему.

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

Обязанности инженера по данным
Инженеры по обработке данных часто работают в составе группы аналитиков вместе с аналитиками данных. Инженеры предоставляют данные в удобных для использования форматах специалистам по данным, которые выполняют запросы и алгоритмы на основе информации для приложений прогнозной аналитики, машинного обучения и интеллектуального анализа данных. Инженеры по обработке данных также предоставляют агрегированные данные руководителям предприятий, аналитикам и другим конечным пользователям, чтобы они могли анализировать их и применять результаты для улучшения бизнес-операций.
Инженеры по обработке данных имеют дело как со структурированными, так и с неструктурированными данными. Структурированные данные - это информация, которая может быть организована в форматированный репозиторий, например, в базу данных. Неструктурированные данные, такие как текст, изображения, аудио- и видеофайлы, не соответствуют традиционным моделям данных. Инженеры по обработке данных должны понимать разные подходы к архитектуре данных и приложениям для обработки обоих типов данных. Различные технологии больших данных, такие как платформы приема и обработки данных с открытым исходным кодом, также являются частью инструментария инженера данных.

Набор навыков инженера данных
Инженеры по данным имеют опыт работы с такими языками программирования, как C #, Java, Python, R, Ruby, Scala и SQL. Python, R и SQL - три наиболее важных языка, которые используют инженеры по обработке данных.

Инженерам необходимо хорошо разбираться в инструментах ETL и REST-ориентированных API для создания заданий интеграции данных и управления ими. Эти навыки также помогают предоставить аналитикам данных и бизнес-пользователям упрощенный доступ к подготовленным наборам данных.

Инженеры по обработке данных должны понимать хранилища данных и озера данных и то, как они работают. Например, озера данных Hadoop, которые разгружают работу по обработке и хранению в установленных корпоративных хранилищах данных, поддерживают работу инженеров по анализу больших данных.

Инженеры по обработке данных также должны понимать базы данных NoSQL и системы Apache Spark, которые становятся обычными компонентами рабочих процессов с данными. Инженеры по обработке данных также должны знать системы реляционных баз данных, такие как MySQL и PostgreSQL. Еще одно направление - архитектура Lambda, которая поддерживает унифицированные конвейеры данных для пакетной обработки и обработки в реальном времени.

Платформы бизнес-аналитики (BI) и возможность их настройки - еще одно важное направление для инженеров по обработке данных. С помощью платформ бизнес-аналитики они могут устанавливать соединения между хранилищами данных, озерами данных и другими источниками данных. Инженеры должны знать, как работать с интерактивными панелями мониторинга, используемыми платформами BI.

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

Наконец, важно знать операционные системы (ОС) на основе Unix. Unix, Solaris и Linux предоставляют функции и root-доступ, которых нет в других операционных системах, таких как Mac OS и Windows. Они дают пользователю больший контроль над ОС, что полезно для инженеров по обработке данных.

Инженер данных vs исследователя данных
Специалисты по обработке данных и специалисты по исследованию данных работают вместе. Инженеры по обработке данных подготавливают и систематизируют данные, которые есть у компаний, в базах данных и других форматах. Они также создают конвейеры данных, которые делают данные доступными для специалистов по данным. Специалисты по обработке данных используют все эти данные для аналитики и других проектов, которые улучшают бизнес-операции и результаты. Специалисты по обработке данных и инженеры по обработке данных различаются по своим навыкам и целям. Инженеры по обработке данных не обязательно имеют конкретную направленность; они, как правило, компетентны в нескольких областях и обладают всесторонними знаниями и навыками. Напротив, специалисты по обработке данных часто имеют специализированные области. Их интересует более исследовательский анализ данных. Специалисты по обработке данных берутся за новые проблемы, связанные с общей картиной, а инженеры по обработке данных вносят в них детали, чтобы сделать это возможным.