弹性搜索在index索引中可以定义一个或多个类型类似于mysql t_第1页
弹性搜索在index索引中可以定义一个或多个类型类似于mysql t_第2页
弹性搜索在index索引中可以定义一个或多个类型类似于mysql t_第3页
弹性搜索在index索引中可以定义一个或多个类型类似于mysql t_第4页
弹性搜索在index索引中可以定义一个或多个类型类似于mysql t_第5页
已阅读5页,还剩19页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

ElasticLuceneLucene,必须自己写代码去调用它的接口。Elastic是Lucene的封装,提供了RESTAPI的操作接口,开箱即用。MySQLinsert;式的,Document就像是MySQL中的某个Table里面的内容;二、Dockerdockerpull dockerpull mkdir-p/mydata/elasticsearch/dataecho"http.host:">>/-d致过大启动不了ES-dGET/_cat/nodes:查看所有节点GET/_cat/master:查看主节点 showPUT{"name":"John}操作,不指定id会报错。GET{"_index":"customer",//在哪个索引"_type":"external", "_id":"1", //记录id "_primary_term":1, "found":true,"_source":{ "name":"JohnDoe"}}更新携带POST{"name":"John}}POST{"name":"John}PUT{"name":"John}POST{"doc":{"name":"JaneDoe","age":20}POST{"name":"JohnDoe"{"name":"JaneDoe"{action:{metadata{request {action:{metadata{request POST{"delete":{"_index":"website","_type":"blog","_id":"123"{"create":{"_index":"website","_type":"blog","_id":"123"{ "Myfirstblogpost"{ { "Mysecondblogpost"{"update":{"_index":"website","_type":"blog","_id":"123","_retry_on_conflict":3}{"doc":{"title":"Myupdatedblogpost"}bulkAPIaction(动作)。如果一个单个的动作因任何原因而失败,它将继续处理它后面剩余的动作。当bulkAPI返回时,它将提供每个动作的状态(与发送我准备了一份顾客银行账户信息的虚构的JSON文档样本。每个文档都有下列的{"balance":16623,"lastname":"Mckenzie","age":29,"employer":"Euron","city":"Hobucken",}=true导入测试数据ES一个是通过使用RESTrequest 另一个是通过使用RESTrequestbody来发送它们(uri+请求体GETGETtookElasticsearch执行搜索的时间(毫秒time_out--hits-hits.total-hits.hits-实际的搜索结果数组(默认为前10的文档)sort-结果的排序key(键)(没有则按score排序)scoremax_score相关性得分和最高得分(全文检索用)GET{"query":"sort":{{"order":}}]}POSTJSON风格的查询请求体到_searchAPI。2、QueryElasticsearchJsonDSL(domain-specificlanguage领域特{{ARGUMENT:VALUE,}}{{{ARGUMENT:VALUE,}}}GET{"query":"from":"sort":{{"order":}}]}querymatch_all查询类型【代表查询所有的所有】,esquery中组合非常多的查GET{"query":"from":}GET{"query":}}}GET{"query":"address":}}}GET{"query":}}}GET{{"match_phrase":{}}}GET{"query":}}}GET{"query":"bool":"must":{"match":{"address":"mill"}{"match":{"gender":"M"}]}}}shouldshould列举的条件,如果达到会增加相关文档的评分,并不会改变queryshouldshould的条件就会GET{"query":"bool":"must":{"match":{"address":"mill"}{"match":{"gender":"M"}"should":{"match":{"address":"lane"]}}}GET{"query":"bool":"must":{"match":{"address":"mill"}{"match":{"gender":"M"}"should":{"match":{"address":"lane""must_not":{"match":{"email":""]}}}计算分数Elasticsearch会自动检查场景并且优化查询的执行。GET{"query":"must":"filter":"balance":"lte":}}}}}}GETGET"query":"bool":"must":{"term":"age":"value":"address":"990Mill聚合提供了从数据中分组和提取数据的能力。最简单的聚合方法大致等于SQLGROUP一次简洁和简化的API来避免网络往返。GET{}"terms":{}"field":}}} "aggs":{"AGG_TYPE聚合的类型(avg,term,terms)}GET{"query":"aggs":{"age","size":{{"field":}}}}},}GETGET{"query":"aggs":{"age",{{"terms":"size":100"field":}}}":{"field":}}}}},}Mapping是用来定义一个文档(document),以及它所包含的属性(field)是如何存储和索引的。比如,使用mapping来定义:文档中的所有属性是否都能被索引(_all配置)GETES中不是这样的。elasticsearchLuceneEStype下名称相同的filed最终在Lucene中的处理方式是一样的。名称就会在处理中出现冲突的情况,导致Lucene处理效率下降。PUT/my-index{{ {"type":"integer" {"type": {"type": {{"employee-id":{"index":false}}POSTPOST "source":"index":"dest":POST"source":"type":"dest":"index":的单词),然后输出tokens流。例如,whitespacetokenizer"Quickbrownfox!分割为[Quick,brown,fox!]。es容器内部plugins目录dockerexecitid/bin/bashunziprm–rfcdPOSTPOST{}POSTPOST }POST "text":"我是中国人"}认的mapping了,要手工建立mapping,因为要选择分词器。中的<comment>IKAnalyzer扩展配置<entry<entry<comment>IKAnalyzer扩展配置<entry<entry在kibana中测试分词效果最终选择Elasticsearch-Rest-Client(elasticsearch-rest-high-level-client)RestClientBuilderbuilder=RestClient.builder(newHttpHost("0",returnnew

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论