搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
木道寻08
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
tensorflow 车牌识别项目(一)_车牌定位的标签文件时json吗
2
【Android高级UI】PorterDuffMode颜色混合公式
3
【推荐】AI人工智能-机器视觉-深度学习资料合集44篇_人工智能50问
4
微信小程序消息通知开发
5
09.9 python基础--openpyxl库_openpyxl根据标题定位
6
在Kubernetes中采用零信任: 基本原则_implementing zero-trust on kubernetes
7
【常用工具】MSF使用教程(一)漏洞扫描与利用(以永恒之蓝漏洞复现为例)_msf漏洞扫描_msf渗透工具
8
2024年最新github之Go语言开源项目top50排行榜项目_golang开源项目排行
9
ibm入职测试题太难了_IBM面试经验
10
大学生宿舍管理系统的设计与实现|SSM+ Mysql+Java+ B/S结构(可运行源码+数据库+LW)校园,高校,公寓,住宿,寝室,晚归登记水电缴费宿舍维修卫生管理留言管理_如何设计一个宿舍系统
当前位置:
article
> 正文
elasticsearch和lucene的关系以及elasticsearch的核心概念_elasticsearch lucene 关系
作者:木道寻08 | 2024-07-17 22:23:22
赞
踩
elasticsearch lucene 关系
1、lucene和elasticsearch的前世今生
2、elasticsearch的核心概念
3、elasticsearch核心概念 vs. 数据库核心概念
----------------------------------------------------------------------------------------------------------------------------------------
1、lucene和elasticsearch的前世今生
lucene,最先进、功能最强大的搜索库,直接基于lucene开发,非常复杂,api复杂(实现一些简单的功能,写大量的java代码),需要深入理解原理(各种索引结构)
elasticsearch,基于lucene,隐藏复杂性,提供简单易用的restful api接口、java api接口(还有其他语言的api接口)
(1)分布式的文档存储引擎
(2)分布式的搜索引擎和分析引擎
(3)分布式,支持PB级数据
开箱即用,优秀的默认参数,不需要任何额外设置,完全开源
关于elasticsearch的一个传说,有一个程序员失业了,陪着自己老婆去英国伦敦学习厨师课程。程序员在失业期间想给老婆写一个菜谱搜索引擎,觉得lucene实在太复杂了,就开发了一个封装了lucene的开源项目,compass。后来程序员找到了工作,是做分布式的高性能项目的,觉得compass不够,就写了elasticsearch,让lucene变成分布式的系统。
----------------------------------------------------------------------------------------------------------------------------------------
2、elasticsearch的核心概念
(1)Near Realtime(NRT):近实时,两个意思,从写入数据到数据可以被搜索到有一个小延迟(大概1秒);基于es执行搜索和分析可以达到秒级
(2)Cluster:集群,包含多个节点,每个节点属于哪个集群是通过一个配置(集群名称,默认是elasticsearch)来决定的,对于中小型应用来说,刚开始一个集群就一个节点很正常
(3)Node:节点,集群中的一个节点,节点也有一个名称(默认是随机分配的),节点名称很重要(在执行运维管理操作的时候),默认节点会去加入一个名称为“elasticsearch”的集群,如果直接启动一堆节点,那么它们会自动组成一个elasticsearch集群,当然一个节点也可以组成一个elasticsearch集群
(4)Document&field:文档,es中的最小数据单元,一个document可以是一条客户数据,一条商品分类数据,一条订单数据,通常用JSON数据结构表示,每个index下的type中,都可以去存储多个document。一个document里面有多个field,每个field就是一个数据字段。
product document
{
"product_id": "1",
"product_name": "高露洁牙膏",
"product_desc": "高效美白",
"category_id": "2",
"category_name": "日化用品"
}
(5)Index:索引,包含一堆有相似结构的文档数据,比如可以有一个客户索引,商品分类索引,订单索引,索引有一个名称。一个index包含很多document,一个index就代表了一类类似的或者相同的document。比如说建立一个product index,商品索引,里面可能就存放了所有的商品数据,所有的商品document。
(6)Type:类型,每个索引里都可以有一个或多个type,type是index中的一个逻辑数据分类,一个type下的document,都有相同的field,比如博客系统,有一个索引,可以定义用户数据type,博客数据type,评论数据type。
商品index,里面存放了所有的商品数据,商品document
但是商品分很多种类,每个种类的document的field可能不太一样,比如说电器商品,可能还包含一些诸如售后时间范围这样的特殊field;生鲜商品,还包含一些诸如生鲜保质期之类的特殊field
type,日化商品type,电器商品type,生鲜商品type
日化商品type:product_id,product_name,product_desc,category_id,category_name
电器商品type:product_id,product_name,product_desc,category_id,category_name,service_period
生鲜商品type:product_id,product_name,product_desc,category_id,category_name,eat_period
每一个type里面,都会包含一堆document
{
"product_id": "2",
"product_name": "长虹电视机",
"product_desc": "4k高清",
"category_id": "3",
"category_name": "电器",
"service_period": "1年"
}
{
"product_id": "3",
"product_name": "基围虾",
"product_desc": "纯天然,冰岛产",
"category_id": "4",
"category_name": "生鲜",
"eat_period": "7天"
}
(7)shard:单台机器无法存储大量数据,es可以将一个索引中的数据切分为多个shard,分布在多台服务器上存储。有了shard就可以横向扩展,存储更多数据,让搜索和分析等操作分布到多台服务器上去执行,提升吞吐量和性能。每个shard都是一个lucene index。
(8)replica:任何一个服务器随时可能故障或宕机,此时shard可能就会丢失,因此可以为每个shard创建多个replica副本。replica可以在shard故障时提供备用服务,保证数据不丢失,多个replica还可以提升搜索操作的吞吐量和性能。primary shard(建立索引时一次设置,不能修改,默认5个),replica shard(随时修改数量,默认1个),默认每个索引10个shard,5个primary shard,5个replica shard,最小的高可用配置,是2台服务器。
----------------------------------------------------------------------------------------------------------------------------------------
3、elasticsearch核心概念 vs. 数据库核心概念
Elasticsearch
数据库
-----------------------------------------
Document
行
Type
表
Index
库
声明:
本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
https://www.wpsshop.cn/w/木道寻08/article/detail/842315
推荐阅读
article
【
Elasticsearch
】
SQL
操作相关_
elasticsearch
执行
sql
...
本文主要介绍了
SQL
在ES上的应用,语法上基本没啥变化_
elasticsearch
执行
sql
elasticsearch
执...
赞
踩
article
Elasticsearch
SQL...
Elasticsearch
SQL
Elasticsearch
SQL是一个X-Pack组件,它允许针对Elasticse...
赞
踩
article
Elasticsearch
SQL
使用
_mssql如何
使用
elasticsearch
...
Elasticsearch
提供了基于
SQL
的查询接口,用于
使用
SQL
语法查询和操作
Elasticsearch
...
赞
踩
article
Elasticsearch
:
Elasticsearch
SQL
介绍
及
实例
(二)_
ztod
...
在之前的文章“
Elasticsearch
:
Elasticsearch
SQL
介绍
及
实例
”里,我们简要
介绍
了新的Elast...
赞
踩
article
Elasticsearch
:
Elasticsearch
SQL
介绍
及实例 (
一
)...
Elasticsearch
是
一
个全文搜索引擎,具有您期望的所有优点,例如相关性评分,词干,同义词等。 而且,由于它是具有...
赞
踩
article
Flink
elasticsearch
-
sink
by
http
and
http
s_elast...
官网上有关于
http
的例子:DataStream
input = ...;List
...
赞
踩
article
Flink
学习笔记(三):
flink
读取
kafka
数据并写入
elasticsearch
_
kafaka
...
上篇记录了
flink
如何读取
kafka
的数据,我们都知道
flink
有许多自带的连接器,那么如何把读取的数写入到相关容器中...
赞
踩
article
如何使用
Flink
Connectors
——
ElasticSearch
?_
flink
-conn...
准备环境和依赖
ElasticSearch
安装因为在 2.1 节中已经讲过
ElasticSearch
的安装,这里就不...
赞
踩
article
flink
elasticsearch
sink_
flink
sink
elasticsearch
...
flink
elasticsearch
sink 目前我这边电脑资源不够耍,写入虚拟机很慢数据有差异.1.data 数据...
赞
踩
article
Flink
Connector
Elasticsearch
5 与
Flink
Connector
...
为了将
Flink
与
Elasticsearch
进行集成,
Flink
提供了两个不同的连接器:
Flink
Conne...
赞
踩
article
10年大
数据
专家,使用
Flink
实现索引
数据
到
Elasticsearch
,快来学_
flink
ela...
目前,
Flink
还没有在Batch处理模式下实现对应
Elasticsearch
对应的Connector,需要自己根据需要...
赞
踩
article
Elasticsearch
高频
面试
题(含答案)(1)
,
面试
心慌怎么办_
es
面试
题...
小编也是很有感触
,
如果一直都是在中小公司
,
没有接触过大型的互联网架构设计的话
,
只靠自己看书去提升可能一辈子都很难达到高级...
赞
踩
article
【
Elasticsearch
】
Elasticsearch
动态
映射
与
静态
映射
详解_
es
动态
映射
性能
...
Elasticsearch
是一个分布式搜索和分析引擎,广泛应用于实时数据分析和全文检索中。在使用 Elasticsea...
赞
踩
article
Elasticsearch
ES
操作:
查询
数据
(全部、分页、单条、组合
条件
)_
es
查询
显示所有
数据
...
在使用
ES
时经常需要通过接口或者
查询
工具查找
ES
中的
数据
,需要了解基本的
查询
命令。如精确
查询
,模糊匹配,多
条件
查询
等。_...
赞
踩
article
全文检索
-
Elasticsearch
-入门_
es
全文检索
...
全文搜索属于最常见的需求,开源的
Elasticsearch
是目前全文搜索引擎的首选。它可以快速地储存、搜索和分析海量...
赞
踩
article
【
Elasticsearch
】
Elasticsearch
索引
创建
与
管理
详解_
es
创建
索引
...
Elasticsearch
是一个基于 Apache Lucene 的开源搜
索引
擎,具有分布式、近实时、RESTful ...
赞
踩
article
Elasticsearch
加密
和认证...
随着大数据技术的广泛应用,
Elasticsearch
作为一款功能强大的分布式搜索引擎,成为了众多企业和组织的核心技术基...
赞
踩
article
【
ElasticSearch
-基础篇】
Mapping
结构_
elasticsearch
创建
索引
map...
【
ElasticSearch
-基础篇】
Mapping
结构_
elasticsearch
创建
索引
mapping
elasti...
赞
踩
article
【
ElasticSearch
】ES
5.6
.
15
向量
插件
支持_
elasticsearch
vect...
低版本ES 向量
插件
支持_
elasticsearch
vector
scoring
插件
elasticsearch
vec...
赞
踩
article
elasticsearch
[一]-
索引
库
操作
(轻松
创建
)
、
文档
增删改查
、
批量
写入(效率倍增)_ela...
elasticsearch
[一]-
索引
库
操作
(轻松
创建
)
、
文档
增删改查
、
批量
写入(效率倍增)_
elasticsearch
...
赞
踩
相关标签
elasticsearch
sql
数据库
大数据
数据分析
flink connector
flink
java