Это 12-й день моего участия в августовском испытании обновлений. Узнайте подробности события:Испытание августовского обновления
Workflow System
Мы соединяем несколько различных модулей обработки вместе и, наконец, получаем направленный ациклический граф (DAG) с нужными нам результатами, который называется системой рабочего процесса.
- Режим копирования
- режим фильтра
- Раздельный режим
- Режим слияния
Копировальный шаблон
Режим репликации обычно заключается в полной репликации данных в одном модуле обработки данных на два или более модулей обработки данных с последующей их обработкой разными модулями обработки данных.
Схема системы рабочего процесса обычно показана на следующем рисунке.
Шаблон фильтра
Роль режима фильтра состоит в том, чтобы отфильтровать данные, которые не соответствуют определенным критериям.
После того, как набор данных пройдет этот модуль обработки данных, набор данных будет сокращен до только подходящих данных. Схема системы рабочего процесса обычно показана на следующем рисунке.
Шаблон сплиттера
Если вы обрабатываете набор данных и не хотите отбрасывать какие-либо данные в нем, но хотите классифицировать данные по различным категориям для обработки, вам необходимо использовать режим разделения для обработки данных. Схема его рабочего процесса обычно показана на следующем рисунке.
Столярный шаблон
В режиме слияния несколько разных наборов данных преобразуются в один агрегированный набор данных, который затем обрабатывается в одном рабочем процессе.
упражняться
проблема
В системе бронирования авиабилетов нам необходимо обрабатывать такие функции, как регистрация пользователей, покупка билетов и 24-часовые напоминания перед поездкой. Какие шаблоны проектирования используются при обработке данных в системе во всем этом процессе?
отвечать
1. Зарегистрируйтесь
Режим слияния (поскольку канал регистрации может иметь разные каналы, такие как регистрация номера мобильного телефона, регистрация по электронной почте, регистрация в WeChat и т. д., поэтому его необходимо объединить)
2. Купить авиабилет
Фильтрация + объединение (сначала отфильтруйте информацию о авиабилетах, которую ищет пользователь, а затем найдите подходящие билеты, поскольку они могут поступать из разных каналов, все они должны быть объединены и возвращены пользователю)
3. Напоминание
Копировать + фильтровать + отсоединить
- Фильтрация: отфильтруйте пользователей и авиабилеты, которым нужно напомнить, на основе таких факторов, как время и местоположение.
- Копировать: может потребоваться выполнить различную обработку одних и тех же данных (пользователи, которые проверили несколько способов напоминания) (уведомление по электронной почте, уведомление по телефону или уведомление по SMS).
- Разделение: Разделите ранее отфильтрованных пользователей на 3 группы, соответствующие соответственно (уведомление по электронной почте + уведомление по телефону + уведомление по SMS)