草庐IT

【ES】一、ES入门及JavaAPI使用

ES的倒排索引和ES与Mysql的使用对比什么是ES:ES全称是ElasticSearch,是一个开源的搜索引擎,可以帮助我们快速从海量数据里搜索到需要的数据;为什么要有ES:MySql或其它传统的RDBMS有一些问题模糊查询时,如果查询条件是以%开头,那么查询的性能会急剧下降文本检索结果不精确。比如要搜索%华为手机%,搜索不到华为Mate50、HUAWEIMate50、华为手机正向索引:如果要检索一条数据,需要全表扫描。数据量越大,性能下降就越严重先获取第一条,判断是否匹配搜索条件;如果不匹配,就抛弃;如果匹配,就留下再获取第二条,判断是否匹配搜索条件;如果不匹配,就抛弃;如果匹配,就留下…

ES堆内存:大小和交换

Elasticsearch默认安装后设置的堆内存是1GB。对于任何一个业务部署来说,这个设置都太小了。如果你正在使用这些默认堆内存配置,您的集群可能会出现问题。这里有两种方式修改Elasticsearch的堆内存。最简单的一个方法就是指定 ES_HEAP_SIZE 环境变量。服务进程在启动时候会读取这个变量,并相应的设置堆的大小。比如,你可以用下面的命令设置它:exportES_HEAP_SIZE=10g此外,你也可以通过命令行参数的形式,在程序启动的时候把内存大小传递给它,如果你觉得这样更简单的话:./bin/elasticsearch-Xmx10g-Xms10g确保堆内存最小值( Xms 

在 ES 模块(Node.js)中导入 JSON 文件

使用fs模块读取和解析JSON文件Node.js文档建议使用fs模块并自己完成读取文件和解析的工作。import{readFile}from'fs/promises'constjson=JSON.parse(awaitreadFile(newURL('./some-file.json',import.meta.url)))这种方法比起我们接下来用的第二种方法更容易理解。利用CommonJSrequire方法加载JSON文件我们还可以使用createRequire加载JSON文件。createRequire允许您构造CommonJSrequire方法,以便可以使用典型的CommonJS功能,例如

ES2023来了!深入解析JavaScript的最新更新

1.从数组末尾查找元素这个函数允许我们根据条件从数组的最后一个元素向前查找元素。例如:constarray=[{a:1,b:1},{a:2,b:2},{a:3,b:3},{a:4,b:4}]console.log(array.findLast(n=>n));//result->{a:4,b:4}console.log(array.findLast(n=>n.a*5===20));//result->{a:4,b:4}console.log(array.findLast(n=>n.a*5===21));//result->undefinedconsole.log(array.findLastIn

ElasticSearch - RestClient操作ES基本操作

目录什么是RestClienthotel数据结构分析初始化RestClient创建索引库删除索引库判断索引库是否存在小结新增文档查询文档更新文档删除文档批量导入文档小结什么是RestClientES官方提供了各种不同语言的客户端,用来操作ES这些客户端的本质就是组装DSL语句,通过http请求发送给ES其中的JavaRestClient又包括两种:JavaLowLevelRestClientJavaHighLevelRestClient我们学习的是JavaHighLevelRestClient客户端APIhotel数据结构分析mapping映射分析创建索引库,最关键的是mapping映射,而m

filebeat+es+grafana监控nginx日志

nginx镜像安装和定制方法参考这篇文章:nginx镜像安装和定制es和kibana安装网上一堆文章,在此略过。本文主要介绍filebeat和grafana的安装和配置filebeat安装博主这儿把filebeat直接安装在nginx镜像里后台模式启动nginx镜像并进入容器[root@xf7027~]#dockerrun-it-dnginx53a4a0bb82cbdd43e730e891230fb24349f43f5ae0f799a05fab855b6242ec1e[root@xf7027~]#dockerpsCONTAINERIDIMAGECOMMANDCREATEDSTATUSPORTS

filebeat+es+grafana监控nginx日志

nginx镜像安装和定制方法参考这篇文章:nginx镜像安装和定制es和kibana安装网上一堆文章,在此略过。本文主要介绍filebeat和grafana的安装和配置filebeat安装博主这儿把filebeat直接安装在nginx镜像里后台模式启动nginx镜像并进入容器[root@xf7027~]#dockerrun-it-dnginx53a4a0bb82cbdd43e730e891230fb24349f43f5ae0f799a05fab855b6242ec1e[root@xf7027~]#dockerpsCONTAINERIDIMAGECOMMANDCREATEDSTATUSPORTS

SpringBoot集成ES

版本说明https://docs.spring.io/spring-data/elasticsearch/docs/current/reference/htmlSpringBoot版本2.7.x支持的最高ES版本为7.17.4版本选择:ES、kibana、IK均为7.17.4注意:kibana运行需要nodejs支持且存在版本兼容问题-->nodejs版本选择16.14.2资源下载链接:https://pan.baidu.com/s/13oytXXCRHUeW6WkPtRAFeQ?pwd=jciqES:https://www.elastic.co/cn/downloads/elasticsea

SpringBoot集成ES

版本说明https://docs.spring.io/spring-data/elasticsearch/docs/current/reference/htmlSpringBoot版本2.7.x支持的最高ES版本为7.17.4版本选择:ES、kibana、IK均为7.17.4注意:kibana运行需要nodejs支持且存在版本兼容问题-->nodejs版本选择16.14.2资源下载链接:https://pan.baidu.com/s/13oytXXCRHUeW6WkPtRAFeQ?pwd=jciqES:https://www.elastic.co/cn/downloads/elasticsea

ES修改字段类型(elastic)

有个需求是将es的一个date类型的字段改为string类型,经查阅资料发现es不支持直接修改字段类型,只能将原索引结构复制出来,然后单独修改某个字段的类型后,再去新建一个索引将这个结构填充进去,填充完复制原索引数据到新索引,进而使用新的索引(也可以删掉老的索引,将新的索引改名为之前的索引)。以下是步骤:1.本人用的双核浏览器,可以直接下载elasticsearch-head插件进而界面化,可以参照文章:https://blog.csdn.net/Weixing108/article/details/1278075152.复制出原来索引的结构:全选完后只保留mappings部分和最外层大括号。