es相关的知识点

这篇具有很好参考价值的文章主要介绍了es相关的知识点。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

es相关的知识点
海量数据下如何提升es的操作性能

.filesystemcache

os cache操作系统缓存
es中的数据,实际上写入磁盘,磁盘文件的操作系统,实际上会将数据写入到oscache中
es的搜索引擎严重依赖于底层的filesystemcache
如果filesystemcache的内存足够大,可以容纳所有的index segmentfile索引数据文件,那么搜索的时候,基本上都是走的内存,实际上的消耗非常少,性能会非常高.
es中中需要存储少数的记几个需要用于检索的数据信息.而不需要把所有的数据都写入es否则,大量的非检索数据徒徒占用空间而无任何作用
一般建议使用es+hbase这样子的架构
hbase的特点是海量数据在线存储,不要做复杂的搜索动作,就是做简单的id或者范围检索

从es中根据name或者是age 去检索,拿到的结果可能有20个doc id然后根据es检索到的内容信息作为第二次检索的索引去hbase中进行查询,然后再返回给前端
写入到数据最好是略微大于es的filesystem cache的es相关的知识点

数据预热

自己去自动检索一些使用量较高的数据,从而将之存入缓冲中,达到二次检索高效的目的

冷热分离

es做类似于mysql的一个水平差分,将放访问低的数据单独建立一个索引,访问量大的数据单独建一个索引,达到一宗冷热分离了的目的,可以避免冷数据将filesystem cache的位置占用

document模型的设计

es里面的复杂查询尽量不要使用,否则会极大的影响性能.一般性能不大好.

分页性优化

es的分页性能较差,比较坑
es需要将你查询的数据位置之前那的数据都整理到一个shard节点,然后才能获取你要查询的那一条数据
这样就需要对es做一些要求

1.不允许深度分页/默认深度分页性能很差

2.类似与app中的下拉页拉出来的一页一页,可以使用scroll api

scroll会一次性直接生成所有数据的快照,然后会根据不同的游标定位到不同的资源,这样的性能很快比起es的翻页高效很多
无论返多少页,性能都是毫秒级别的
但是scroll api只能往后翻,不可以跳跃,所以只能用于类似微博那种应用文章来源地址https://www.toymoban.com/news/detail-490825.html

到了这里,关于es相关的知识点的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • es知识点 一

    kibana工具是查询es数据的工具 用es去搜索 dsl语言 使用post不需要指定ip 但是put需要指定ip 1、文档的新增 post /_index/_type post /user/_doc {“name”:“lmm”} 2、文档的更新 post /user/_update/id {“name”:“nana”} 3、文档的删除 post /user/_delete_by_query {“query”: “term”:{“_id”:dsadsad}} 4、索引

    2024年02月12日
    浏览(30)
  • SpringMVC相关知识点

    传统开发中的控制层: 接收请求参数 request.getParameter 封装实体 new 实体类调用其set方法 访问业务层 接收访问结果 指派页面 通过request和response对象进行页面跳转 将共有行为进行抽取成DispatcherServlet【SpringMVC内部集成】,通过Spring-MVC.xml配置文件去配置。 Spring: 获取请求参数

    2024年02月16日
    浏览(49)
  • java相关知识点

    1.String和StringBuffer如何互相转化 StringBuffer buffer = new StringBuffer(string); String string = buffer.toString();  2.如何实现两个数组内容的拷贝  3.如何去除字符串首尾空格 str.trim()  4.字符串和字符数组如何相互转换 字符串转字符数组:str.toCharArray(); 字符数组转字符串:strs.valueOf(char[] ch)  

    2023年04月23日
    浏览(46)
  • DAC相关知识点

    1.回放数据64bit的数据来源有两个地方: A——ROM波形数据表(数据来源可由dds产生或者matlab产生,本实际项目选择由dds产生的数据:通过写地址出来相应频率的波形)。 B——预留的接口给客户用来回访他们的I/Q数据 (64bit数据一般是4组16bit的IQ拼接的{i0,q0,i1,q1})。 2.6

    2024年02月12日
    浏览(46)
  • Redis相关知识点

    Redis (REmote DIctionary Server) 是用 C 语言开发的一个开源的高性能键值对(key-value)数据库,它支持网络,可基于内存亦可持久化,并提供多种语言的API。Redis具有高效性、原子性、支持多种数据结构、持久化、高并发读写等特点。 特征: 1.数据间没有必然的关联关系 2.内部采用

    2024年01月23日
    浏览(75)
  • ThreadLocal相关知识点

    ThreadLocal是Java中的一个类,它提供了一种线程局部变量的机制。它的作用是,为每个线程创建一个独立的变量副本,各个线程之间互不干扰。简单来说,ThreadLocal为多线程环境下的线程提供了一种线程私有的数据存储方式。 使用ThreadLocal可以避免多线程中的数据共享和竞争条

    2024年02月11日
    浏览(47)
  • MicroBlaZe 相关知识点

    1.DDR3——存储.c的应用程序。需要两个时钟(200MHZ输入,还有一个是特权同学的166.6m) 2.QSPI FLASH——对flash进行固化(1.需要50M外部时钟输入2.在SDK里面需要修改值为5)。 3.MicroBlaZe的输入时钟(mig输出的时钟频率一般小于200MHZ)。 5.SDK里面会有个串口terminal可以显示打印信息。

    2024年02月13日
    浏览(57)
  • JVM相关知识点

    Java可以跨平台的原因是因为它使用了Java虚拟机(JVM)作为中间层。Java源代码首先被编译成字节码,然后由JVM解释执行或即时编译成本地机器代码。这样,在不同的操作系统上,只需要安装适合该操作系统的JVM,就可以运行相同的Java程序。JVM提供了一个抽象的执行环境,使得

    2024年02月08日
    浏览(48)
  • Linux相关知识点

    Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。 Linux内核 是一个Linux系统的内核,而不是一个操作系统 Linux操作系统 红帽操

    2024年02月11日
    浏览(45)
  • Hadoop相关知识点

    开启防火墙 sudo ufw enable 关闭防火墙 sudo ufw disable 查看防火墙状态 sudo ufw status 修改主机名 sudo vi /etc/hostname 修改映射 sudo vi /etc/hosts (考题) 建立文件夹 mkdir 文件夹名字 删除文件夹 rm -rf 递归删除文件夹向下穿透,其下所有文件、文件夹都会被删除 rm -f 强制删除文件 rm -r 递归

    2024年02月06日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包