У меня есть огромный файл, в котором может быть от нескольких сотен тысяч до 5 миллионов записей. Его файл с разделителями табуляции. Мне нужно прочитать файл с FTP-сервера, преобразовать его и, наконец, записать в FTP-адрес.
Я собирался использовать FTP-коннектор, чтобы получить повторяемый поток и поместить его в пакет mule. Идея пакетного процесса Inside mule заключалась в том, чтобы использовать пакетный шаг для преобразования записей и, наконец, в пакетном агрегированном FTP записывать файл в место назначения в режиме добавления 100 записей за раз.
Q1. Это хороший подход или есть лучший подход?
Q2. Как работает этап пакетной загрузки и отправки mule (https://docs.mulesoft.com/mule-runtime/4.3/batch-processing-concept#load-and-dispatch) Ожидает ли он, пока весь поток из миллионов записей будет прочитан в памяти перед отправкой экземпляр партии мула?
Q3. При выполнении FTP-записи в пакетном агрегате существует вероятность, что параллельные потоки одновременно начнут добавлять контент на FTP, тем самым повреждая записи. Этого можно избежать. Я читал о блокировках файлов (https://docs.mulesoft.com/ftp-connector/1.5/ftp-write#locks). Я предполагаю, что это просто вызовет исключение блокировки файла и не обязательно будет ждать записи FTP в режиме добавления.