环境:
问题
即使结果数量不超过100,MongoDB在执行函数时的性能也很低。
请注意,该集合最多包含170,000个文档,磁盘上大约有20GB的数据。还创建了一些索引以加快查询和排序的速度。
示例代码
col = await collection.updateOne({
id
}, {
$set: updateObject
}, {
upsert: true
});
// Takes up to 10 seconds to update only one document
collection.deleteMany({
productId: {
$in: ids
}
}, () => {
// some callback after deletion
});
// takes up to 144 second to delete about 50 documents
await Collection
.aggregate([{
$sort: {
groupName: 1
}
}, {
$project: {
$group: 1
}
}, {
$match: q // q is an object containing one to four properties to filter the results
}, {
$group: {
_id: '$group',
groupName: {
$first: '$group.groupName'
},
count: {
$sum: 1
}
}
}]).toArray();
// takes up to 340 seconds to execute
// I have created an index on { groupName: 1 } to speed up the sort() function.
到目前为止我做了什么?
我试图创建一些索引来加快find()
的搜索结果,幸运的是,它确实做到了。但是更新和删除查询没有运气。
问题
这是我在mongoDB上的第一个项目,我喜欢它。但是我发现它不如SQL快。 我可能搞砸了我的收藏集,还是这些查询花费的时间太长是正常现象?
我应该怎么做才能加快查询性能?
编辑:可以在下面找到示例文档:
{
"_id" : ObjectId("5cc5d9a0dde739ad304e9bd3"),
"id" : "b2cProduct-5cc5d9a0d1afc7771f316f02",
"store" : "some store",
"status" : "approved",
"productId" : "5cc5d9a0d1afc7771f316f02",
"created_at" : "2019-04-28T18:52:43+03:00",
"title" : "Connection Kit iphone 4s iPadiPad2 5in1 3xUSB",
"subTitle" : "Connection Kit iphone 4s iPad/iPad2 5in1 3xUSB Adapter",
"url" : "connection-kit-iphone-4s-ipadipad2-5in1-3xusb-5cc5d9a0d1afc7771f316f02",
"image" : {
"updated_at" : [],
"updated_by" : [],
"_id" : ObjectId("5cad1142059cbeafce880c34"),
"name" : "6lj2kpk2g5s0juab69di-2h3rf5jl4so0juab69wl",
"ext" : "jpg",
"path" : "./public/ucdn/images/",
"publicPath" : "ucdn/images/",
"target" : "productImage",
"created_at" : ISODate("2019-04-09T21:40:18.431Z"),
"userContent" : ObjectId("5cad1142059cbeafce880c33"),
"updatedAt" : ISODate("2019-04-09T21:40:18.431Z"),
"__v" : 0
},
"brandUrl" : "Other",
"brandId" : "5b6b1f2ad6edf943fa48645f",
"brandName" : "Other",
"rating" : 0,
"storeName" : "Some Store",
"storeUrl" : "platform/somestore",
"storeId" : "5ca760db12c5bdb8392cb08f",
"storeAverageCommentRate" : 0,
"storeRating" : 0,
"category" : "59b48ddd0ff2e4744ce0e73d",
"categoryName" : "Others",
"categoryChain" : [
"Others",
"Network",
"Network and Modems",
"Computer Accessories",
"Electronics"
],
"categoryIdChain" : [
"59b48ddd0ff2e4744ce0e73d",
"58467690aaa46604db0ee247",
"58467690aaa46604db0ed702",
"58467690aaa46604db0ed688",
"58467690aaa46604db0ed687"
],
"isAdult" : false,
"cancelDiscount" : false,
"productType" : "b2c",
"customCommissionRate" : 0,
"productVType" : "b2c",
"discountType" : null,
"discountRate" : null,
"stock" : 100,
"sid" : 365022,
"productCode" : "201113",
"storeTransactionCount" : 0,
"storeCommentCount" : 21,
"propertyOptions" : [],
"productHit" : 0,
"productUserHit" : 0,
"averageCommentRate" : 0,
"commentCount" : 0,
"favoriteCount" : 0,
"recommendCount" : 0,
"priceAlarmCount" : 0,
"stockRequestCount" : 0,
"orderCount" : 0,
"discountRatePresentation" : null,
"activeAds" : {
"list" : {
"super" : {},
"bold" : {},
"subTitle" : {},
"dailyOffer" : {}
},
"search" : []
},
"currency" : "TL",
"superDate" : 0,
"condition" : null,
"intPrice" : 260.24,
"paidPrice" : "260,24",
"price" : "260,24",
"rawPaidPrice" : 260.24,
"rawVPrice" : 260.24,
"freeShipping" : true,
"shippingTime" : 3,
"model" : [
"connectionkit3134"
],
"secondaryTitleIndexes" : "çoklu 4s kit iphone ipadipad2 3xusb kart okuyuc coklu connection 5in1 connection kit iphone 4s ipadipad2 5in1 3xusb coklu kart okuyuc connection kit iphone 4s ipadipad2 5in1 3xusb çoklu kart okuyuc",
"pref" : "",
"indexCycleId" : 14590,
"primaryCategoryIndexes" : "elektroni diğerleri ağ diğerleri ağ ürünleri a diğerleri ağ ürünleri ağ ve modem bilgisayar ve diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesuarla digerleri ag urunleri ag ve modem bilgi digerleri ag urunleri ag ve modem bilgisayar ve aksesuarlari e digerleri ag urunleri ag ve modem bilgisayar ve aksesuarlari el ur urunler digerleri ag mode bilgisaya aks diğerleri ağ ürünleri diğerleri ağ ürünleri ağ diğerleri ağ ürünleri ağ ve modem bilg diğerleri ağ ürünleri ağ ve modem bilgisayar ürünleri digerleri ag urunleri ag ve modem bilgisayar ve aksesuarlari elektronik ag diğerleri ağ ürünleri ağ ve modem bilgisayar ve ak diğerleri ağ ürünleri ağ diğerleri ağ ürünleri ağ ve modem bilgisayar ve a digerleri ag urunleri ag ve modem bilgisayar ve aksesu aksesuarl diğerleri ağ ürünle diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesuar bil digerl digerleri ag urunleri ag ve modem bilgisayar ve aksesuarlari elektr digerleri ag urunleri ag ve modem bilgisayar ve aksesuarlari elektro urunleri digerleri ag urunler digerleri ag urunleri ag ve mo digerleri ag urunleri ag ve modem bilgisayar ve aksesuarlari akses diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesuarları elektronik diğer urun diğerleri ağ ürünleri ağ ve modem diğerleri ağ ürünleri ağ ve modem diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesuarları elektr diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesuarları elektroni aksesuarlar diğerleri ağ ürü diğerleri ağ ürünleri diğerleri bilg bilgisa ürü diğerleri ağ ürünler diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesuarları e diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesuarları el digerleri ag urunleri ag ve modem bi diğerleri ağ ürünleri ağ ve m diğerleri ağ ürünleri ağ ve modem bilgisayar ve aks digerleri ag urunleri ag ve modem bilgisayar ve digerleri ag urunleri ag ve modem bilgisayar ve aksesuarlari digerleri ag urunleri ag ve modem bilgisayar ve aksesuarlari elektroni elektronik digerleri ag urunleri ag ve modem bilgisa digerleri ag urunleri ag ve modem bilgisayar digerleri ag urunleri ag ve digerleri ag urunleri ag ve modem digerleri ag urunleri ag ve modem bilgisayar ve aksesuar aksesu diğerleri ağ ürünleri ağ ve modem b diğerler digerleri ag uru digerleri ag urunleri ag v urunl urunle digerleri ag urunleri ag ve modem bilgisayar ve aksesuarlari elekt ak diğerleri ağ diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesuarları elekt digerleri digerleri ag urunleri ag ve modem bilg digerleri ag urunleri ag ve modem bilgis diğerleri ağ ürün diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesuarl digerleri ag urunleri ag ve digerleri ag urunleri ag ve m elek elektron diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesu diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesuarları uru bilgisayar diğerle digerleri ag urunleri diğerleri ağ ürünleri ağ ve modem bil diğerleri ağ ürünleri ağ ve modem bilgisayar ve digerleri ag urunl digerleri ag urunleri ag ve modem digerleri ag urunleri ag ve modem bilgisayar ve digerleri a digerleri ag diğerleri ağ ürünleri ağ ve mod diğerleri ağ ürünleri ağ ve modem bilgisayar diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesuarları elektron aksesuarlari ürünle dig el ele diğerleri ağ ürünleri ağ ve modem bilgisayar ve akse diğerl digerleri ag urunleri ag ve modem bilgisayar ve aksesuarl digerleri ag urunleri ag ve modem bilgisayar ve aksesuarla diğerleri a diğerleri ağ ürünleri ağ ve mode diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesuarları ele ve digerleri ag urunleri ag ve modem bilgisayar ve akses digerleri ag urunleri ag ve modem bilgisayar ve aksesuarlari ele diğerleri ağ ürünl digerleri ag urunleri ag digerleri ag urunleri ag ve modem bilgisayar ve aksesuarlar diğerleri ağ ür diğerleri ağ ü diğerleri ağ ürünleri ağ ve modem bilgi ürünl digerleri ag ur digerleri ag urunleri ag ve modem bilgisayar ve aksesuarlari elektron dige digerleri ag urunle digerleri ag urunleri ag ve modem bilgisayar ve aksesuarlari elek digerleri ag urunleri ag ve mod digerleri ag urunleri ag ve modem b digerleri ag urunleri ag ve modem bilgisayar diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesua diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesuarlar aksesuar digerle digerleri ag urunleri a bi bilgisay elektr diğerleri ağ ürünleri ağ v diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesuarları elek digerleri ag urun digerleri ag urunleri ag ve modem bilgisayar ve ak aksesua digerleri ag urunleri ag ve modem bilgisayar ve akse akse bilgi diğ ür digerleri ag urunleri digerleri ag urunleri ag ve modem bilgisayar ve a diğerleri ağ ürünleri ağ ve modem bilgisayar v diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesuarları digerleri ag urunleri ag ve mode digerleri ag urunleri ag ve modem bil digerleri ag urunleri ag ve modem bilgisayar v elekt ağ ürün digerleri diğerleri diğerleri ağ ürünleri ağ ve mo diğerleri ağ ürünleri ağ ve modem bilgisayar ve akses ürünler digerleri ag urunleri ag ve modem bilgisayar ve aks aksesuarla diğerleri ağ ürünleri ağ ve modem bilgisay modem aksesuarları diğe diğerleri ağ ürünleri ağ ve diğerleri ağ ürünleri ağ ve modem bilgisaya digerleri ag u digerleri ag urunleri ag ve modem bilgisayar ve aksesua mod digerleri ag urunleri ag ve modem bilgisaya diğerleri ağ ürünleri ağ ve modem bi diğerleri ağ ürünleri ağ ve modem bilgis diğerleri ağ ürünleri ağ ve modem bilgisa diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesuarları elektro diger di digerleri ag urunleri ag ve modem bilgisay bilgis elektro diğerleri ağ ürünleri ağ ve digerler digerleri ag urunleri ag mo",
"secondaryCategoryIndexes" : "elektroni diğerleri ağ diğerleri ağ ürünleri a diğerleri ağ ürünleri ağ ve modem bilgisayar ve diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesuarla digerleri ag urunleri ag ve modem bilgi digerleri ag urunleri ag ve modem bilgisayar ve aksesuarlari e digerleri ag urunleri ag ve modem bilgisayar ve aksesuarlari el ur urunler digerleri ag mode bilgisaya aks diğerleri ağ ürünleri diğerleri ağ ürünleri ağ diğerleri ağ ürünleri ağ ve modem bilg diğerleri ağ ürünleri ağ ve modem bilgisayar ürünleri digerleri ag urunleri ag ve modem bilgisayar ve aksesuarlari elektronik ag diğerleri ağ ürünleri ağ ve modem bilgisayar ve ak diğerleri ağ ürünleri ağ diğerleri ağ ürünleri ağ ve modem bilgisayar ve a digerleri ag urunleri ag ve modem bilgisayar ve aksesu aksesuarl diğerleri ağ ürünle diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesuar bil digerl digerleri ag urunleri ag ve modem bilgisayar ve aksesuarlari elektr digerleri ag urunleri ag ve modem bilgisayar ve aksesuarlari elektro urunleri digerleri ag urunler digerleri ag urunleri ag ve mo digerleri ag urunleri ag ve modem bilgisayar ve aksesuarlari akses diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesuarları elektronik diğer urun diğerleri ağ ürünleri ağ ve modem diğerleri ağ ürünleri ağ ve modem diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesuarları elektr diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesuarları elektroni aksesuarlar diğerleri ağ ürü diğerleri ağ ürünleri diğerleri bilg bilgisa ürü diğerleri ağ ürünler diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesuarları e diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesuarları el digerleri ag urunleri ag ve modem bi diğerleri ağ ürünleri ağ ve m diğerleri ağ ürünleri ağ ve modem bilgisayar ve aks digerleri ag urunleri ag ve modem bilgisayar ve digerleri ag urunleri ag ve modem bilgisayar ve aksesuarlari digerleri ag urunleri ag ve modem bilgisayar ve aksesuarlari elektroni elektronik digerleri ag urunleri ag ve modem bilgisa digerleri ag urunleri ag ve modem bilgisayar digerleri ag urunleri ag ve digerleri ag urunleri ag ve modem digerleri ag urunleri ag ve modem bilgisayar ve aksesuar aksesu diğerleri ağ ürünleri ağ ve modem b diğerler digerleri ag uru digerleri ag urunleri ag v urunl urunle digerleri ag urunleri ag ve modem bilgisayar ve aksesuarlari elekt ak diğerleri ağ diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesuarları elekt digerleri digerleri ag urunleri ag ve modem bilg digerleri ag urunleri ag ve modem bilgis diğerleri ağ ürün diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesuarl digerleri ag urunleri ag ve digerleri ag urunleri ag ve m elek elektron diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesu diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesuarları uru bilgisayar diğerle digerleri ag urunleri diğerleri ağ ürünleri ağ ve modem bil diğerleri ağ ürünleri ağ ve modem bilgisayar ve digerleri ag urunl digerleri ag urunleri ag ve modem digerleri ag urunleri ag ve modem bilgisayar ve digerleri a digerleri ag diğerleri ağ ürünleri ağ ve mod diğerleri ağ ürünleri ağ ve modem bilgisayar diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesuarları elektron aksesuarlari ürünle dig el ele diğerleri ağ ürünleri ağ ve modem bilgisayar ve akse diğerl digerleri ag urunleri ag ve modem bilgisayar ve aksesuarl digerleri ag urunleri ag ve modem bilgisayar ve aksesuarla diğerleri a diğerleri ağ ürünleri ağ ve mode diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesuarları ele ve digerleri ag urunleri ag ve modem bilgisayar ve akses digerleri ag urunleri ag ve modem bilgisayar ve aksesuarlari ele diğerleri ağ ürünl digerleri ag urunleri ag digerleri ag urunleri ag ve modem bilgisayar ve aksesuarlar diğerleri ağ ür diğerleri ağ ü diğerleri ağ ürünleri ağ ve modem bilgi ürünl digerleri ag ur digerleri ag urunleri ag ve modem bilgisayar ve aksesuarlari elektron dige digerleri ag urunle digerleri ag urunleri ag ve modem bilgisayar ve aksesuarlari elek digerleri ag urunleri ag ve mod digerleri ag urunleri ag ve modem b digerleri ag urunleri ag ve modem bilgisayar diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesua diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesuarlar aksesuar digerle digerleri ag urunleri a bi bilgisay elektr diğerleri ağ ürünleri ağ v diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesuarları elek digerleri ag urun digerleri ag urunleri ag ve modem bilgisayar ve ak aksesua digerleri ag urunleri ag ve modem bilgisayar ve akse akse bilgi diğ ür digerleri ag urunleri digerleri ag urunleri ag ve modem bilgisayar ve a diğerleri ağ ürünleri ağ ve modem bilgisayar v diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesuarları digerleri ag urunleri ag ve mode digerleri ag urunleri ag ve modem bil digerleri ag urunleri ag ve modem bilgisayar v elekt ağ ürün digerleri diğerleri diğerleri ağ ürünleri ağ ve mo diğerleri ağ ürünleri ağ ve modem bilgisayar ve akses ürünler digerleri ag urunleri ag ve modem bilgisayar ve aks aksesuarla diğerleri ağ ürünleri ağ ve modem bilgisay modem aksesuarları diğe diğerleri ağ ürünleri ağ ve diğerleri ağ ürünleri ağ ve modem bilgisaya digerleri ag u digerleri ag urunleri ag ve modem bilgisayar ve aksesua mod digerleri ag urunleri ag ve modem bilgisaya diğerleri ağ ürünleri ağ ve modem bi diğerleri ağ ürünleri ağ ve modem bilgis diğerleri ağ ürünleri ağ ve modem bilgisa diğerleri ağ ürünleri ağ ve modem bilgisayar ve aksesuarları elektro diger di digerleri ag urunleri ag ve modem bilgisay bilgis elektro diğerleri ağ ürünleri ağ ve digerler digerleri ag urunleri ag mo diger diğ digerle diğer diğerl diğe di dig dige diğerle digerler diğerleri diğerler digerl digerleri",
"brandIndex" : "diger di dig dige",
"storeNameIndexes" : "somestore som somst somsto somestor",
"productCodeIndexes" : " 20 201 2011 20111 201113",
"productTemplate" : null,
"productRealModel" : null,
"hasVariant" : false,
"variantOptions" : [],
"groupName": "someGroup",
"group": {
"groupId": "59b48ddd0ff2e4744ce0e73d",
"groupName": "someGroup"
},
"filterTags" : [
"model-connectionkit3134"
]
}