| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 大数据 -> elasticsearch学习笔记 -> 正文阅读 |
|
[大数据]elasticsearch学习笔记 |
文章目录学习地址:elasticsearch学习视频 1 开篇我们查询的信息:文章、视频、图片、网站信息等 按数据格式分类: 结构化数据使用特定的结构来组织和管理数据,一般表现为二维表结构 非结构化数据无法用二维表结构表示的数据,如:服务器日志、视频、报表和图片等 半结构化数据数据的结构和内容混在一起,没有明显的区分,如:xml文件、html文件等 缺点:查询内容不方便 2 技术选型Elasticsearch是什么The Elastic Stack, 包括 Elasticsearch、Kibana、Beats 和 Logstash(也称为 ELK Stack)。 Elasticsearch And Solr目前市面上流行的搜索引擎软件,主流的就两款:Elasticsearch 和 Solr,两者都可以独立部署启动的搜索引擎服务软件。 Elasticsearch Or SolrElasticsearch 和 Solr 都是开源搜索引擎,那么我们在使用时该如何选择呢?
3 略4 入门——环境准备官方地址:https://www.elastic.co/cn/ Elasticsearch 分为 Linux 和 Windows 版本,基于我们主要学习的是 Elasticsearch 的 Java客户端的使用,所以课程中使用的是安装较为简便的 Windows 版本。 安装软件Windows 版的 Elasticsearch 的安装很简单,解压即安装完毕,解压后的 Elasticsearch 的目录结构如下
注意: 打开浏览器(推荐使用谷歌浏览器),输入地址: 问题解决
5 RESTful & JSON
基本的json对象:
对象嵌套:
即使用大括号嵌套即可 对象集合
使用中括号,对象之间逗号隔开即可 上述的表示容易转换为字符串从而在网络中表示,从而在网络中传递。而我们所熟悉的对象,是无法在网络中传递的,如 JSON字符串:网络中传递的字符串的格式符合JSON格式,就将其统称为JSON字符串 6 Postman客户端工具如果直接通过浏览器向 Elasticsearch 服务器发请求,那么需要在发送的请求中包含HTTP 标准的方法,而 HTTP 的大部分特性且仅支持 GET 和 POST 方法。所以为了能方便地进行客户端的访问,可以使用 Postman 软件 Postman 是一款强大的网页调试工具,提供功能强大的 Web API 和 HTTP 请求调试。软件功能强大,界面简洁明晰、操作方便快捷,设计得很人性化。Postman 中文版能够发送任何类型的 HTTP 请求 (GET, HEAD, POST, PUT…),不仅能够表单提交,且可以附带任意类型请求体。 7 倒排索引数据格式Elasticsearch是面向文档型数据库,一条数据在这里表现出来就是一个文档。将Elasticsearch里存储文档数据和关系型数据库MySQL存储数据的概念进行类比如下:
ES软件专门用于全文检索数据,因此索引是整个搜索引擎的关键,为了能够快速准确地查询数据,它使用了一种特殊的概念来存储和查询数据:倒排索引 倒排索引对应于正排索引(正向索引) 正向索引:
将id设置为主键,生成主键索引,通过主键索引快速关联到对应的content信息,这种索引就是正排索引(正向索引) 但是如果我们想要查询文章的内容中包含了哪些热门词汇,就需要采取模糊查询,而模糊查询效率就低了很多。因此我们需要换一种方式将索引和数据关联起来:倒排索引 将关键字和id关联起来
如果查询关键字为
那么这样就是通过关键字keyword来查询主键id,然后再关联到数据content 8 Http-索引-创建来到Postman软件中进行操作 对比关系型数据库,创建索引就等同于创建数据库 请求后,服务器返回响应: 如果此时,发送同样的创建 9 Http-索引-查询&删除查询刚刚创建的 请求后,ES服务器返回的结果:
这里请求路径中的
删除索引 发送 10 Http-文档-创建(PUT&POST)索引已经创建好了,下面可以来创建文档并添加数据。这里的文档可类比为mysql中的表数据,添加的数据格式为JSON格式 在Postman中,向ES服务器发 此处发送请求的方式必须为
上面的数据创建后,由于没有指定数据唯一性标识(ID),默认情况下,ES 服务器会随机生成一个。 此处需要注意:如果增加数据时明确数据主键,那么请求方式也可以为 11 Http-查询-主键查询&全查询输入路径以及选定为 1001就相当于主键
12 Http-全量修改&局部修改&删除全量修改:
更新局部的数据,说明每次更新的结果不相同,因此不能采用put方式,只能采用post 注意要将请求路径中修改为 删除 13 Http-条件查询&分页查询&查询排序条件查询: 通过请求路径进行条件查询:
通过请求体进行条件查询:
请求体:
如果想指定显示title字段:
排序查询:
14 多条件查询&范围查询
条件体(使用bool)
条件与(使用must)
条件或(使用should)
范围查询(使用filter和range,同时注意filter是在must或should外面)
15 Http-全文搜索&完全匹配&高亮查询body内容
那么 底层在匹配的时候会被拆分,形成一个个的词,然后进行倒排索引匹配,因此产生这样的现象 如果想要完全匹配,那么需要使用
匹配后高亮显示:
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年4日历 | -2025/4/20 20:51:54- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |