云服务器网:购买云服务器和VPS必上的网站!

使用 MongoDB 内嵌查询优化数据检索

随着移动社交网络的发展,数据范围发展十分迅速,特别用户信息,业务记录等信息可能会超过百亿条和超过每秒几十亿次的读写操作,针对如此范围的数据,检索特别是过滤查询才是最重要的业务逻辑,其中 MongoDB 内嵌查询优化技术可以有效提高查询效力。
MongoDB 内

随着移动社交网络的发展,数据范围发展十分迅速,特别用户信息,业务记录等信息可能会超过百亿条和超过每秒几十亿次的读写操作,针对如此范围的数据,检索特别是过滤查询才是最重要的业务逻辑,其中 MongoDB 内嵌查询优化技术可以有效提高查询效力。

MongoDB 内嵌查询使用 Document 和 数组结构,使得我们对各个数据项进行查询要求时不需要屡次发起 SQL 查询要求,只需要做一次查询,就能够取得所有所需信息。MongoDB 中还可以很方便地使用内嵌数组,可以在父文档中寄存一个关联子文档的数组,比如以下代码,可使用两种过滤条件对子文档数组进行过滤:

//查找 shelf 为 c 的书

db.books.find({

name: ‘c’,

Shelf: {

$elemMatch:{

name:”c”,

count:{$gt:10}

}

}

})

//查找 shelf 为 c 的所有书

db.books.aggregate([

{$match : {name:’c’}},

{ $unwind: “$Shelf”},

{$match : {‘Shelf.name’:’c’,’Shelf.count’:{$gt:10}}}

])

另外, MongoDB 还支持多个内嵌查询,和条件类型的两重嵌套查询,可以有效的挑选数据库中的数据,加快查询速度,比以下面的例子:

// 查找 shelf 为 c 的书,并且 price 为 202 的

db.books.find({

name: ‘c’,

shelf: {

$elemMatch:{

name:”c”,

price: 202

}

}

})

总的来讲,使用 MongoDB 内嵌查询可以有效提升查询性能,可以大大减少发起数据检索的次数,从而减少读写延迟,提高系统处理能力。

本文来源:https://www.yuntue.com/post/127380.html | 云服务器网,转载请注明出处!

关于作者: yuntue

云服务器(www.yuntue.com)是一家专门做阿里云服务器代金券、腾讯云服务器优惠券的网站,这里你可以找到阿里云服务器腾讯云服务器等国内主流云服务器优惠价格,以及海外云服务器、vps主机等优惠信息,我们会为你提供性价比最高的云服务器和域名、数据库、CDN、免费邮箱等企业常用互联网资源。

为您推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注