Мне нужно перенести 5 миллионов записей от PostgreSQL
до MongoDb
.Перенести данные из PostgreSQL в MongoDB
Я пробовал использовать mongify
для того же, но поскольку он работает на ruby
, и я совсем не знаком с рубином, я не смог решить возникшие у него ошибки.
Итак, я пытался писать код, сам в node.js
что бы сначала преобразовать PostgreSQL data
в JSON
, а затем вставить этот JSON в mongoDb
. Но это не удалось, так как он съел много оперативной памяти, и может быть перенесено не более 13000 записей.
Тогда я подумал о написании кода в Java
из-за его сборщика мусора. Он отлично работает с точки зрения использования ОЗУ, но скорость очень медленная (около 10000 записей/час). При такой скорости мне потребовались бы несколько дней, чтобы перенести мои данные.
Итак, есть ли более эффективный и быстрый способ сделать это? Будет ли программа python быстрее, чем программа Java? Или есть ли другой готовый инструмент для этого?
конфигурации Моя система: ОС - Windows 7 (64 бит), RAM - 4 Гб, процессор i3
Вы используете bulkInsert? Http: //www.thejavageek.com/2015/07/08/mongodb-bulk-insert/ –
@RahulKumar Нет Я получаю строки из Postgresql и вставляю их в Mongodb один за другим. Поскольку преобразование всех 5 миллионов записей вместе в JSON не поддерживается ОЗУ. Итак, я делаю db.collection.insert (jsondata) –
, чтобы вы сразу получили все 5 миллионов строк из postgresql, а затем запустили запись в mongodb один за другим? в любом случае вы можете искать пакетную обработку. –