news 2026/9/30 7:40:40

[2-03-03].第02节:ES初识 - ElasticSearch概念

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
[2-03-03].第02节:ES初识 - ElasticSearch概念

ElasticSearch学习大纲


二、ES中的核心概念:

2.1.Lucene和Elasticsearch:

Lucene:

  • 最先进、功能最强大的搜索库,如果直接基于lucene开发,非常复杂,api复杂

b.Elasticsearch:

  • 基于lucene,封装了许多lucene底层功能,提供简单易用的restful api接口和许多语言的客户端,如java的高级客户端(Java High Level REST Client)和底层客户端(Java Low Level REST Client)

2.2.ES中的核心概念:

概念1:文档:

  • 1.Elasticsearch是面向文档(Document)存储的,可以是数据库中的一条商品数据,一个订单信息
  • 2.文档数据会被序列化为json格式后存储在elasticsearch中
  • 3.在JSON文档中往往包含很多的字段(Field),类似于数据库中的列。对于上面表格,每一行是一个文档,每一列是一个字段
  • 3.文档是ES中的最小数据单元。一个document就像数据库中的一条记录。通常以json格式显示。多个document文档存储于一个索引(Index)中
book document { "book_id": "1", "book_name": "java编程思想", "book_desc": "从Java的基础语法到最高级特性(深入的[面向对象](https://baike.baidu.com/item/面向对象)概念、多线程、自动项目构建、单元测试和调试等),本书都能逐步指导你轻松掌握。", "category_id": "2", "category_name": "java" }

概念2:索引

  • 1.索引就是相同类型的文档的集合,类似于mysql的表,例如:
    • 所有用户文档,就可以组织在一起,称为用户的索引;
    • 所有商品的文档,可以组织在一起,称为商品的索引;
    • 所有订单的文档,可以组织在一起,称为订单的索引;
  • 2.一个索引由一个名字来标识(必须全部是小写字母),并且当我们要对这个索引中的文档进行索引、搜索、更新和删除的时候,都要使用到这个名字。在一个集群中,可以定义任意多的索引
  • 3.能搜索的数据必须索引,这样的好处是可以提高查询速度,比如:新华字典前面的目录就是索引的意思,目录可以提高查询速度。
  • 4.索引创建规则:
    • 仅限小写字母
    • 不能包含\、/、 *、?、"、<、>、|、#以及空格符等特殊符号
    • 从7.0版本开始不再包含冒号
    • 不能以-、_或+开头
    • 不能超过255个字节(注意它是字节,因此多字节字符将计入255个限制)

概念3:mapping 映射:

  • 1.数据库的表会有约束信息,用来定义表的结构、字段的名称、类型等信息。那么在索引库中就有映射(mapping),是索引中文档的字段约束信息,类似表的结构约束,是处理数据的方式和规则方面做一些限制
  • 2.映射举例如:某个字段的数据类型、默认值、分析器、是否被索引等等。这些都是映射里面可以设置的,其它就是处理 ES 里面数据的一些使用规则设置也叫做映射,按着最优规则处理数据对性能提高很大,因此才需要建立映射,并且需要思考如何建立映射才能对性能更好。

概念5:Type:类型

  • 1.每个索引里都可以有一个或多个type,type是index中的一个逻辑数据分类,一个type下的document,都有相同的field。
  • 2.注意:6.0之前的版本有type(类型)概念,type相当于关系数据库的表,ES官方将在ES9.0版本中彻底删除type。本教程type都为_doc

2.3.ES与MySQL概念对比:

a.数据格式对比:

关系型数据库(比如Mysql)非关系型数据库(Elasticsearch)非关系型数据库(Elasticsearch)
表Table索引Index(原为Type)索引(index),就是文档的集合,类似数据库的表(table)
数据行Row文档Document文档(Document),就是一条条的数据,类似数据库中的行(Row),文档都是JSON格式
数据列Column字段Field字段(Field),就是JSON文档中的字段,类似数据库中的列(Column)
约束 Schema映射MappingMapping(映射)是索引中文档的约束,例如字段类型约束。类似数据库的表结构(Schema)
SQLDSLDSL是elasticsearch提供的JSON风格的请求语句,用来操作elasticsearch,实现CRUD

b. 应用场景对比:


2.4.其他概念:

a.NRT:

  • 1.NRT意思就是近实时
  • 2.近实时体现在两方面:
    • 写入数据时,过1秒才会被搜索到,因为内部在分词、录入索引。
    • Es搜索时:搜索和分析数据需要秒级出结果。

