mongoimport: Импорт данных в MongoDB — практическое руководство

Утилита mongoimport импортирует данные в MongoDB. Рассмотрим импорт JSON-данных в новую коллекцию и поведение при дубликатах ключей.

Подготовка к импорту

Пример использует файл mongoimport.txt с командами для mongoimport. Он содержит варианты команд для импорта в удаленный или локальный сервер, а также из JSON-массива или CSV-файла.

Импорт в новую коллекцию

Импортируем данные в коллекцию new_persons. Команда для удаленного сервера:

mongoimport --username <username> --password <password> --host <host> --db myDB --collection new_persons <путь_к_файлу>

<username>, <password>, <host> – учетные данные. myDB – база данных, new_persons – коллекция. <путь_к_файлу> – путь к файлу с данными.

Файл с данными

JSON-файл new_persons.json:

[
  { "name": "Bob", "age": 25 },
  { "name": "Alice", "age": 27 }
]

Запятые между документами в JSON-массиве необязательны.

Импорт и проверка

После выполнения команды mongoimport и перехода в директорию с new_persons.json, данные импортируются в new_persons. Проверка в Robo 3T (или другом GUI) показывает две записи с полями "name" и "age" (тип "age" – целое число).

Дубликаты ключей

Добавим в new_persons.json поля "_id" с одинаковыми значениями:

[
  { "name": "Bob", "age": 25, "_id": <значение_id> },
  { "name": "Alice", "age": 27, "_id": <значение_id> }
]

Повторный запуск mongoimport вызовет ошибку дублирующего ключа, и документы не импортируются. В коллекции останутся только первоначальные два документа.

mongoimport – простой и эффективный способ импорта данных в MongoDB. Обработка ошибок, например, дубликатов ключей, важна, и mongoimport с ней справляется.

Что будем искать? Например,программа