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

elasticSearch学习入门-安装使用

文章目录1. es框架2. es相关术语2.1 相关概念2.2 倒排索引3. es安装部署4. header 插件安装5. es相关api使用5.1 集群api5.2 索引相关5.2.1 创建索引5.2.2 查看索引库5.2.3 创建映射关系5.2.4 删除索引5.3 数据相关5.3.1 添加数据5.3.2 修改数据5.3.3 删除数据5.4 自动创建映射6. 内置分词和中文分词6.1. 内置分词器6.2. 中文分词器7. 查询7.1 queryURL 查询7.2 DSL查询8 并发乐观锁1. es框架​ Elasticsearch 是一个兼有搜索引擎和NoSQL数据库功能的开源系统,基于Java/Lucene构建,可以用于全文搜索,结构化搜索以及近实时分析。2. es相关术语2.1 相关概念es和数据库作用类似,所以我们这里对es相关术语的学习和关系型数据库进行对比便于读者理解学习es概念数据库概念index 索引数据库表type 类型(es 7版本弃用)表逻辑类型Document 文档表的一行记录filed 字段记录对应的字段(字段名、类型、长度等)mapping 映射表结构定义NRT 近实时一秒或者一秒内延迟(Near real time 近乎实时)Node 节点集群部署情况下的每一个服务节点shard replica数据分片和备份2.2 倒排索引es最核心的两个概念为索引和搜索,这里的建立的索引即为倒排索引,在说到倒排索引之前 我们需要先了解一下何为正排索引正排索引:所谓正排是针对记录都有一个唯一标识,我们通过唯一标识来搜索对应的记录信息,比如数据库主键查询key=value,但是对于文档类型关键字查询就需要扫描全部文档记录找到匹配的记录类似于数据库的like模糊查询性能低下。倒排索引:与正排索引不同会将文档通过分词形成一个个词组,建立词组和文档唯一标识的记录,value(分词后)=》key同时这样处理还可以记录词组在文档出现的频次和词组位置,便于我们更好更快的搜索。3. es安装部署#下载eswgethttps://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.4.1-linux-x86_64.tar.gz#解压项目tar-zxvfelasticsearch-7.4.1.tar.gz-C/usr/local#修改配置elasticsearch.yml,jvm.optionsscpusername@servername:/path/远程目录 /path/本地目录#因为es服务不能直接使用root用户启动#所以这里需要新建用户es 并为该用户赋予es使用权限adduser eschown-Res /usr/local/#启动es 切换到es用户sues ./bin/elasticsearch9200发布端口 9300集群节点之间的内部通讯# # ---------------------------------- Cluster ----------------------------------- # # Use a descriptive name for your cluster: # 设置集群名称 不设置默认分配 cluster.name: xiu-es # # ------------------------------------ Node ------------------------------------ # # Use a descriptive name for the node: # 设置单服务节点信息 node.name: xiu-node-1 # # ----------------------------------- Paths ------------------------------------ # #设置es数据存储路径 path.data: /usr/local/elasticsearch/elasticsearch-7.4.1/data # # Path to log files: #设置es日志存储路径 path.logs: /usr/local/elasticsearch/elasticsearch-7.4.1/logs # # ---------------------------------- Network ----------------------------------- # # Set the bind address to a specific IP (IPv4 or IPv6): # 设置可以远程访问的地址 0.0.0.0表示所有主机都可远程访问 network.host: 0.0.0.0 # # Set a custom port for HTTP: #设置http远程访问端口 9300是集群内部通讯端口 http.port: 9200 # # --------------------------------- Discovery --------------- # 设置集群节点地址 #discovery.seed_hosts: ["127.0.0.01"] # # Bootstrap the cluster using an initial set of master-eligible nodes: #设置集群节点 cluster.initial_master_nodes: ["xiu-node-1“]4. header 插件安装elasticsearch-header是es的可视化访问页面,由于head插件本质上还是一个nodejs的工程,因此需要安装node,使用npm来安装依赖的包。node环境安装参考# 下载head项目gitclone https://github.com/mobz/elasticsearch-head.git# 安装cnpminstall# 运行npmrun start5. es相关api使用5.1 集群api# 查看集群状态http://xxx.xx.x.xxx:9200/_cluster/health#查看所有节点信息http://xxx.xx.x.xxx:9200/_nodes#查看节点的状态信息 (ip 端口)http://xxx.xx.x.xxx:9200/_nodes/stats5.2 索引相关5.2.1 创建索引PUT请求: http://xxx.xx.x.xxx:9200/{index_name} PUT: http://xxx.xx.x.xxx:9200/singer请求参数{"settings":{"index":{//分片数(每个分片只存储一部分数据 所有分片共同)"number_of_shards":"5",//副本数(小于集群节点数),如果大于节点意味节点和副本在同一个机器,失去副本故障转移的意义"number_of_replicas":"0"}}}响应参数{"acknowledged":true,"shards_acknowledged":true,//索引名"index":"singer"}5.2.2 查看索引库GET请求: http://xxx.xx.x.xxx:9200/{index_name} GET: http://xxx.xx.x.xxx:9200/singer响应信息{//索引名(相当于数据库 表 库名)"my-index-test":{//索引别名"aliases":{},//映射关系(数

