当前位置: 首页 > news >正文

Elasticsearch的学习

Elasticsearch对比Solr

Solr也是基于Lucene的一款全文搜索引擎,下面是他们的对比。

  • Solr利用Zookeeper进行分布式管理,而Elasticsearch自身带有分布式协调管理功能;
  • Solr支持更多格式的数据,而Elasticsearch仅支持json文件格式;
  • Solr官方提供的功能更多,而Elasticsearch本身更注重于核心功能,高级功能多由第三方插件提供;
  • Solr在传统的搜索应用中表现好于Elasticsearch,但在处理实时搜索应用时效率明显低于Elasticsearch。

目前Elasticsearch的市场占有率越来越高,Spring从2020年起也已经停止Spring Data Solr的维护,更多的公司使用Elasticsearch作为搜索引擎。

Elasticsearch数据结构

文档(Document):文档是可被查询的最小数据单元,一个 Document 就是一条数据。类似于关系型数据库中的记录的概念。

类型(Type):具有一组共同字段的文档定义成一个类型,类似于关系型数据库中的数据表的概念。

索引(Index):索引是多种类型文档的集合,类似于关系型数据库中的库的概念。

域(Filed):文档由多个域组成,类似于关系型数据库中的字段的概念。

Elasticsearch跟关系型数据库中概念的对比:

JAVA项目项目实体类对象属性
ESIndexTypeDocumentFiled
MysqlDatabaseTableRowColumn

注:ES7.X之后删除了type的概念,一个索引不会代表一个库,而是代表一张表

ES8,所以ES中概念对比为:

JAVA项目项目实体类对象属性
ESIndexDocumentFiled
MysqlDatabaseTableRowColumn

Elasticsearch安装ES服务

#关闭防火墙:
systemctl stop firewalld.service#禁止防火墙自启动:
systemctl disable firewalld.service

配置最大可创建文件数大小

#打开系统文件:
vim /etc/sysctl.conf#添加以下配置:
vm.max_map_count=655360#配置生效:
sysctl -p

由于ES不能以root用户运行,我们需要创建一个非root用户,此处创建一个名为es的用户:

#创建用户:
useradd es

安装服务

  1. 使用rz命令将linux版的ES上传至虚拟机

  2. 解压ES

#解压:
tar -zxvf elasticsearch-8.10.4-linux-x86_64.tar.gz#重命名:
mv elasticsearch-8.10.4 elasticsearch1#移动文件夹:
mv elasticsearch1 /usr/local/#es用户取得该文件夹权限:
chown -R es:es /usr/local/elasticsearch1

启动ES服务

#切换为es用户:
su es#进入ES安装文件夹:
cd /usr/local/elasticsearch1/bin/#启动ES服务:
./elasticsearch 

当启动成功,可以看到类似以下的日志输出。首次启动Elasticsearch,默认会启用安全配置功能,启用身份认证和授权,内置超级用户elastic,并生成默认密码,此时要注意保存,否则之后启动不会再显示。

# 重置默认密码:
cd /usr/local/elasticsearch1/bin/
./elasticsearch-reset-password -u elastic# 自定义密码:
cd /usr/local/elasticsearch1/bin/
./elasticsearch-reset-password --username elastic -i

连接ES,查询ES服务是否启动成功

# 参数 --cacert指定了证书
curl --cacert /usr/local/elasticsearch1/config/certs/http_ca.crt -u elastic https://localhost:9200

http://www.dtcms.com/a/568651.html

相关文章:

  • GitHub 热榜项目 - 日榜(2025-11-04)
  • SAP 概述
  • 深圳家具网站建设做网站需要会写代码6
  • 常见的网站文件后缀名
  • 18、docker-macvlan-2-示例
  • ICCV2025 | GLEAM:通过全局-局部变换增强的面向视觉-语言预训练模型的可迁移对抗性攻击
  • Visual Studio 编程工程设置
  • 自我系统更新
  • 【数据结构】双向链表的实现
  • 《Linux系统编程之开发工具》【版本控制器 + 调试器】
  • C++ :C宏函数的升级:内联函数inline
  • 青海网站建设费用织梦后台怎么建设网站
  • [特殊字符] Gudu SQL Omni 在数据治理体系中的落地实践指南
  • arm寄存器虚拟化分析
  • Linux网络传输层TCP协议
  • 做企业网站备案收费吗怎么修改网站标题
  • 机器视觉---Intel RealSense SDK 2.0 开发流程
  • 【AI基础篇】Transformer架构深度解析与前沿应用
  • QuickNacos
  • 用Python来学微积分30-微分方程初步
  • Opencv(七) : 图像颜色替换
  • Skywalking运维之路(Skywalking服务搭建)
  • 网站开发及建设赔偿条款中国最牛的十大企业
  • 广州全运会即将开幕,获得文远知行自动驾驶技术支持
  • 在智能制造语境下理解ISA-95、IIoT和UNS
  • 网站建设 服务器 预算报价清单企业展厅设计公司虎
  • 算法学习入门---前缀和(C++)
  • 一键生成系统架构图
  • 2025国产MOM系统全景透视:谁在领跑智能制造新赛道?
  • 系统架构设计师备考第64天——网络构建关键技术