Что ж, проблема с отслеживанием DTA заключается не только во временной природе данных, но и в том, что это не самое эффективное решение.
Компонент архивирования в конвейере - это правильный путь, хотя я бы сказал, что, посмотрев на одну из реализаций, которая существует - его можно довольно легко сделать более эффективным - поэтому, если вы посмотрите вокруг, посмотрите, есть ли это работает в потоковом режиме.
Под «потоковой модой» я подразумеваю тот, который не загружает все сообщение в память (например, в XmlDocument), а реализует собственный поток и обрабатывает событие Read.
Также вам нужно будет подумать, можете ли вы ограничить себя сообщениями Xml (если компонент действительно использует XmlDocument, как тот, который я видел), и ожидаете ли вы, что сообщения состоят из нескольких частей (вам нужно убедиться, что вы заархивировать все части и как-то сгруппировать их в файловой системе / базе данных)