• 【1-ElasticSearch的基本介绍与用途、ElasticSearch中一些基本的概念、倒排索引的基本概念】


    一、ElasticSearch概述

    1.1 ElasticSearch介绍

      ES 是一个开源的高扩展的分布式全文搜索引擎,是整个Elastic Stack技术栈的核心。它可以近乎实时的存储,检索数据;本身扩展性很好,可以扩展到上百台服务器,处理PB级别的数据。

      ElasticSearch的底层是开源库Lucene,但是你没办法直接用Lucene,必须自己写代码去调用它的接口,Elastic是Lucene的封装,提供了REST API的操作接口,开箱即用。天然的跨平台。

      全文检索是我们在实际项目开发中最常见的需求了,而ElasticSearch是目前全文检索引擎的首选,它可以快速的存储,搜索和分析海量的数据,维基百科,GitHub,Stack Overflow都采用了ElasticSearch。

    官方网站:ElasticSearch官方网站

    中文社区:ElasticSearch中文论坛

    1.2 ElasticSearch用途

    1. 搜索的数据对象是大量的非结构化的文本数据。
    2. 文件记录达到数十万或数百万个甚至更多。
    3. 支持大量基于交互式文本的查询。
    4. 需求非常灵活的全文搜索查询。
    5. 对高度相关的搜索结果的有特殊需求,但是没有可用的关系数据库可以满足。
    6. 对不同记录类型,非文本数据操作或安全事务处理的需求相对较少的情况。

    1.3 ElasticSearch基本概念

    1. 索引:索引(indices)在这儿很容易和MySQL数据库中的索引产生混淆,其实是和MySQL数据库中的Databases数据库的概念是一致的。

    2. 类型(Type),对应的其实就是数据库中的 Table(数据表),类型是模拟mysql中的table概念,一个索引库下可以有不同类型的索引,比如商品索引,订单索引,其数据格式不同。

    3. 文档(Document),对应的就是具体数据行(Row)。

    4. 字段(field)相对于数据表中的列,也就是文档中的属性。

    1.4 倒排索引的基本概念

    1. Elasticsearch是通过Lucene的倒排索引技术实现比关系型数据库更快的过滤。特别是它对多条件的过滤支持非常好.

    2. 倒排索引是搜索引擎的核心。搜索引擎的主要目标是在查找发生搜索条件的文档时提供快速搜索。ES中的倒排索引其实就是 lucene 的倒排索引,区别于传统的正向索引,倒排索引会再存储数据时将关键词和数据进行关联,保存到倒排表中,然后查询时,将查询内容进行分词后在倒排表中进行查询,最后匹配数据即可。

    好了,关于【1-ElasticSearch的基本介绍与用途、ElasticSearch中一些基本的概念、倒排索引的基本概念】就先学习到这里,更多的内容持续创作更新中。

  • 相关阅读:
    Mysql-怎么添加用户和设置权限?
    十四、内置模块path、邂逅Webpack和打包过程、css-loader
    简单的kafka&redis学习之redis
    K8s的集群调度
    代码随想录算法训练营 day56|583. 两个字符串的删除操作、72. 编辑距离
    macOS下编译opencv-4.5.2+opencv_contrib-framework
    掌握 xUnit 单元测试中的 Mock 与 Stub 实战
    GitHub上有助于开发微信小程序的仓库
    解码平台收集
    提高效率:VMLogin浏览器免密码同时登录多个Facebook账号
  • 原文地址:https://blog.csdn.net/Coder_ljw/article/details/128043880