2015-10-01 2 views
0

Я искал облегченное, масштабируемое решение для обогащения CSV-файла дополнительными метаданными из базы данных. Каждая строка в CSV представляет элемент данных, а столбцы - метаданные, принадлежащие этому элементу.Enrich CSV с метаданными из базы данных

В основном у меня есть вырез CSV, и мне нужно добавить дополнительные метаданные из базы данных. Доступ к метаданным возможен через вызов ODBC или REST API.

У меня есть несколько вариантов в голове, но я ищу другие идеи. Мои параметры таковы:

Импортируйте CSV в таблицу базы данных, примените дополнительные метаданные с помощью операторов sql UPdATE, найдя необходимые метаданные с операторами SELECT, а затем экспортируйте данные обратно в формат CSV. Для этого решения я думал использовать инструмент ETL, который может быть немного тяжеловесом для решения этой проблемы.

Я также подумал о решении на основе NodeJS, где я прочитал CSV, позвонил в веб-службу, чтобы получить метаданные и записать данные в CSV-файл. CSV может быть, однако, довольно большим, с потенциально десятками тысяч строк, так что это может быть тяжелым для памяти или в случае, если построчная обработка не очень эффективна.

Если у вас есть лучшее решение в виду, пожалуйста, отправьте сообщение. Большое спасибо.

ответ

1

Я думаю, вы уже здесь придумали пару хороших идей.

Запуск с первым предложением, используя инструмент ETL, чтобы обогатить свои файлы CSV, вы должны проверить https://github.com/streamsets/datacollector

Это непрерывный прием пищи подход, так что вы можете даже контролировать каталог CSV файлов для загрузки, как вы получите их , Хотя для выполнения поиска в базе данных нет конкретной функциональности, ее, безусловно, возможно несколькими способами (включая запись собственной логики на Java или скрипт на языке python или JavaScript).

* Полное раскрытие информации Я работаю над этим проектом.

Смежные вопросы