获取文档版本版本值 滚动标识符 游标 控制查询如何执行 控制查询在哪些分片执行 boost加权
映射
mapping.json
{
"book": {
"_index": {
"enabled": true
},
"_id": {
"index": "not_analyzed",
"store": "yes"
},
"properties": {
"author": {
"type": "string"
},
"characters": {
"type": "string"
},
"copies": {
"type": "string"
},
"otitle": {
"type": "string"
},
"tags": {
"type": "string"
},
"title": {
"type": "string"
},
"year": {
"type": "long",
"ignore_malformed": false,
"index": "analyzed"
},
"available": {
"type": "boolean"
}
}
}
} 建立索引 curl -XPOST 'localhost:9200/libbrary'
curl -XPUT 'localhost:9200/library/book/_mapping' -d @mapping.json documents.json
{ "index": {"_index": "library", "_type": "book", "_id": "1"}}
{ "title": "All Quiet on the Western Front","otitle": "Im Westen
nichts Neues","author": "Erich Maria Remarque","year":
1929,"characters": ["Paul Bäumer", "Albert Kropp", "Haie
Westhus", "Fredrich Müller", "Stanislaus Katczinsky",
"Tjaden"],"tags": ["novel"],"copies": 1, "available": true,
"section" : 3}
{ "index": {"_index": "library", "_type": "book", "_id": "2"}}
{ "title": "Catch-22","author": "Joseph Heller","year":
1961,"characters": ["John Yossarian", "Captain Aardvark",
"Chaplain Tappman", "Colonel Cathcart", "Doctor
Daneeka"],"tags": ["novel"],"copies": 6, "available" : false,
"section" : 1}
{ "index": {"_index": "library", "_type": "book", "_id": "3"}}
{ "title": "The Complete Sherlock Holmes",
"author": "Arthur Conan Doyle","year": 1936,"characters":
["Sherlock Holmes","Dr. Watson", "G. Lestrade"],"tags":
[],"copies": 0, "available" : false, "section" : 12}
{ "index": {"_index": "library", "_type": "book", "_id": "4"}}
{ "title": "Crime and Punishment","otitle": "Преступлéние и
наказáние","author": "Fyodor Dostoevsky","year":
1886,"characters": ["Raskolnikov", "Sofia Semyonovna
Marmeladova"],"tags": [],"copies": 0, "available" : true}
获取文档版本版本值
{
"version": true,
"query": {
"query_string": {
"query": "title:crime"
}
}
}
搜索类型 search_type
通过指定搜索类型来选择查询在内部如何处理
query_then_fetch 返回结果最大数量=size参数的值,默认;1、执行查询得到对文档进行排序和分级所需信息,该步在所有分片上执行;2、只在相关分片上查询文档的实际内容;
query_and_fetch 返回结果最大数量=size参数的值*分片数量 查询在所有分片上并行执行(当然,任意一个主分片,只查询一个副本),所有分片返回等于size值得结果数;
dfs_query_and_fetch 类似query_and_fetch,但相比query_and_fetch包含一个额外的阶段,在初始查询中执行分布式词频计算,以得到返回文件的更精确的得分,从而上查询结果更相关;
dfs_query_then_fetch 类似query_then_fetch,但相比query_and_fetch包含一个额外的阶段;
count 只返回匹配查询的文档数
scan 另一个特殊类型的搜索类型,只有在要查询返回大量结果时才用;在发送第一个请求后,Elasticsearch响应一个滚动标识符,类似于关系型数据库中的游标;
搜索执行偏好
控制查询如何执行
控制查询在哪些分片执行
默认,Elasticsearch使用额分片和副本,既包含我们已经发送过请求的可用节点,又包括
集群中的其他节点。
_primary 只在主分片上执行检索,不适用副本;当想使用索引猴子那个最近更新的、还没复制到副本中的信息,这个很有用;
_primary_first 如果主分片可用,只在主分片上执行搜索,否则才在其他分片上执行
_local 在可能情况下,只在发送请求的节点上的可用分片上执行搜索
_only_node:node_id 只在提供标识符的节点上执行搜索
_prefer_node:node_id Elasticsearch将尝试在提供标识符的节点上执行搜索;如果该节点不可用,则视同其他的可用节点
_shards:1,2 Elasticsearch将在提供标识符法人分片上执行操作;_shards参数可以和其他首选项合并,但
_shards标识符必须在前面,比如_shards:1,2;_local
curl -XGET 'localhost:9200/library/book/_search?pretty=true&search_type=query_and_fetch' -d '
{
"query": {
"term": {
"title": "crime"
}
}
}
'
curl -XGET 'localhost:9200/library/book/_search?preference=_lcoal' -d '
{
"query": {
"term": {
"title": "crime"
}
}
}
'
boost加权
在查询中包含加权值,它将赋给所有跟它匹配的文档。
{
"query": {
"match_all": {
"boost": 2.0
}
}
}
获取文档版本版本值 滚动标识符 游标 控制查询如何执行 控制查询在哪些分片执行 boost加权的更多相关文章
- jquery获取文档高度和窗口高度的例子
jquery获取文档高度和窗口高度,$(document).height().$(window).height() $(document).height():整个网页的文档高度 $(window).h ...
- Java解析word,获取文档中图片位置
前言(背景介绍): Apache POI是Apache基金会下一个开源的项目,用来处理office系列的文档,能够创建和解析word.excel.ppt格式的文档. 其中对word文档的处理有两个技术 ...
- [sharepoint]rest api文档库文件上传,下载,拷贝,剪切,删除文件,创建文件夹,修改文件夹属性,删除文件夹,获取文档列表
写在前面 最近对文档库的知识点进行了整理,也就有了这篇文章,当时查找这些接口,并用在实践中,确实废了一些功夫,也为了让更多的人走更少的弯路. 系列文章 sharepoint环境安装过程中几点需要注意的 ...
- javaScript获取文档中所有元素节点的个数
HTML+JS 代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset=&qu ...
- SharePoint 2013 通过审计获取文档下载次数
1.创建一个文档库,进入库设置,找到”Information management policy settings”,点进去,如下图: 2.分别设置”Document”.”Folder”两个,如下图: ...
- jQuery中获取文档的高度、可视区域高度以及滚动条距页面顶部的高度
在写页面的时候,经常会碰到这样的情况,就是要获取文档的高度.可视区域高度或者滚动条距页面顶部的高度等情况. 但我总是有些爱搞混淆了,这里还是简单做个笔记吧,这里只限于使用jQuery来获取. 1.获取 ...
- 利用ArcEngine开发地图发布服务,将mxd文档一键发布成wmts,并根据需要对地图进行空间查询,返回客户端geojson
一直想开发一个软件取代ArcGIS Server,该软件使用ArcEngine开发,以Windows Service形式发布,部署在服务端上,解决wmts地图服务发布和空间查询的问题,经过不断的研究. ...
- js、jQuery 获取文档、窗口、元素的各种值
基于两年开发经验,总结了 javascript.jQuery 获取窗口.文档.元素的各种值 javascript: 文档:是整个document所有的内容 浏览器当前窗口文档body的宽度: docu ...
- 读取数据库信息并生成表设计文档Word版本
1.参考C#代码 using Help.DBAccessLayer.Business; using Help.DBAccessLayer.Model.SqlGenerator; using Newto ...
随机推荐
- Application Architecture Determines Application Performance
 Application Architecture Determines Application Performance Randy Stafford AppliCATion ARCHiTECTuR ...
- PCIe to AXI Translation——PCIe 内存空间到AXI内存空间的转换
PCIe to AXI Translation——PCIe 内存空间到AXI内存空间的转换 UltraScale系列芯片包含PCIe的Gen3 Integrated Block IP核在内的多种不同功 ...
- WatiN自动化测试
简介 WatiN - Watir的.NET版: http://watin.sourceforge.net/ Welcome at the WatiN (pronounced as What-in) w ...
- ping: icmp open socket: Operation not permitted 的解决办法
ping: icmp open socket: Operation not permitted 的解决办法:为ping加上suid即可.报错时ping的属性: [root@localhost ~]# ...
- Yii2中对数据库的查询方法如下
User::find()->all(); 此方法返回所有数据: User::findOne($id); 此方法返回 主键 id=1 的一条数据(举个例子): User::find()->w ...
- 【Unity】Unity中资源动态载入的两种方式之AssetsBundle
首先要说的是,我们的project中有2个脚本.各自是: Build(编辑器类脚本.无需挂载到不论什么物体).可是必需要把Build脚本放到Editor目录中 Load脚本,挂载到摄像机上<pr ...
- table与html实例
*{ margin:0; padding:0; list-style-type:none;/*手动清楚空隙*/ font-size:12px; font-family:"微软雅黑" ...
- C++ 类的多态四(虚析构函数的重要性)
//虚析构函数的重要性 #include<iostream> using namespace std; /* 虚析构函数 主要用在多态中,用来释放子类对象内存空间,如果不使用虚析构函数, ...
- 第二百二十三节,jQuery EasyUI,ComboBox(下拉列表框)组件
jQuery EasyUI,ComboBox(下拉列表框)组件,可以远程加载数据的下拉列表组件 学习要点: 1.加载方式 2.属性列表 3.事件列表 4.方法列表 本节课重点了解 EasyUI 中 C ...
- 第二百零四节,jQuery EasyUI,Dialog(对话框)组件
jQuery EasyUI,Dialog(对话框)组件 学习要点: 1.加载方式 2.属性列表 3.事件列表 4.方法列表 本节课重点了解EasyUI中Dialog(窗口)组件的使用方法,这个组件依赖 ...