一文了解Elasticsearch

数据分类

数据按数据结构分类主要有三种:结构化数据半结构化数据非结构化数据

结构化数据

结构化数据具有明确定义数据模型和格式的数据类型

特点:

  • 数据具有固定的结构和模式。

  • 数据项明确定义数据类型和长度。

  • 适合用于数据查询、过滤和分析、存储。

半结构化数据

半结构化数据介于结构化和非结构化数据之间。它具有一定的结构信息,但没有结构化数据那么明确

特点:

  • 数据元素包含在文档中,并且具有层次结构。

  • 使用标记或标签来标识数据元素。

  • 具有更大的灵活性,能够适应不同的数据模型。

非结构化数据

非结构化数据不具备明确结构的数据

特点:

  • 数据没有明确的结构,不容易进行数据分析。

  • 数据可能包含大量的自由文本和非关联的信息。

  • 难以用传统数据库或查询语言来处理。

Elasticsearch简介

Elasticsearch(简称ES), 既是一个面向文档的 NoSQL 数据库 ,又是一个开源的高扩展的分布式全文检索引擎

ES扩展性好,可以扩展到上百台服务器,处理起PB级数据时,能到秒级搜索,近乎实时搜索。

在开源全文检索领域,ES在DB-Engines搜索引擎类别长年霸榜!!!

国内有很多大厂都在使用Elasticsearch,比如阿里巴巴、京东、腾讯、美团、头条、携程、滴滴等。

ES基于Java语言进行开发,以 Lucene 为基础建立的全文搜索引起,通过简单的 RESTful API来隐藏Lucene的复杂性,从而让全文搜索变得简单。

「什么是Lucene?」

Lucene是一个开源的高性能的全文检索库 ,由Java语言开发,具有高效性、可伸缩性的特点。

Lucene 最初是由 Doug Cutting 创建,并于2001年成为 Apache软件基金会的一个子项目。

Lucene 能实现全文搜索主要是因为它实现了倒排索引的查询结构。

ES分词使用的是倒排索引。ES自带的分词器默认根据空格进行分词。

如果文章是中文的话,建议采用插件IK中文分词器实现中文内容的分词。

Elasticsearch使用场景

  • 日志分析和监控:ES可以收集、存储和分析大量服务器日志数据,监控系统性能和查找故障。

  • 搜索引擎:ES可以构建高性能的搜索引擎,用于查询大量文档、网页和其他数据。

  • 商业智能和数据分析:ES可以用于处理和分析大量实时数据,以帮助企业做出更明智的决策。

  • 安全性分析:ES可以用于收集、存储和分析安全日志数据,帮助您检测安全事件和预防攻击。

  • 互联网中间件 :ES可以作为互联网应用程序的中间件,用于处理大量动态

相关推荐
_周游1 小时前
Java8 API 文档搜索引擎_1. 项目简介与模块划分
java·搜索引擎·servlet·maven·intellij-idea
是垚不是土1 小时前
OpenTelemetry+Jaeger+ES:分布式链路追踪实战部署
大数据·linux·运维·分布式·elasticsearch·全文检索
福赖1 小时前
《微服务即使通讯中ES的作用》
大数据·elasticsearch
艺杯羹2 小时前
Git入门基础:从概念到安装的完整指南
git·elasticsearch·开发工具·版本控制·git入门·代码托管
TracyCoder1232 小时前
ElasticSearch核心引擎Apache Lucene(三):数值与空间数据索引
elasticsearch·apache·lucene
Elastic 中国社区官方博客3 小时前
Elasticsearch:Apache Lucene 2025 年终总结
大数据·人工智能·elasticsearch·搜索引擎·apache·lucene
TracyCoder1233 小时前
ElasticSearch核心引擎Apache Lucene(二):正排索引的奥秘
elasticsearch·apache·lucene
TracyCoder1233 小时前
ElasticSearch核心引擎Apache Lucene(一):倒排索引底层实现
elasticsearch·apache·lucene
晚霞的不甘3 小时前
Flutter for OpenHarmony《智慧字典》英语学习模块代码深度解析:从数据模型到交互体验
前端·学习·flutter·搜索引擎·前端框架·交互
那起舞的日子3 小时前
ElasticSearch系列-1-入门篇
elasticsearch