相关文章:

elasticSearch学习入门-安装使用

文章目录 1. es框架 2. es相关术语 2.1 相关概念 2.2 倒排索引 3. es安装部署 4. header 插件安装 5. es相关api使用 5.1 集群api 5.2 索引相关 5.2.1 创建索引 5.2.2 查看索引库 5.2.3 创建映射关系 5.2.4 删除索引 5.3 数据相关 5.3.1 添加数据 5.3.2 修改数据 5.3.3 删除数据…...

基于2阶RC电池建模、离线辨识参数及EKF的电池SOC估计之旅

2阶RC电池建模离线辨识参数EKF扩展卡尔曼滤波算法做电池SOC估计 采用simulink编写电池模型、EKF扩展卡尔曼滤波算法,在Simulink模型运行时计算SOC,通过仿真结果可以看出,估算的精度很高 注意:在电池管理系统(BMS&#…...

jmeter5.6.3源代码编译运行调试

1. jmeter源码编译运行过程 1.1配置java、运行变量,idea中运行 (1)下载jmeter源码,并解压。右键点击“open folder as intellij idea project” (2) 下载gradle8.7安装包,并配置环境变量 (3)下载jdk17并安装,配置环境变量,17版本只需指定JAVA_HOME、path中增加…...

如何应对ROS2 Navigation Framework在水下机器人中的5大导航挑战

如何应对ROS2 Navigation Framework在水下机器人中的5大导航挑战 【免费下载链接】navigation2 ROS2 Navigation Framework and System 项目地址: https://gitcode.com/gh_mirrors/na/navigation2 ROS2 Navigation Framework and System作为强大的机器人导航框架&#x…...

终极指南:如何用Neorg实现太空任务级时间管理——现代笔记工具规划复杂项目全攻略

终极指南:如何用Neorg实现太空任务级时间管理——现代笔记工具规划复杂项目全攻略 【免费下载链接】neorg Modernity meets insane extensibility. The future of organizing your life in Neovim. 项目地址: https://gitcode.com/gh_mirrors/ne/neorg Neorg…...

新手也能看懂的MVC代码审计实战:从目录结构到RCE漏洞,手把手拆解lmxcms 1.4

新手也能看懂的MVC代码审计实战:从目录结构到RCE漏洞,手把手拆解lmxcms 1.4 第一次打开MVC框架的源码目录时,那种"每个文件都认识但组合起来完全看不懂"的体验,相信每个安全研究员都记忆犹新。本文将以lmxcms 1.4为例&a…...

Unity关于Excel表格数据自动转换ScriptableObject的插件

目录 一、插件下载和安装 1.下载链接如下 2.安装 二、使用步骤 1.环境的创建 1.表格的创建 2.创建脚本类 2.表格的导入 3.小功能 总结 一、插件下载和安装 1.下载链接如下 https://download.csdn.net/download/2302_81348032/89721457?spm1001.2014.3001.5503 2.…...

告别流氓软件!这款免费卸载神器,让电脑垃圾彻底“消失”

软件获取地址 卸载软件工具合集 你是否也有过这样的经历? 想卸载一个用不着的软件,系统自带的卸载程序跑了半天,最后只删了个图标。 打开硬盘一看,几百MB甚至几个GB的文件还躺在那里,注册表里更是留了一堆垃圾代码。 …...

探索协同编程新境界:AtomPair 开源项目深度解析

探索协同编程新境界:AtomPair 开源项目深度解析 【免费下载链接】atom-pair An Atom package that allows for epic pair programming 项目地址: https://gitcode.com/gh_mirrors/at/atom-pair 随着远程协作日益成为开发者的新常态,一款强大且高效…...

别再搞混了!PyTorch中net.train()和net.eval()对BatchNorm的影响,一个调试案例讲清楚

深入解析PyTorch中BatchNorm的train与eval模式差异:从调试案例到源码剖析 在深度学习的模型训练过程中,Batch Normalization(BN)层已经成为现代神经网络架构中不可或缺的组件。然而,许多PyTorch使用者在实际项目中经常…...

ESPEasy传感器完全手册:从温湿度到光照强度全面覆盖

ESPEasy传感器完全手册:从温湿度到光照强度全面覆盖 【免费下载链接】ESPEasy Easy MultiSensor device based on ESP8266/ESP32 项目地址: https://gitcode.com/gh_mirrors/es/ESPEasy ESPEasy是一款基于ESP8266/ESP32的简易多传感器设备,它能帮…...

人形机器人选购指南:技术参数与注意事项

一份非常严肃的人形机器人管家购买指南 科幻作品中充斥着人形机器人,从《飞出个未来》中坏脾气的本德到《机械姬》中狡猾的艾娃。长久以来,这似乎是这类机器人的自然归宿——存在于屏幕和书籍中。拥有双臂双腿、能行走、会说话、有功能的机器人的想法&am…...

【技术实战】Spring Task与WebSocket在外卖系统中的高效应用

1. 为什么外卖系统需要定时任务和实时通信 每次点外卖的时候,你可能没注意过背后的技术细节。比如超时未支付的订单会自动取消,商家接单后你的手机会立即收到通知,这些看似简单的功能其实都藏着精妙的技术实现。 我在开发外卖系统时发现&…...

DFT测试点插入实战:如何用Synopsys DFT Compiler提升芯片测试覆盖率

DFT测试点插入实战:Synopsys DFT Compiler全流程优化指南 芯片测试覆盖率是衡量制造质量的核心指标之一。在实际工程中,我们常常遇到这样的困境:明明设计了完整的扫描链,但ATPG工具生成的测试向量覆盖率始终卡在85%-90%之间&#…...

2024 数据资产入表财务实操手册(发布稿)——解读分享

本文介绍了数据资产入表财务实操手册,包括背景、依据、流程、参与主体、表后管理等内容。手册详细阐述了数据资产入表的各个环节,包括合规确认、权属确认、经济利益确认、成本归集与分摊、列报与披露、摊销与减值等,并明确了参与主体和所需资料。 重点内容: 1. 介绍数据资…...

保姆级教学:Unsloth框架下从零开始完成DeepSeek-R1模型微调

保姆级教学:Unsloth框架下从零开始完成DeepSeek-R1模型微调 1. 环境准备与快速部署 1.1 安装Unsloth框架 Unsloth是一个开源的LLM微调和强化学习框架,能够显著提升训练速度并降低显存占用。首先安装必要的依赖: # 安装Unsloth&#xff08…...

如何用Neorg构建合成生物学数据共享平台:终极架构设计指南

如何用Neorg构建合成生物学数据共享平台:终极架构设计指南 【免费下载链接】neorg Modernity meets insane extensibility. The future of organizing your life in Neovim. 项目地址: https://gitcode.com/gh_mirrors/ne/neorg 在当今数据驱动的合成生物学研…...

GEO优化系统开发避坑指南:如何避免数据跨境传输的法律风险?

GEO优化系统开发避坑指南:如何避免数据跨境传输的法律风险? 在全球数字化浪潮中,地理位置数据已成为企业优化用户体验的核心资产。从精准营销到本地化服务,GEO优化系统正重塑商业运营模式。然而,随着各国数据保护法规日…...

CD32.【C++ Dev】类和对象(22) 内存管理(下)

目录 1.定位new表达式 作用 格式 代码示例 分析 2.malloc/free和new/delete的区别 记忆方法 Myclass* ptr (Myclass*)malloc(sizeof(Myclass)); if (ptr nullptr) {...} free(ptr) ptr nullptr; Myclass* ptr new Myclass; delete ptr 3.内存泄漏 内存泄漏分…...

62:AI多语言神谕生成:文本生成模型与TTS语音合成基础

作者: HOS(安全风信子) 日期: 2026-03-16 主要来源平台: GitHub 摘要: 在《死亡笔记》中,基拉需要以神谕的形式向世界传达正义的旨意。本文探讨如何利用AI技术实现多语言神谕生成,结合文本生成模型与TTS语音…...

ESP32以太网运行时配置库:支持W5500/ENC28J60与Web门户

1. 项目概述ESP32_SC_Ethernet_Manager 是一款专为 ESP32-S2、ESP32-S3 和 ESP32-C3 系列微控制器设计的以太网连接与凭证管理库。其核心目标是解决嵌入式设备在部署后,因网络环境变更(如 IP 地址段调整、DNS 服务器更换、网关迁移)或设备物理…...

libopencm3多平台支持解析:STM32、GD32、LPC和SAM系列微控制器的统一开发框架

libopencm3多平台支持解析:STM32、GD32、LPC和SAM系列微控制器的统一开发框架 【免费下载链接】libopencm3 Open source ARM Cortex-M microcontroller library 项目地址: https://gitcode.com/gh_mirrors/li/libopencm3 libopencm3是一个开源ARM Cortex-M微…...

weixin252基于微信小程序的网约巴士订票平台的设计与实现ssm(文档+源码)_kaic

系统的实现5.1用户信息管理如图5.1显示的就是用户信息管理页面,此页面提供给管理员的功能有:用户信息的查询管理,可以删除用户信息、修改用户信息、新增用户信息,还进行了对用户名称的模糊查询性别类型查询的条件图5.1 用户信息管…...

铁路关键部件缺陷检测数据集全览(涵盖吊弦病害、绝缘子缺陷、螺栓松动与轨道裂缝)

1. 铁路关键部件缺陷检测数据集概述 铁路作为国家重要的交通基础设施,其安全运行直接关系到乘客生命财产安全。近年来,随着计算机视觉技术的快速发展,基于深度学习的铁路关键部件缺陷检测方法逐渐成为研究热点。而要训练出高精度的检测模型&a…...

@Autowired 和 @Resource的区别

在 Spring 框架中, Autowired 和 Resource 都是⽤于依赖注⼊(DI)的注解,但它们的来源、注⼊逻辑和使⽤场景存在明显差异。以下是两者的核⼼区别:Autowired 属于 Spring 框架原⽣注解,位于 org.springfr…...

Qwen3.5-35B-A3B-AWQ-4bit图文理解能力展示:手写公式识别、表格数据提取、Logo溯源

Qwen3.5-35B-A3B-AWQ-4bit图文理解能力展示:手写公式识别、表格数据提取、Logo溯源 1. 模型能力概览 Qwen3.5-35B-A3B-AWQ-4bit是一款专为视觉多模态理解设计的量化模型,在保持高效推理的同时,展现出强大的图片内容理解能力。这个模型特别适…...

嵌入式低功耗唤醒定时器库WakeUp设计与实现

1. WakeUp 库概述:面向低功耗嵌入式系统的深度睡眠唤醒定时器实现WakeUp 是一个专为资源受限型 Cortex-M0/M0 微控制器设计的轻量级、可移植的唤醒定时器(Wake-up Timer)软件库,核心目标是在系统进入深度睡眠(DeepSlee…...

前后端交互实战:从零搭建登录系统

1. 登录系统基础架构设计 登录系统是每个Web应用的基石,就像小区门禁系统一样,既要保证合法用户顺利通行,又要拦截非法访问。我们先来看一个典型的登录流程:用户在表单输入账号密码 -> 前端校验数据格式 -> 后端验证凭证 -&…...

I型NPC三电平VSG控制:高输出波形质量与电压电流双闭环的SPWM调制

基于I型NPC三电平的VSG(虚拟同步机)控制,具有较高的输出波形质量,采用中点电位平衡控制,SPWM调制,电压电流双闭环控制。 1.I型NPC三电平VSG控制 2.电压电流双闭环,SPWM 3.提供相关参考文献 支持…...

从Spring_couplet_generation看AI内容生成的安全与伦理考量

从Spring_couplet_generation看AI内容生成的安全与伦理考量 最近在部署和试用一些AI内容生成模型,比如能写对联的Spring_couplet_generation,感觉挺有意思的。它能根据几个关键词,瞬间生成一副对仗工整、寓意吉祥的对联,省去了不…...