MongoDb 2.4 beta新特性——全文索引
期待已久的特性,但目前仍然在beta阶段,所以官方建议不要在生产环境使用。也因此需要手动打开这个特性。
在命令行指定
mongod --setParameter textSearchEnabled=true ...
也可以放在配置文件中
setParameter = textSearchEnabled=true
还可以通过命令启动:
db.adminCommand( { setParameter : 1, textSearchEnabled : true } )
如果是用在Replica Set中,则每个结点都必须启用这个配置。
进行以上配置后,可以通过ensureIndex命令来为一个字段配置全文索引,如:
db.reviews.ensureIndex( { comments: "text" } )
关于创建全文索引的详细说明请参考这里。其中有意思的是全文索引除了对单一字段有效外,也可以配置为对文档中的所有文本字段有效:
db.collection.ensureIndex(
{ "$**": "text" },
{ name: "TextIndex" }
)
这条命令会建立一个名为“TextIndex”的对文档中所有文本字段都有效的全文索引。
全文索引只能使用text命令来访问,而不是在查找文档时默认使用。这是beta特性的特殊处理,官方预计将在2.6版本中使它变为常规find语法的一部分。大概会是这个样子:
collection.find({ caption: { $text: "query" }})
但是目前只能使用这样的语法:
t.runCommand( "text", { search : "Australian" } );
注意全文索引是大小写敏感的,这点和Sql Server不太一样,使用时要小心。并且默认只会返回头100条结果,这是由性能问题决定的。
全文索引也会丢掉无意义的冠词、数词,如a, an, the等,但这取决于使用的语言。语言可以在创建全文索引时指定:
db.collection.runCommand( "text", { search: <string>,
filter: <document>,
project: <document>,
limit: <number>,
language: <string> } )
这部分内容可以参考这里。
MongoDb 2.4 beta新特性——全文索引的更多相关文章
- BizTalk 2013 Beta 新特性介绍
BizTalk2013 Beta于2012年11月6日发布,下面来介绍一下BizTalk 2013 Beta的新特性. [核心更新功能] 1. 与云服务集成 BizTalk 2013 Server提供 ...
- OpenNebula 4.0 Beta 新特性介绍
http://blog.chinaunix.net/uid-20940095-id-3561376.html 2013年3月26号,OpenNebula社区发布了OpenNebula 4.0 Beta ...
- MongoDB 4.2 新特性解读 (转载)
MongoDB World 2019 上发布新版本 MongoDB 4.2 Beta,包含多项数据库新特性,本文尝试从技术角度解读. Full Text Search MongoDB 4.2 之前,全 ...
- MongoDB 4.2新特性:分布式事务、字段级加密、通配符索引、物化视图
MongoDB 4.2已经发布,我们来看看它增加了哪些新特性?分布式事务?数据库加密?通配符索引? 在2019年MongoDB World大会上,CTO Eliot Horowitz介绍了MongoD ...
- MongoDB 3.0 新特性【转】
本文来自:http://www.open-open.com/lib/view/open1427078982824.html#_label3 更多信息见官网: http://docs.mongodb.o ...
- 跨平台的 .NET 运行环境 Mono 3.2 新特性
Mono 3.2 发布了,对 Mono 3.0 和 2.10 版本的支持不再继续,而且这两个分支也不再提供 bug 修复更新. Mono 3.2 主要新特性: LLVM 更新到 3.2 版本,带来更多 ...
- Atitit opencv版本新特性attilax总结
Atitit opencv版本新特性attilax总结 1.1. :OpenCV 3.0 发布,史上功能最全,速度最快的版1 1.2. 应用领域2 1.3. OPENCV2.4.3改进 2.4.2就有 ...
- Swift3新特性汇总
之前 Apple 在 WWDC 上已将 Swift 3 整合进了 Xcode 8 beta 中,而本月苹果发布了 Swift 3 的正式版.这也是自 2015 年底Apple开源Swift之后,首个发 ...
- Visual Studio 2015速递(3)——ASP.NET 新特性
系列文章 Visual Studio 2015速递(1)——C#6.0新特性怎么用 Visual Studio 2015速递(2)——提升效率和质量(VS2015核心竞争力) Visual Studi ...
随机推荐
- Ext 中xtype一览
基本组件: xtype Class 描述 button Ext.Button 按钮 splitbutton Ext.SplitButton 带下拉菜单的按钮 cycle Ext.CycleButton ...
- win7设置防火墙允许Ping与telnet
Ping: 打开控制面板 >> 系统安全 >> windows防火墙 >> 高级设置 >> 入站规则
- NoCache
<META HTTP-EQUIV="Pragma" CONTENT="no-cache"> <META HTTP-EQUIV="Ca ...
- WEB 安全之 SQL注入 < 二 > 暴库
SQL注入是一个比较"古老"的话题,虽然现在存在这种漏洞的站点比较少了,我们还是有必要了解一下它的危害,及其常用的手段,知己知彼方能百战不殆.进攻与防守相当于矛和盾的关系,我们如果 ...
- 如何激活phpstorm | phpstorm的下载
2016年7月14日 phpsotrm 推送2016.2 更新 phpstorm的下载地址 https://www.jetbrains.com/phpstorm/download/#section=w ...
- MSP430F149学习之路——UART
代码一: #include <msp430x14x.h> void int_clk() { BCSCTL1 &= ~XT2OFF; BCSCTL2 |= SELM_2 + SELS ...
- 解决在 MVC 局部视图中加载 ueditor 编辑器时, 编辑器加载不出的 bug
在 MVC 局部视图中,有时我们需要 加载 ueditor 编辑器,或进行局部刷新, 但是在加载局部视图后,ueditor 编辑器加载不出,这是由于 ueditor 使用的缓存,只要清空缓存,重新实例 ...
- 解决spawn-fcgi child exited with: 1
spawn-fcgi -d /data/web/ad/ -f /data/web/ad/code.py -a -P /data/openresty_81/nginx/pid/ad.pid 出错的时候请 ...
- SQL Access Advisor
1.概述: provides advice on improving the performance of a database through partitioning, materialized ...
- asp.net中如何绑定combox下拉框数据(调用存储过程)
#region 绑定类型(商品类型.仓库名称) public void DataType_Bind(int _peoid) { DataTable dt_goodsname = new DataTab ...