得物双11一般打几折
一、引言
得物作为全球领先的潮流网购社区,面临着日益增长的用户和数据带来的技术挑战。为了应对日益增长的数据规模和处理需求,得物的可观测性平台每天都在处理数PB级的Trace数据和数万亿条Span记录。为了高效实时地处理这些数据并降低数据存储成本,平台采用了存算分离架构,并结合AutoMQ和Kafka以及ClickHouse等技术实现资源管理和性能优化。
二、Kafka的演进
在得物的可观测性平台中,Apache Kafka被广泛应用于数据收集、加工和分发。随着业务数据量的增长,Kafka的架构出一些问题。为了解决这些问题并优化性能,得物选择了AutoMQ作为替代方案。
AutoMQ的优势在于它完全兼容Kafka客户端和生态工具,迁移过程顺畅,避免了大规模改造。AutoMQ通过存算分离架构解决了Kafka在大规模数据处理中的瓶颈问题。特别是针对冷读场景,AutoMQ显著提升了性能,与Kafka相比,冷读效率提升了约5倍,且对实时写入没有任何影响。AutoMQ还具备快速弹性扩缩容能力,能够自动进行流量重平衡,降低了运维复杂度。
三、ClickHouse的进化
得物可观测性平台在分布式链路追踪中采用ClickHouse作为Trace索引数据的存储引擎。随着数据量的持续增长,平台面临着存储成本优化和集群维护复杂度提升的挑战。为了解决这些问题,得物决定升级ClickHouse到企业版,并引入存算分离架构进行优化。
ClickHouse企业版通过共享存储和计算节点的分离,提高了系统的弹性和扩展性。它还引入了Serverless计算模型,允许平台根据实际负载自动调整计算资源的大小,实现了弹性伸缩,从而节省了资源开销并提高了系统的稳定性。通过采用SharedMergeTree表引擎等关键技术,ClickHouse企业版在数据存储和查询性能上实现了显著的提升。
在得物的实践中,通过升级ClickHouse到企业版并优化写入、查询、容灾能力和弹性能力等方面,成功支持了分布式链路追踪场景下集群的高性能和高效率运行。
四、总结与展望
一、秒级弹性扩容
平台具备智能的实时调整能力,能够根据业务负载的动态变化,实现计算资源的自动扩展。通过持续监控CPU和内存的使用情况,系统能够智能决策并实时调整Pod配置,确保扩容资源即刻生效,无需繁琐的服务重启流程。
二、按需付费,节约成本
我们采用计算资源按需付费的模式,每个节点独立进行资源扩展和缩减,仅根据实际业务负载进行调整,有效避免了因节点间流量差异导致的成本浪费。节点的弹性扩容和缩容单位精确至1CCU(约1C4G),确保计费精准。平台按秒计费,您只需为实际使用的资源付费。这一机制显著降低了资源浪费,并确保了成本优化。
三、存储计费,更加灵活
相比传统的存算一体架构,我们采用了共享存储解决方案,有效解决了数据不均衡、运维繁琐及成本冗余的问题。仅按实际使用量计费的模式,结合对象存储的价格优势,大大降低了大数据场景下的存储成本,节省比例高达70%以上。
通过采用ClickHouse企业版,我们的可观测性平台实现了全面的性能优化,涵盖了数据写入、查询、容灾以及弹性扩展各个方面。企业版的存算分离架构提升了系统可靠性,而秒级弹性扩展能力和按需付费模式则显著降低了计算资源和存储资源的成本。这种实践模式不仅满足了高并发、高性能的业务需求,还提升了系统的扩展性和运维效率,成功应对了各种数据挑战。
五、引用文献
[参考来源一](AutoMQ基于S3的共享流存储库)详细描述了共享流存储的优势和应用场景。[参考来源二](Linux Page Cache)、[参考来源三](Linux SendFile)等技术文档为技术实现提供了支持。[参考来源四](AutoMQ性能)和[参考来源五](AutoMQ秒级分区迁移)等文档展示了相关技术的性能和优势。[更多技术细节可参考其他相关文档](AWS Auto Scaling Groups等)。阿里云云数据库ClickHouse提供了可靠的数据库服务,为大数据处理提供支持。(详细可访问官方链接:[链接地址]。)