b.Node(节点):

  • 1.每个服务器上的ES实例称为一个节点。节点名自动分配,也可以手动配置

c.Cluster(集群)

  • 1.包含一个或多个启动着ES实例的机器群。通常一台机器起一个ES实例
  • 2.同一网络下,集名一样的多个es实例自动组成集群,自动均衡分片等行为,默认集群名为“elasticsearch”

d.shard:分片

  • 1.index数据过大时,将index里面的数据,分为多个shard,分布式的存储在各个服务器上面。可以支持海量数据和高并发,提升性能和吞吐量,充分利用多台机器的cpu。

f.replica:副本

  • 1.在分布式环境下,任何一台机器都会随时宕机,如果宕机,index的一个分片没有,导致此index不能搜索。所以,为了保证数据的安全,我们会将每个index的分片经行备份,存储在另外的机器上。保证少数机器宕机es集群仍可以搜索。
  • 2.能正常提供查询和插入的分片我们叫做主分片(primary shard),其余的我们就管他们叫做备份的分片(replica shard)。
  • 3.Es6默认新建索引时,5分片,2副本,也就是一主一备,共10个分片。所以,Es集群最小规模为两台。

g.分配(Allocation)

  • 1.将分片分配给某个节点的过程,包括分配主分片或者副本。如果是副本,还包含从主分片复制数据的过程。这个过程是由 master 节点完成的

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/29 11:34:06

paperzz 开题报告|AI 赋能学术起步,让你的研究开篇即赢

Paperzz-AI官网免费论文查重复率AIGC检测/开题报告/文献综述/论文初稿 paperzz - 开题报告https://www.paperzz.cc/proposalhttps://www.paperzz.cc/proposal 在学术探索的漫漫长路上&#xff0c;开题报告是第一座需要征服的山峰。它不仅是研究的蓝图&#xff0c;更是说服导师…

作者头像 李华
网站建设 2026/9/29 11:59:51

别被唬住!DNS 劫持告诉你:黑客技术远没那么复杂

黑客技术&#xff1f;没你想象的那么难&#xff01;——dns劫持篇 什么是DNS劫持&#xff1f; DNS劫持就是通过劫持了DNS服务器&#xff0c;通过某些手段取得某域名的解析记录控制权&#xff0c;进而修改此域名的解析结果&#xff0c;导致对该域名的访问由原IP地址转入到修改后…

作者头像 李华
网站建设 2026/9/29 11:52:40

想从 IT 技术岗转行网络安全?建议先看看这篇指南

前言 为什么越来越多的IT技术人员转行网络安全&#xff1f; 近年来&#xff0c;越来越多的伙伴在寻找新的职业发展机会。干了多年运维和开发却始终无法收获高薪资&#xff0c;技术层面上也遇瓶颈无法取得实质性突破&#xff0c;于是许多小伙伴有了转行想法。 与朋友闲聊&…

作者头像 李华
网站建设 2026/9/29 12:21:16

Node.js用os.cpus()轻松获取CPU核心数

&#x1f493; 博客主页&#xff1a;瑕疵的CSDN主页 &#x1f4dd; Gitee主页&#xff1a;瑕疵的gitee主页 ⏩ 文章专栏&#xff1a;《热点资讯》 Node.js的os.cpus()&#xff1a;从静态核心数到动态计算资源的演进与挑战目录Node.js的os.cpus()&#xff1a;从静态核心数到动态…

作者头像 李华
网站建设 2026/9/29 12:17:51

这绝对是互联网大厂里面最全Java面试八股文的天花板

不知不觉又是一年了&#xff0c;现在已入2026&#xff0c;快的人甚至已经成功上岸了&#xff0c;当然时间还有的是&#xff0c;大部分同学 入行这么些年&#xff0c;每年都会有很多读者或者朋友跟我诉苦&#xff0c;无非都是觉得自己技术还不错&#xff0c;就是面试发挥总是不理…

作者头像 李华
网站建设 2026/9/30 3:51:26

百名学员进阶实录:韩宁波的羽球梦想孵化器

百名学员进阶实录&#xff1a;韩宁波的羽球梦想孵化器在宁夏吴忠的羽毛球训练馆内&#xff0c;三面荣誉墙静静诉说着韩宁波教练二十年来的育人成果——百余名学员从零基础到站上市级、省级领奖台&#xff0c;更有李阳、张琳等学员凭借科学训练体系打破赛会纪录。作为市运会冠军…

作者头像 李华