Веб-приложение, которое я сейчас разрабатываю, поддерживает экспорт CSV с (используя SELECT INTO OUTFILE) и импорт на (используя LOAD DATA INFILE) сервер MySQL, чтобы поддерживать огромные наборы данных, которые чрезвычайно дороги для обработки с использованием операторов SELECT и объемных операторов INSERT. в коде Java (наборы результатов обработки, кодирование строк, наследие бизнес-логики и т. д.). Эти CSV-файлы не управляются приложением, поэтому они просто представляют необработанное содержимое таблиц из базы данных MySQL. Но, насколько я понимаю, этот подход хорош, только если у меня есть локальные файлы, поэтому и сервер веб-приложений, и mysqld должны работать на одном компьютере.
В конфигурации приложения можно указать подключение к удаленной базе данных. Это, очевидно, означает, что загруженные CSV-файлы хранятся где-то локально на компьютере, на котором выполняется веб-приложение, поэтому я не могу указать расположение файла данных в операторе MySQL LOAD DATA INFILE. (Тот же сценарий для запроса загрузки CSV). Итак, я пытаюсь найти способ указать виртуальный файл CSV - используя поток ввода-вывода, который может обрабатываться JDBC и MySQL, аналогично управлению BLOB-объектами и т. Д.
Поддерживает ли JDBC / MySQL эту технику для файлов CSV для импорта и экспорта?
Заранее спасибо.