Есть ли в RapidMiner процесс сбора данных из разных форматов? - PullRequest
3 голосов
/ 07 апреля 2019

Я пытаюсь помочь моей команде упростить процесс приема данных, который занимает значительное количество времени. Мы получаем данные в нескольких форматах и ​​с атрибутами, расположенными по-разному. Есть ли способ использовать RapidMiner для создания процесса, который:

  • Обрабатывает файлы по расписанию, которые помещаются в папку (это один, я думаю, я знаю, но я хотел бы советы по этому, как запланированные процессы новые для меня)
  • Автоматически определяет тип входного файла и маршруты к нужному оператору (например, «Чтение CSV»)
  • Распознает относительно небольшое количество атрибутов и упорядочивает их соответствующим образом. В некоторых случаях атрибуты именуются так же, как и наш формат приема, а в других они не являются (например, телефон против телефон # против телефон )

Атрибуты, которые мы обрабатываем, в основном состоят из name , id , phone , email , address . Кроме того, в некоторых случаях имена делятся на первые / последние, а в некоторых они являются полными именами.

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

Я ценю любые советы или рекомендации, которыми вы можете поделиться.

1 Ответ

2 голосов
/ 08 апреля 2019

Ваш вопрос относительно широкий, поэтому, к сожалению, я не могу дать вам полный ответ. Но вот несколько идей о том, как бы я решил упомянутые вами вопросы:

  • Для полного планирования процессов RapidMiner Server - это то, чем вы являетесь находясь в поиске. В этом случае вы можете либо определить расписание (например, регулярно проверять наличие новых файлов) или даже определить веб-сервис для запустить процесс.
  • Для выбора правильного оператора в зависимости от типа файла вы можете используйте комбинацию «Loop Files» и макроса для извлечения правильный тип и используйте либо «Ветвь», либо «Выбрать подпроцесс» для переключение на разные входные маршруты.

  • Оператор «Выбор атрибутов» имеет несколько очень мощных опций для выберите только определенные подмножества. В вашем примере я бы пошел на регулярное выражение сродни [pP]hone.*, чтобы получить другое написание варианты. Также очень полезным в этом случае будет «Переупорядочить Атрибуты "Оператор" и "Переименовать путем замены" для создания общего схема именования.

Общий совет при построении более сложных конвейеров процессов состоит в том, чтобы организовать различные задачи в подпроцессах и использовать оператор «Выполнить процесс». Это делает все гораздо более читабельным и понятным. Также хорошая стратегия обработки ошибок важна для обработки непредвиденных форматов данных.

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

Надеюсь, это станет хорошей отправной точкой для вашего проекта.

...