Как приблизиться к разнородной консолидации источников данных (хранилище данных в контексте сервисов Amazon)? - PullRequest
0 голосов
/ 17 июня 2019

У меня есть вопрос, касающийся сопоставления данных (сопоставление данных - это процесс сопоставления полей данных из исходного файла и связанных с ними целевых полей).

Я использую красное смещение в качестве своего склада, и я смотрел на службы интеграции, такие как fivetran и stitch , но не отвечал моим требованиям:

  • У меня есть журналы машин, извлеченные по расписанию и сохраненные на s3 (как плоский каталог / корзина)
  • Журналы, генерируемые разными устройствами, не говорят на одном языке (то есть два разных столбца от двух разных устройств могут отображаться на одну и ту же цель)
  • Схема изменения журналов машин (можно добавить новый столбец, удалить некоторый столбец ...)

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

В бизнес-сценарии может использоваться генерация некоторых отчетов, которые включают в себя некоторые метрики и значения kpi, все необходимые сопоставления и преобразования выполняются внутри ETL-клея aws (pyspark). который затем записывает в красное смещение, что позволяет мне использовать dbt для генерации моих моделей.

Итак, мой вопрос, где мне делать все сопоставления для моих данных?

  • Сохранить текущую реализацию
  • Во время приема запускайте лямбда-функцию, чтобы объединить несколько исходных схем в цель
  • Что-то еще ..

Существуют ли какие-либо передовые практики в этой области, которые могут помочь в этом вопросе?

Я ищу решение, которое также дает мне видимость изменений схемы (определить, когда и где происходят изменения)

...