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

网站的服务器怎么做的网站模板软件

网站的服务器怎么做的,网站模板软件,西安网页设计培训排名,能领免做卡的网站一、官方文档 elasticsearch官网:elasticsearch官网 elasticsearch源码:elasticsearch源码 ik分词器: ik分词器 ik分词器下载:ik分词器下载 elasticsearch 版本选择:elasticsearch 版本选择 官方推荐Elasticsearch和j…

一、官方文档

elasticsearch官网:elasticsearch官网
elasticsearch源码:elasticsearch源码
ik分词器: ik分词器
ik分词器下载:ik分词器下载
elasticsearch 版本选择:elasticsearch 版本选择
官方推荐Elasticsearch和jdk对应关系:官方推荐Elasticsearch和jdk对应关系

在这里插入图片描述
系统当前版本:
在这里插入图片描述
注:如果系统配置 JAVA_HOME,那么使用系统默认的 JDK,如果没有配置使用自带的 JDK,一般建议使用系统配置的 JDK。系统目前使用的jdk版本是:11.0.16.1,elasticsearch-env文件中注明:环境中配置:ES_JAVA_HOME>JAVA_HOME>ES_HOME

二、数据初始化

因为数据量不大,所以初始化方式比较直接,若是数据量大的时候,考虑使用第三方
**Q1:**初始化索引,大数据量时:单条数据操作存储至索引,报错,错误日志如下:org.springframework.dao.DataAccessResourceFailureException: 30,000 milliseconds timeout on connection http-outgoing-0 [ACTIVE]; nested exception is java.lang.RuntimeException: 30,000 milliseconds timeout on connection http-outgoing-0 [ACTIVE] at org.springframework.data.elasticsearch.core.ElasticsearchExceptionTranslator.translateExceptionIfPossible(ElasticsearchExceptionTranslator.java:94)

**W1:**当Elasticsearch需要在每次保存后刷新时,持续保存操作,使其无响应。
官方解释链接:https://www.elastic.co/guide/en/elasticsearch/reference/7.17/indices-refresh.html
文档提示刷新占用大量资源:在这里插入图片描述
问题代码:
每个数据组装后,保存文档,并刷新索引
效果:45w企业数据:2个多小时初始化完成
在这里插入图片描述
方案一:
批量写入,减少线程频繁切换,单次批处理数据写入后刷新一次,减少了刷新频率
目前单次批处理数据为1000条,此数量可以再优化,数据条数一般是根据文档的大小和服务器性能而定的,但是单次批处理的数据逐渐增加,当性能没有提升时,把这个数据量作为最大值。
效果:45w企业数据:40分钟初始化完成
方案二:
关闭刷新(Disable Refresh)是一种可以提高大量写入操作性能的操作。关闭刷新将临时禁止 Elasticsearch 自动刷新索引的操作,从而减少了写入操作时的磁盘IO和刷新操作带来的性能开销。当需要大量写入数据时,关闭刷新可以显著提升索引的写入性能。
GET 索引名称
在这里插入图片描述
默认刷新时间为1s
设置为不自动刷新,但是缓冲区满的时候也会触发refresh操作(例:企业数据达到42万条左右会自动触发刷新):

PUT /索引名称/_settings
{
"refresh_interval": -1
}

刷新指定index的数据:

POST /索引名称/_refresh

效果:45w企业数据:33分钟初始化完成
在这里插入图片描述
等数据初始化完成后,最后可以通过设置刷新时间的方式重新设置一个合适的刷新时间

三、快照、还原

在Elasticsearch中,快照备份是一种将索引和集群的状态数据保存到可恢复的快照中的机制。通过创建快照,你可以在需要时恢复数据,或在不同的集群之间迁移数据。

方案一:
官网API方式:https://www.elastic.co/guide/en/elasticsearch/reference/7.17/snapshot-restore-apis.html

第一步:
两个单节点环境均在elasticsearch.yml中设置备份路径,路径自定义,两个环境可不同备份路径
环境A:path.repo: /backups/elasticsearch1   
环境B: path.repo: /backups/elasticsearch2 
配置后启动环境A第二步:
在环境A对应的kibana中执行:
测试:
初始化:PUT company_index
POST company_index/_doc/1
{  "name":"小米手机"
}
GET company_index/_doc/11)创建快照存储库
PUT /_snapshot/companyku
{"type": "fs","settings": {"location": "/backups/elasticsearch1"}
}
(2)创建快照
PUT /_snapshot/companyku/snapshot_20230717?wait_for_completion=true
{
"indices": "company_index"
}第三步:
把环境A/backups/elasticsearch1路径下生成的文件内容。直接拷贝到环境B/backups/elasticsearch2路径下,启动环境B的节点Es
在环境B对应的kibana中执行:
(1)创建快照存储库
PUT /_snapshot/companyku
{"type": "fs","settings": {"location": "/data/backups/elasticsearch2"}
}2)还原数据
POST /_snapshot/companyku/snapshot_20230717/_restore
{"indices": "company_index"
}注意:若提示索引已存在,则删除当前已有的索引:DELETE company_index

