案例:eBay利用MongoDB优化搜索

日期: 2014-12-14 作者:GEN FURUKAWA翻译:杨宏玉 来源:TechTarget中国 英文

eBay使用MongoDB来执行众多涉及大量数据的任务。这些项目包括搜索建议,云管理、元数据存储和商品的分类等。搜索建议是其网站的一个重要特征。MongoDB的使用,为快速向用户给出建议提供了可能。

搜索建议是如何产生的?

当你开始在eBay的搜索框输入查询关键词时,输入框出现一个下拉列表显示一些可能的搜索建议。如果这些建议匹配你的搜索需求,您可以立即使用鼠标选择它或者用下箭头键选择,而不必输入您的搜索关键词的其余部分。

对用户来说这是一个很好的特性,因为它不仅可以完成预期的查询,也可以提出类似的查询,用户可能从中发现比他原来想好的查询内容更合适的一个关键词。建议功能为用户提供一个方便有用的方式寻找感兴趣的特定项。

提供这种辅助查询需要存储大量的可能建议,而这些建议必须极其快速的返回给远程用户才能发挥作用。eBay确定任何查询数据库返回的建议必须在60 – 70毫秒内返回!!

这对于传统的关系数据库可能是非常具有挑战性的,。eBay并没有在关系数据上下功夫,而是决定尝试一个基于文档的数据库MongoDB,以观察是否能达到所需的性能。

eBay+MongoDB=1.4毫秒响应

eBay 将搜索建议列表存储在一个MongoDB文档中。然后将文档用单词前缀进行索引,另外还包括特定的元数据,例如产品类别。多个索引查找为建议提供了灵活性,也保证了查询的快捷性。

eBay能够使用一个单一的副本集合,这使分区不再是必须的。此外, 数据被放置在内存中,又将查询的速度提升了一个层次。

有了这一切,数据库查询在规定时间(不超过60 – 70毫秒)能否返回给用户?事实证明,MongoDB可以实现小于1.4毫秒的往返!

鉴于这种令人难以置信的表现,eBay能够安全地依靠MongoDB来为用户提供快速的搜索建议。

成功能否复制?

如果你的业务需要在大量数据中进行快速查询,,MongoDB也许是个不错的选择。使MongoDB迅速为你工作的一种方法是找到一个提供数据库服务的供应商,。

Morpheus提供了MongoDB作为服务(还包括其他几个流行的数据库),容易安装和维护。服务很容易扩展,允许您在您的需求变化时添加或删除空间。附加服务包括在线监测、VPN连接数据库,和优秀的支持等。

所有数据库在SSD-backed基础设施进行自动备份、复制和存档,确保你不会丢失任何重要的数据。所以,马上尝试 Morpheus ,把你的数据放置在快速、安全、可扩展的数据库中。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

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

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

翻译

杨宏玉
杨宏玉

TechTarget特邀编辑。北京邮电大学计算机科学与技术专业硕士。熟悉软件开发流程,对系统管理,网络配置,数据库应用等方面有深入的理解和实践经验。现就职于IBM(中国)投资有限公司,从事IBM服务器相关软件的开发工作。业余时间喜欢游泳登山,爱健身,喜欢结交朋友。

相关推荐