Мне нужно создать один большой XML-файл, который будет содержать более 60 миллионных записей. Мне нужен быстрый способ выполнить эту операцию, поскольку она будет повторяться на регулярной основе.Создание XML для миллионов записей
У меня есть данные в двух местах
- в базе данных в двух различных таблицах.
- В файловой системе В двух файлах, разделенных двумя файлами.
В настоящее время я пытаюсь использовать парсер StaX для создания XML-файла в JAVA.
Здесь мне нужно знать, следует ли использовать файл базы данных/текстовый файл для чтения данных и создания XML-файла.
Какой вариант будет быстрее?
Кроме того, существует ли какой-либо конкретный API, который оптимизирует процесс создания/преобразования для таких больших данных в XML?
Я открыт для обработки файлов, используя команды linux, а также обеспечивает более быструю настройку.
UPDATE на комментарии
Как быстро вы можете получить XML данные элемента из двух отдельных файлов против DB запросов CSV дамп? Все, что доступно в базе данных, доступно в разделенных файлах PIPE. И как FAST мы можем получить/создать информацию о элементе XML именно в этом вопросе. Именно это повлияет на общую скорость работы.
Устранение картирования: отображение 1 для многих. 1 запись в первых файлах карт примерно до 8000 записей во втором текстовом файле/таблице.
UPDATE on Comment -> Использовать большие выходные буферы.
Понял. Будет читать данные из базы данных/файла в больших кусках и очищать его, как только я обработаю полный кусок. Но опять же я должен делать чтение базы данных или чтение файла?
Обновление Можно ли экспортировать его с помощью любого инструмента из базы данных MySQL, автоматически преобразованного в формат XML?
DB находчивый для значимых запросов и отчетов. Я бы сбросил вывод запроса в CSV и сгенерировал вывод XML. Таким образом, БД остается в покое, когда генерируется XML; что может занять много времени. Используйте большой выходной буфер перед сохранением для вывода XML-файла. – SparKot
ah, с опцией 'pipe separate fields', которую вам нужно проверить. Используйте большой входной буфер для чтения файлов. Как быстро вы можете получить информацию о XML-элементе из двух отдельных файлов и DB Query CSV? Насколько сложным является сопоставление между этими двумя файлами? это '1-1'? это записи, отсортированные в этих файлах, например, «первичный ключ»? – SparKot
@SparKot -> Что вы подразумеваете под «Использовать большой выходной буфер перед сохранением для вывода XML-файла». ? –