Я пытаюсь выполнить сортировку слиянием на отсортированных кусках файлов XML на дисках.Нет шансов, что они все уместятся в памяти.Мои XML-файлы состоят из записей.
Скажем, у меня есть файлы XML.Если бы у меня было достаточно памяти, я бы считал все содержимое каждого файла в очередь для соответствующего кодирования, по одной очереди для каждого файла, сравнил временную метку для каждого элемента в каждой очереди и вывел бы метку с наименьшей временной меткой в другой файл (файл слияния),Таким образом, я объединяю все маленькие файлы в один большой файл со всеми записями, отсортированными по времени.
Проблема в том, что у меня недостаточно памяти для чтения всего XML с помощью .ReadToEnd для последующей передачи.Метод синтаксического анализа XDocument.
Существует ли чистый способ прочитать достаточно записей, чтобы заполнить каждую из очередей для следующего прохода, сравнивая их атрибут XElement «TimeStamp», запоминая, какой XElement с диска он прочитал?
Спасибо.