浅谈高可用分布式流数据存储设计

本文探讨了随着业务发展数据治理的重要性,提出了分布式流数据存储解决方案。重点介绍了流数据存储平台的设计,包括存储结构(有序性、扩展性、高性能、一致性、大容量)、缓存设计(PageCache、堆外内存、预加载、读写共页、PLRU淘汰策略)、写入流程优化(全异步化)和集群架构设计(无状态服务、CAP理论应用)。
摘要由CSDN通过智能技术生成

当数据规模发展到一定阶段,数据治理俨然已是企业系统建设的内在要求。伴随着业务的快速发展,多种多样结构复杂的数据给数据治理带来了巨大的考验。

早期的小规模业务,单体服务配合单个数据库即可满足业务需求。而当下,数据库分库分表,并采用读写分离和分布式的架构模型,同一份数据被转换成各种特定的数据格式,存放在各种各样的数据库中,会消耗大量的存储和计算资源。为解决这一数据治理乱象,分布式流数据存储应运而生。

数据存储的进化史

起初,单体服务应用只需一个数据库存储数据就足够了。随着业务需求的增多,服务从1个增长到N个,数据也需要分库分表来存储,若基于容灾等方面考虑,还需要做多个副本。此外不同的业务场景需要用到不同结构的数据存储,比如搜索需要用到ElasticSearch,存储分析需要用到Hive集群,在线业务需要用到K-V(键-值,NoSQL)存储和MySQL存储,同时这些数据还要在一定的业务场景下做到实时同步。在这里插入图片描述
在这种情况下,数据就存在诸多问题:

  • 当数据在各种场景下ETL(Extract-Transform-Load,数据抽取、转换和加载)会造成严重的资源浪费;
  • 每份数据都有快照备份,占用极大的存储空间;
  • 当某一份数据不止服务于一个微服务时,一旦业务调整,一份数据的变动将会影响下游的数据变动,就会出现严重的耦合问题。

冗杂数据随业务扩张而

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值