Я перемещаю сложный процесс из SQL в приложение .NET.Я как бы использую метод грубой силы, извлекая только те данные, которые необходимы из SQL, и сохраняя их в таблицах данных.Используя паттерн конвейера со степпингом, я разбил процессы, которые можно выполнять параллельно (не зависящие от других процессов и не работающие с одними и теми же битами данных).
Все идет хорошо, но я хочу знать, есть ли решение sql в памяти, которое будет работать лучше, чем структуры DataSet / DataTable.Мы говорим о 50 тысячах строк одновременно с поддержкой до 1 метра строк данных (прочитайте 5б строк).Размер строки для 1 строки (со всеми поддерживаемыми строками данных) составляет около 1 КБ (из-за больших строк).
Мой вопрос конкретно касается производительности DataSets, нехватки памяти и постоянства.Мне нужно будет сериализовать данные на каждом этапе на диск для целей восстановления.
Было бы лучше вместо этого просто сопоставить строки строго типизированной модели?Мне не нужны какие-либо отношения или другие преимущества наборов данных;Я заменил большинство функций поиска своими собственными, используя параллельную обработку.
В данных используются только примитивные типы, без больших двоичных объектов, потоков, географии и т. Д.