方案二、Kibana
本地启动kibana,打开网址:http://localhost:5601/app/management/data/snapshot_restore/repositories
Stack Management->Snapshot and Restore
elasticsearch.yml配置:path.repo: /backups/elasticsearch1

  • Repositories注册存储库
  • Policies设置定时任务,最高频:15分钟
  • Snapshot定时任务触发或者手动触发任务,生成快照,在/backups/elasticsearch1路径下
  • 新建一个节点,配置repo,将生成的快照复制到该路径下,启动节点,注册同名存储库,自动出现快照数据,点击恢复,选择对应的索引,即可恢复。
  • 在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    定时任务配置备份频率
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

四、IK分词

目前英文是按单词分词,假设有需要新增分词词语:英文字母分词
ik分词器是把ik下载后放置在下载的es的plugins目录下,
ik增加新的分词:elasticsearch-7.17.6\plugins\ik\config
config下增加新文件:wyd_ik.dic(名称自定义)
wyd_ik.dic文件内容:

a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z

一行就是一个词
在这里插入图片描述
重新启动es。

在这里插入图片描述
看到启动日志打印加载成功
查看效果:

GET _analyze
{"analyzer": "ik_max_word","text": ["WYD", "国企", "1"]
}

在这里插入图片描述

五、 删除索引的已有字段

官方文档:https://www.elastic.co/guide/en/elasticsearch/reference/7.17/docs-reindex.html

PUT m1
{"mappings" : {"properties" : {"_class" : {"type" : "keyword","index" : false,"doc_values" : false},"age" : {"type" : "integer"},"id" : {"type" : "integer"},"name" : {"type" : "text","analyzer" : "ik_max_word"}}},"settings" : {"index" : {"refresh_interval" : "1s","store" : {"type" : "fs"}}}
}POST m1/_doc
{  "id":1, "age":2,  
"name":"小花"
}POST  /m1/_update_by_query
{"script": {"lang": "painless","inline": "ctx._source.remove(\"age\")"},"query": {"match_all": {}}
}GET m1/_searchPUT m2
{"mappings" : {"properties" : {"_class" : {"type" : "keyword","index" : false,"doc_values" : false},"id" : {"type" : "integer"},"name" : {"type" : "text","analyzer" : "ik_max_word"}}},"settings" : {"index" : {"refresh_interval" : "1s","store" : {"type" : "fs"}}}
}POST _reindex
{"source": {"index": "m1"},"dest": {"index": "m2"}
}GET m2/_search

六、代码示例

写了关于elasticsearch常用的方法示例,分组查询、分页查询、高亮查询、新增、修改、删除、地理位置查询等方式
代码示例:https://gitee.com/wyd-mayun/elasticsearch.git
注:
删除大数据量的索引,需要等待一下,若删除后,立即创建同名的索引,无法创建最新的索引,很可能是之前旧的索引结构

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

相关文章:

  • Go Web 编程快速入门 07.4 - 模板(4):组合模板与逻辑控制
  • 【Canvas与旗帜】标准加拿大枫叶旗
  • LwIP协议栈MPA多进程架构
  • 【JUnit实战3_12】第七章:用 Stub 模拟进行粗粒度测试
  • 东莞网络推广网站做静态网站软件
  • 想建网站做优化网站建设服务费 印花税
  • verilog阻塞赋值和非阻塞赋值的区别
  • 【Redis典型应用——缓存详解】
  • 阮一峰《TypeScript 教程》学习笔记——模块
  • 第 09 天:文件传输 (SCP, SFTP, rsync, FTP, NFS)
  • pandas 和 numpy相关函数详解
  • 酵母 cDNA 文库:解码基因表达与功能研究的核心工具
  • Win10使用WSL2安装ubuntu22.04
  • macos 下 docker使用方法 新手教程
  • t恤定制网站哪个网站是做红酒酒的
  • 玉林网站建设培训wordpress美术馆插件
  • 一个大型 3A 游戏的开发流程是怎么样的?
  • 智能性能分析:AI大模型识别性能瓶颈并提出改进建议
  • Flutter 中使用 Flame + flame_forge2d 的注意事项清单
  • SpringBoot教程(安装篇):Elasticsearch及可视化工具安装(Windows环境)
  • 华为OD机试双机位A卷 - 商品推荐多属性排序 (C++ Python JAVA JS GO)
  • 延安市违法建设举报网站深圳宝安网站推广
  • Mac Nginx安装、启动、简单命令(苍穹外卖、黑马点评前端环境搭建)
  • 新乡哪有做网站的北京seo执行
  • GitHub等平台形成的开源文化正在重塑林语堂
  • 鸿蒙分布式软总线通信协议详解
  • 建立网站的技术做谷歌seo要发大量文章吗
  • 第7章 muduo编程示例(5)
  • 微软输入法词库拓展600w(win11)
  • 解决虚拟机安装的Ubuntu20.04.6 LTS 不能复制粘贴问题