MONGODB Mongoimport возможно ускорить?

2

У меня есть файл CSV объемом 2 ГБ с 9 М-записями, которые я импортирую в MongoDB, используя собственный инструмент mongoimport. Он импортирует CSV со скоростью 8K в секунду. Общее время составляет 10 минут. Скорость импорта довольно разумная, но, похоже, она намного медленнее, чем версия MySQL LOAD DATA INFILE (занимает всего 2 минуты, чтобы вставить все записи в базу данных). Хотя это приемлемо (MongoDB построен для объектов типа JSON, и ускорения обычно запрашиваются, а не вставляются), я хотел бы знать, есть ли способ ускорить количество вставок в секунду, выполненное в MongoDB mongoimport? У меня есть только один компьютер с 8 ГБ оперативной памяти и 4 ядра. Благодарю.

  • 2
    Поместите его на второй диск, убедитесь, что нет никаких индексов ... Отключите ведение журнала ... Если он не забивает диск и процессор, вы можете написать немного кода для чтения из файла и вставьте это быстрее. Или просто отдохнуть и подождать. :)
  • 0
    Хорошо, я думал, что собственный инструмент импорта будет быстрее, чем «кусок кода, который будет проходить через файл и выполнять пакетную вставку». Это заблуждение с моей стороны?
Показать ещё 4 комментария
Теги:
csv
mongoimport

1 ответ

6
Лучший ответ

Поскольку большинство времени, скорее всего, потрачено на сериализацию объектов JSON в BSON (собственный формат MongoDB), вы, скорее всего, получите более быстрый импорт, если сможете разделить свой файл и иметь несколько параллельных заданий, каждый из которых запускает mongoimport с отдельным файлом.

  • 0
    Спасибо, это хороший момент, я думаю, что попробую это.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню