如何使用Javascript在Mongo shell内部处理数百万个文件?



假设,我的文件有以下内容,位于/home/usr1/Documents/companyNames.txt

名称1

名称 2

名称 3

数以百万计的名字...

我尝试了以下代码:

$> var string = cat('home/usr1/Documents/companyNames.txt');
$> string = string.split('n');
$> db.records.find({field: {$in: string}});

根据链接中的代码,我可以读取Mongo Shell Javascript文件中的csv文件吗?

如果文件很小,则此方法有效,但是当文件有数百万行时,它会失败。文件中的整行都试图放入内存并崩溃。有没有其他方法可以使用Java脚本处理Mongo shell中的大文件?

Mongo 不太擅长大查询。

你可能不得不走Javascript的方式:

var string = cat('home/usr1/Documents/companyNames.txt');
string = string.split('n');
let results = [];
string.forEach(string => result.push(db.records.find({field: {$eq: string}})));

最新更新