北京哪家治疗白癜风医院好 https://jbk.39.net/yiyuanzaixian/bjzkbdfyy/1需求分析
1.1分析压测对象
1)什么是ClickHouse和Elasticsearch
ClickHouse是一个真正的列式数据库管理系统(DBMS)。在ClickHouse中,数据始终是按列存储的,包括矢量(向量或列块)执行的过程。只要有可能,操作都是基于矢量进行分派的,而不是单个的值,这被称为矢量化查询执行,它有利于降低实际的数据处理开销。
Elasticsearch是一个开源的分布式、RESTful风格的搜索和数据分析引擎,它的底层是开源库ApacheLucene。它可以被这样准确地形容:
一个分布式的实时文档存储,每个字段可以被索引与搜索
一个分布式实时分析搜索引擎
能胜任上百个服务节点的扩展,并支持PB级别的结构化或者非结构化数据
2)为什么要对他们进行压测
众所周知,ClickHouse在基本场景表现非常优秀,性能优于ES,但是我们实际的业务查询中有很多是复杂的业务查询场景,甚至是大数量的查询,所以为了在双十一业务峰值来到前,确保大促活动峰值业务稳定性,针对ClickHouse和Elasticsearch在我们实际业务场景中是否拥有优秀的抗压能力,通过这次性能压测,探测系统中的性能瓶颈点,进行针对性优化,从而提升系统性能。
1.2制定压测目标
为什么会选择这个(queryOBBacklogData)接口呢?
1)从复杂度来看,接口(queryOBBacklogData)查询了5次,代码如下:
/***切ck-queryOBBacklogData*
paramqueryBO*return*/publicOutboundBacklogRespBOqueryOBBacklogDataCKNew(OutboundBacklogQueryBOqueryBO){log.info("queryOBBacklogDataCK入参:{}",JSON.toJSONString(queryBO));//公共条件-卡最近十天时间String