Инжиниринг данных охватывает две области: создание конвейеров, которые транспортируют или преобразовывают данные, и программную инженерию, окружающую эти данные. Инженер данных сосредоточен на передовых методах разработки программного обеспечения, связанных с перемещением и транспортировкой данных.

Данные: пакетные, потоковые и события

При создании облачных приложений при обработке данных необходимо учитывать три парадигмы:

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

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

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

Задание, управляемое событиями. События превратились в предпочтительный механизм для облачных приложений, поскольку многие взаимодействия с пользователями или другими системами можно разбить и классифицировать по разным событиям. Например, предположим, что вы загружаете ежемесячную бухгалтерскую книгу финансов и информации в онлайн-хранилище, и это хранилище (например, Amazon S3) реагирует на событие загрузки, обрабатывая данные с помощью фрагмента кода.

ПРОЕКТ Глава VI — Брюс Хейдон © 2021, 2022