Философия очистки данных - источник, хранилище данных или интерфейс? - PullRequest
0 голосов
/ 25 сентября 2018

Я нахожусь в традиционном стеке ETL Back to Front от источника данных (Adobe Analytics) до хранилища данных MySQL и внешнего интерфейса Tableau для визуализации.Мой вопрос связан с рекомендациями по очистке данных / отображению и на каком этапе.
1) Очистка: у нас нет автоматического (SSIS и т. Д.) Соединителя от источника (Adobe) к хранилищу данных, поэтому у нас остаетсяпериодическая загрузка файлов CSV.По разным причинам эти файлы становятся неоптимальными (опечатки, пустые значения и т. Д.). Вопрос: следует ли «очищать» файлы CSV или загружать данные в хранилище данных MySQL (в таблицах / представлениях)?2) Отображение: ряд различных вариантов использования конечного пользователя требует, чтобы мы отобразили данные в таблицы (географические регионы, типы учетных записей и т. Д.) ... должно ли это быть сделано в хранилище данных (присоединение MySQL) или это простокак хорошо в передней части (Tableau)?Я считаю, что реальный вопрос касается производительности, поскольку вы можете сделать это относительно легко на любом этапе.

Спасибо!

1 Ответ

0 голосов
/ 26 сентября 2018

1) Очистка : я бы посоветовал вам загрузить данные в файлах CSV в промежуточную базу данных и очистить их оттуда до того, как они попадут в базу данных, к которой выподключите Табло к.Таким образом, вы можете сохранить исходные файлы, которые вы можете в конечном итоге перезагрузить при необходимости.Я не уверен, что такое «традиционный стек ETL Back to Front», но инструмент ETL, такой как Microsoft SSIS или Pentaho Data Integrator (бесплатно), поможет вам в создании этих процессов, и вы сможете периодически запускать задания ETL.или каждый раз, когда новый файл загружается в каталог.Вот хороший пример такого процесса: https://docs.microsoft.com/en-us/sql/2014/integration-services/lesson-1-create-a-project-and-basic-package-with-ssis

2) " Mapping ": у вас должна быть модель данных, вероятно, размерная модель , построенный на базе данных, к которой Tableau подключается.Эта модель данных должна хранить чистые и "моделируемые бизнесом" данные.Вы должны выполнять поиск (соединения / сопоставления) при преобразовании ваших данных, чтобы вы могли загрузить их в модель данных.Использование Tableau для исследования размерной модели чистых данных также будет лучше для UX / производительности.

Общий поток будет выглядеть примерно так: CSV -> Промежуточная база данных -> Clean / Transform / Map -> Модель бизнес-данных (база данных) -> Таблица

...