У меня есть большой CSV-файл, который содержит более 30 миллионов строк.Мне нужно загружать этот файл ежедневно и определить, какие строки были изменены.К сожалению, нет уникального ключевого поля, но можно использовать четыре поля, чтобы сделать его уникальным.После того, как я определил измененные строки, я хочу экспортировать данные.Я пытался использовать традиционное решение SQL Server, но производительность настолько низкая, что не сработает.Поэтому я смотрю на Mongodb - ему удалось импортировать файл примерно за 20 минут (что нормально).Сейчас у меня нет опыта использования Monogdb и, что более важно, знания лучших практик.Итак, моя идея заключается в следующем:
Как один раз - Импорт данных в коллекцию с использованием mongoimport.
Скопируйте всеуникальный идентификатор, сгенерированный mongo и помещающий их в отдельную коллекцию.
Импортируйте новые данные в существующую коллекцию, используя поля upsert, которые должны создавать новый идентификатор для каждой новой и измененной строки.
Сравните «копию» с новой коллекцией, чтобы вывести список всех измененных строк.
Экспорт измененных данных.
Для меня это сработает, но я надеюсь, что есть гораздо лучший способ решить эту проблему.