摘要:
一、 对象存储 下图中的 Address就是嵌套对象 查看它的mapping,可以看到address有自己的属性 实际存储: { "Name":"Qi Wei", "Age":22, "Address.Country":"China", "Address.Province":"Sichuan", " 阅读全文
摘要:
只能在index里的field不存在的时候,才能指定新field的数据类型,field有数据后,就不能再修改field的类型了 可创建的类型如下: integer double date text/string analyzed 分词(默认) not_analyzed 不分词 no 不索引 创建各种 阅读全文
摘要:
查看 某个index下所有type的mapping GET /beauties/_mapping 查看 指定index、指定type的mapping GET /beauties/_mapping/cn 阅读全文
摘要:
指定某个字段,必须要包含XX字符 GET /beauties/my/_search?q=Name:Chang Wei 搜出 某个字段不包含XX字符 的所有内容 GET /beauties/my/_search?q=-Name:Ruru (搜索结果中,Name都不包含Ruru) 不管哪个字段,只要包含 阅读全文
摘要:
默认的search,是没有时间限制的。比如,一个search,可能要10分钟才能搜完,那么,es就会等10分钟,直到结果出来。 然而,在某些场景下,客户是等不了10分钟的。比如,电商网站,客户宁可等待1秒钟,得到100条结果,也不愿意等10分钟,看到10000条结果。 所以,我们会在search上指 阅读全文
摘要:
搜索所有index(慎用): GET /_search 搜一个索引下,所有type,(不指定type即可) GET /beauties/_search 搜多个索引,则多个索引间,用逗号(,)分隔开 GET /beauties,test_index/_search 使用通配符,搜索所有匹配的index 阅读全文
摘要:
回顾: bulk的语法要求:每个json串都不能换行,不同json串之间,必须换行 为什么不用标准json数组呢?如: [ { "create":{...} }, { "update":{...}s } ] 因为,如果使用这种Json数组,ES需要做的是 把字符串转成 Json数组对象 按每个Jso 阅读全文
摘要:
注意:当执行多条数据查询、增删改时,一定要用mget、bulk,提升性能,减少网络传输 mget 回顾:查询单个文档 GET /beauties/my/2 mget 查询多个文档: 不同 index、不同type、不同id GET /_mget { "docs":[ { "_index":"beau 阅读全文
摘要:
Partial Update 内部执行过程: 首先,ES文档是不可变的,它们只能被修改,不能被替换。Update Api 也不例外。 Update API 简单使用与之前描述相同的 检索-修改-重建索引(reindex) 的处理过程。 区别在于这个过程发生在分片内部。 相当于ES的Shard内部 执 阅读全文
摘要:
ES有内置的Groovy脚本执行内核,可以在命令的Json内嵌入Groovy脚本语句 前提数据: 让 num 加 10. POST /test_index/test_type/1/_update { "script":"ctx._source.num+=10" } 把Groovy脚本(含参数)保存在 阅读全文