【时快讯】ES三周年:从初体验到个人优化建议
前言
众所周知,腾讯云Elasticsearch(简称ES)是一款分布式搜索引擎,可以帮助开发者构建高性能、可伸缩的搜索应用,同样它是基于ES开发的一款托管式搜索引擎服务,具有全托管式部署、高可用性、自动化运维等特点。
而最近的一段日子,是腾讯云ES合作三周年的时间,我也来凑波热闹吧~
初体验
先说说我对于Elasticsearch的印象吧,在我看来,腾讯云Elasticsearch是一种基于开源搜索引擎Elasticsearch的云计算服务,可以帮助用户快速构建和管理自己的搜索引擎应用,实现快速搜索和数据分析等功能。简单来说,它是一种搜索引擎服务,能够让你的应用快速地处理和搜索大量数据,提高用户的搜索体验和数据分析能力。换句话说,我们在腾讯云的每个角落都能发现Elasticsearch的影子。
(资料图片)
大概是两年以前吧,我初次接触腾讯云Elasticsearch的相关服务,当时就给我留下了深刻的印象。那时的腾讯云就像现在一样,提供了一个很直观的面板控制台,对于初学者的我们非常的友好与便捷;其次,在使用腾讯云Elasticsearch的过程中,我注意到其强大的搜索和分析功能。我可以使用各种查询语句来过滤数据,或使用分析聚合函数来对数据进行分析。这使得我可以轻松地处理大量数据并快速地获取所需的信息。此外,腾讯云Elasticsearch的可扩展性也很好。我可以根据需要灵活地调整集群的规模,从而满足我的不同需求。同时,腾讯云Elasticsearch还提供了很好的监控和日志功能,让我更好地管理和维护我的集群。
总的来说,我的使用体验非常良好,腾讯云Elasticsearch是一个非常强大的工具,可以满足我的各种搜索和分析需求,而我也很满意这个服务,并强烈推荐给其他朋友使用。
那么在如此强大的基础上,还需要有什么优化呢,所以都是我个人的浅显看法,有点吹毛求疵了。
在使用ES时,优化方向和解决方案都是需要考虑的问题,出现这个看法的原因是什么呢?且听我娓娓道来。下面我将从个人角度阐述我与腾讯云的渊源以及浅浅分析一下腾讯云Elasticsearch的优化方向,帮助开发者更好地理解和应用这个服务。(以下的科普知识是我在官网上筛选而来,如有错误,请指明;有关个人看法,如有冒犯,深感抱歉~)
Begin
先来对我搜集到的资料简单总结一下,算是给我们科普一些专业知识吧,现在的我们好多人都是,用起来行云流水,但是涉及具体原理时,难免会有些难堪。所以在提优化的看法之前,我先简单汇总一下Elasticsearch的相关知识
1.1Elasticsearch的架构
Elasticsearch采用了分布式架构,将数据分散到多个节点上,每个节点都可以处理搜索请求,同时也会将请求转发到其他节点进行处理。ES集群中有一个主节点,用于协调和管理集群中的各个节点,主节点的选举和切换也是集群的重要机制之一。节点和分片是ES集群中的基本概念,每个节点可以包含多个分片,分片负责存储数据和执行搜索请求。
1.2 Elasticsearch的核心原理
Elasticsearch的核心原理是倒排索引和分布式搜索。倒排索引是指以词条为索引关键字建立的反向索引表,通过倒排索引可以快速地找到包含某个词条的文档。分布式搜索是指将搜索请求发送到集群中的所有节点,各节点都会执行搜索请求并将结果返回给客户端,客户端再将结果进行合并和排序。
1.3 Elasticsearch的操作实践
对于ES的操作实践,主要包括数据索引、搜索查询、分片和副本、集群管理等方面。在进行数据索引时,需要先创建索引,并设置索引的分片和副本数量,再进行文档的增删改查操作。在进行搜索查询时,可以使用查询语句、聚合查询、过滤查询等方式来获取需要的搜索结果。分片和副本的设置可以提高ES的性能和可用性,集群管理则包括节点的添加和删除、主节点的切换和数据备份等操作。
Optimize
终于到了对于ES的优化方向这一内容了,在我看来,它主要包括索引优化、查询优化和集群优化。在索引优化方面,需要考虑文档的结构、字段的映射、数据类型、分词器、词条过滤器等因素。在查询优化方面,可以通过不同的查询方式和查询参数来优化查询性能。在集群优化方面,主要需要考虑集群节点的配置、分片的分配、副本的数量、负载均衡等因素。同样下面我会展开聊聊~这些仅仅是我的个人看法,或许好多都已经实现了。但是,想法既然诞生了就要说出来。
2.1 索引优化
在进行索引优化时,可以考虑以下几个方面:
文档结构优化:在 Elasticsearch 中,文档是基本的数据单元。为了提高索引的性能,需要尽可能地减小文档的大小。可以将一些不需要存储的字段剔除掉,将一些可以合并的字段合并起来,从而减小索引的大小。字段映射优化:字段映射是 Elasticsearch 中很重要的一部分,它定义了字段的数据类型、存储方式和索引方式。在进行字段映射时,需要注意以下几个方面:数据类型选择:选择合适的数据类型可以减小索引的大小,提高查询性能。比如,对于数字类型,可以选择 int、long、float 和 double 类型;对于日期类型,可以选择 date 类型;对于字符串类型,可以选择 keyword 和 text类型。分词器选择:分词器是将文本分成一些个体的工具。在 Elasticsearch 中,分词器会将文本分成词条,然后建立索引。因此,选择合适的分词器可以提高索引的准确性和查询性能。常用的分词器有 standard、english、ik 等。词条过滤器选择:词条过滤器是用来对词条进行处理的工具。在 Elasticsearch 中,词条过滤器可以对词条进行大小写转换、停用词过滤、同义词扩展等操作。选择合适的词条过滤器可以提高索引的准确性和查询性能。数据类型优化:对于不同的数据类型,需要采用不同的优化策略。比如,对于字符串类型,可以采用多字段查询的方式,将一个字符串字段拆分成多个字段进行存储和查询,从而提高查询性能。对于数字类型,可以使用 doc_values 来存储,从而提高聚合查询的性能。2.2 查询优化
在进行查询优化时,可以考虑以下几个方面:
查询方式优化:在 Elasticsearch 中,有多种查询方式,如全文查询、精确查询、范围查询、模糊查询等。在进行查询时,需要选择合适的查询方式,避免不必要的计算。
查询条件优化:查询条件是影响查询性能的关键因素。在进行查询时,应该尽量减少查询条件的数量,尽量选择高效的查询条件。可以使用布尔查询和范围查询来优化查询条件。
索引优化:索引优化也可以提高查询性能。比如,通过对字段进行索引、使用倒排索引等方式来提高查询速度。
2.3 集群优化
在进行集群优化时,可以考虑以下几个方面:
硬件配置优化:选择合适的硬件配置可以提高集群的性能。可以通过增加 CPU、内存、磁盘等硬件资源来提高集群的处理能力。
节点配置优化:在 Elasticsearch 集群中,每个节点都承担着一定的任务。可以通过优化节点的配置来提高节点的性能。比如,可以通过设置 jvm.options 文件来优化 JVM 的存分配、垃圾回收等参数,从而提高节点的性能。
网络配置优化:在 Elasticsearch 集群中,节点之间需要进行网络通信。可以通过优化网络配置来提高通信的性能。比如,可以通过设置网络带宽限制、优化 TCP 缓冲区大小、开启压缩等方式来提高网络的性能。
End
至于具体的优化措施,我只能是纸上谈兵,也没有去实践的能力。因为上述是我在使用时的一些感谢和看法,或是基于一些大佬使用的体验提出的奇思妙想,但是我觉得对于数据预处理可以通过对数据进行清洗、去重、格式转换、合并等方式来提高数据的质量和索引的性能。具体的我其实不太懂,所以了了收尾。
最后,再次祝贺ES三周年,希望腾讯云能发展的越来越好。我也借着这个机会,总结了一下目前对于ES的一些了解和看法,挺好的。那么,再见喽~
相关文章
首销登顶!一加 Ace 2 斩获2022-2023安卓手机首销日销量冠军
2月14日,一加中国区总裁李杰公布了一加Ace2首销成绩。一加 Ace 2 在京东天猫双平台首销日销量,超友商A+友商B日销量2倍,达到友商A的26
膜法世家携手江南大学云南溯源,用中国成分塑造品牌差异性
日前,膜法世家与江南大学科研团队前往云南大理、楚雄多地,进行了为期十日的联合寻溯活动,聚焦地域特色植物采集开发与研究,筛选优质护肤
今年1至9月 河北省电子信息产业入统企业957家
从省政府新闻办11月2日举行的2022中国国际数字经济博览会新闻发布会上获悉,今年1至9月,全省电子信息产业入统企业957家,同比增加160家,
小鹏G9获广州自动驾驶路测资格 探索零改装量产Robotaxi新模式
【2022年11月1日】近日,经工信局、公安局、交通局审批后,小鹏G9成功获得广州智能网联汽车道路测试牌照,这意味着小鹏G9开创了使用前装量
让普惠金融回归“民生”,民生小微“四通”助力小微企业健康发展
众所周知,小微企业融资难、融资贵一直以来都是一个世界性难题,发展壮大普惠金融市场也是一个全球性挑战。尽管我国已成为了数字普惠金融发
预计到2024年 云南农民收入将达2万元左右
6月27日,记者从云南省农村居民持续增收三年行动方案政策解读新闻发布会上获悉,《云南省农村居民持续增收三年行动方案(2022—2024年)》突
淮安农商银行发放首笔“驾易贷”产品 助力物流行业纾困
为进一步响应金融机构全力支持货运物流保通保畅,加大物流行业资金支持力度,帮扶重点群体的政策号召,淮安农商银行秉持周到金融 家乡银行
辽宁:下达资金超50亿元支持淘汰燃煤锅炉和散煤治理
今年以来,省财政厅完善政策措施,加大投入力度,重点支持精准治污、科学治污,截至目前,已下达资金超50亿元。在支持淘汰燃煤锅炉和散煤治
东川区多措并举推进产业转型 推动农文旅融合实现“富绿双增”
今年以来,东川区积极应对困难挑战,狠抓任务落实,脱贫成果持续巩固,经济发展稳中向好,产业转型稳步推进,民生福祉不断改善,各项工作稳
东海农商银行白塔支行:推广第三代社保卡工作真情暖人心
心里想着客户,为客户纾困解难。东海农商银行白塔支行坚持以客户为中心的服务理念,在推广第三代社保卡工作中急客户之所急,将便民服务送到
沧州落实“降、缓、返、补”政策 助力企业发展稳定就业
感谢就业见习政策,为我搭起了连接就业的桥梁。王树涛现在是沧州市华亿机电产品有限公司的一名员工。2020年毕业后,他一直没有找到合适的工
87.9万元!沧州实施一次性扩岗补助政策惠及586人
为鼓励企业积极吸纳大学毕业生就业,发挥失业保险助企扩岗作用,自8月以来,沧州市积极实施一次性扩岗补助政策。截至9月23日,全市已为232
河北探索特色产业发展新路 实现农业增效农民增收助力乡村振兴
近日,在正定县南楼乡完民庄村谷子种植基地,河北惜康农业科技有限公司负责人李智勇和完民庄村党支部书记郭博边查看谷子长势,边商量晾晒场
宜兴农商银行:“钟灵阳羡天宝物华”助农直播取得圆满成功
近日,由江苏省农村信用社联合社主办,宜兴农商银行承办的大美江苏乡村行——钟灵阳羡,天宝物华助农直播取得圆满成功。该次直播聚力宣传宜
中国鸭梨之乡魏县:金融活水助企纾困“贷”动乡村振兴路
9月,中国鸭梨之乡魏县处处洋溢着丰收的喜悦。虽然疫情的阴霾仍未消散,但当地稳定经济一揽子举措的效果已经呈现。金融活水助企纾困而贷动
前8月河北新增专利授权8万件同比增长8.4% 助力营造市场化
从省市场监管局获悉,今年以来,河北知识产权保护工作重点任务落地落实取得积极成效。1至8月,全省新增专利授权8万件,同比增长8 4%,其中
安徽三次产业投资结构持续优化 占全省投资的63.9%
数据显示,全省投资产业结构持续优化,三次产业投资结构由上年同期的1 6∶31 5∶66 9调整为2 0∶34 1∶63 9。第一产业投资高增长,完成投资
盱眙农商银行:用好“加减乘除”四大法则保实体经济百业兴
量大面广的小微企业是国民经济重要支柱,盱眙农商银行坚守金融为民初心,把服务小微企业刻进基因、落到实处,专门出台支持中小微企业纾困解
聚焦重点精准发力!沧州规上高新技术企业数量位居全省首位
从沧州市统计局获悉,今年以来,沧州市围绕强化企业创新主体地位,大力培育高新技术企业,截至7月底,全市规模以上高新技术企业达732家,较
公积金政策再加码!超120个城市发布公积金贷款政策
9月13日,江苏省徐州市住房公积金管理中心发布了《关于阶段性调整住房公积金贷款政策的通知》(以下简称《通知》),明确个人公积金贷款额度
从“群众跑腿”到“数据跑路” 河北“一网通办”再升级
按照省委十届二次全会部署要求,今年省政务服务办牢牢把握全省一盘棋、平台一体化、办事一张网的总体要求,依托全省一体化政务服务平台,构
河北科技赋能农业综合生产能力稳步提升 全面提升特色产业科技支撑能力
河北坚持把强化科技创新推广作为深化农业供给侧结构性改革、推进乡村振兴、促进农业高质量发展的关键举措,立足三产融合,针对薄弱环节,积
减费让利惠企利民 南通农商银行多措并举优化营商环境
近年来,南通农商银行认真贯彻落实国务院及监管部门关于金融机构减费让利、惠企利民的工作部署,积极担当服务实体经济责任,在人民银行南通
河北:1至7月省市重点项目完成投资7154.8亿元
4月份开工至今,项目建设非常顺利,主体厂房建设已经完成了20%。日前,在位于石家庄市藁城区的河北龙海药业医药产业园项目建设现场,公司研