我正在生产中运行mongo数据库。我想将数据从MongoDB移至Postgres,以实现某些迁移要求。
现在涉及数据部分,我打算编写一个实用程序,该实用程序将从MongoDB中读取数据并写入Postgres。
在这里,我想从mongo db(包含240335行)中读取所有数据到Postgres。
我无法将整个数据读取到应用程序的内存中。我想批量读取10000,然后写一些修改并将其写入Postgres,然后再次读取下一个10000,再重复一次。
我该怎么做?
答案 0 :(得分:0)
我从没做过,但是我认为,您可以使用游标分别上传记录。 问题-解决方案将效率低下。
示例
var myCursor = db.bios.find( );
var myDocument = myCursor.hasNext() ? myCursor.next() : null;
if (myDocument) {
var myName = myDocument.name;
print (tojson(myName));
//put record to db or add to batch, and upload if 1000 in collection
}
也许您可以使用流?我不知道是否可以在MongoDB中使用流。