分享

es学习笔记-初识es

 笑笑兔 2023-11-13 发布于天津

前言

可以把海量数据都放到 es 里然后提供搜索操作,但是 MySQL 也同样可以提供搜索,为什么要用 es 呢?因为它搜索快,使用倒排索引的方式将数据分词之后存储数据,查询的时候直接根据搜索关键词找到相关数据。

另一个是因为它可以提供一些 MySQL 做不到或者比较耗时的模糊搜索。

es结构与介绍

es数据结构中,是可以和 MySQL 等数据库的结构对应起来的,比如 index 对应 MySQL 中的 database,type 对应 MySQL 中的 table,而 source 中的数据则对应于 MySQL 中一条条的数据。

但是 es 中 source 中的这些字段,比如 name,可以不预先定义,也可以预先定义,这一点不同于 MySQL,es 甚至可以直接写入值,es 会自动为其找到对应的字段属性从而定义。

比如我们前面 PUT 的这条数据,查看 customer 这个数据库 index 的结构,可以看到 es 根据值为其自动创建了属性为 keyword。

es 中常见字段类型:

keyword:常用于存储结构化内容,比如email地址,电话号码,名称等等

text:文本类型,常用于保存大段文本,然后可以进行分词搜索等操作

integer:整数

long:浮点型数据

date:日期格式,比如 '2022-01-01 12:00:00'

boolean:布尔型,true/false

数组:es 中没有单独的数组类型,但是当我们确定将某个字段作为数组之后,可以直接将其作为数组使用,但是添加的元素必须是相同的,这个我们后面再介绍。

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多