[开源软件]开源软件中的大数据管理技术| 大数据系统软件国家工程实验室黄向东团队研究成果( 二 )


集群弹性扩展是分布式系统的特色之一 , 扩展时的数据分区修改也成为值得研究的主题之一 。 而随着实际应用中集群规模的不断扩大 , 云原生数据库的兴起 , 数据分区与数据迁移的优化依然是分布式数据管理的研究热点 。
副本机制是指通过将一份数据在系统中重复存储多份降低对某一节点的访问负载 , 从而确保数据的高可用性与高可靠性的技术 。 多数分布式系统都是通过采用副本机制 , 实现在大量不可靠的服务器上可靠地存储海量数据 。
通过副本机制来确保可靠性的系统 , 往往都会存在磁盘空间占用比较大的问题 。 为解决这一问题 , 一些系统引入了纠删码机制——通过在其他节点记录数据的纠删码来使得某个节点发生数据丢失时 , 可以通过纠删码恢复丢失的数据 。 但纠删码由于计算复杂 , 存在恢复速度与更新速度都较慢的缺点 。
总体而言 , 如果存储系统用于频繁地更新数据 , 采用副本机制更合适 , 如果存储系统主要用于归档数据 , 则采用纠删码更合适 。
为使集群中的各节点准确有效地协同工作 , 多种分布式协议被提出 , 其中最有代表性的是法团协议和共识算法 。
法团协议主要通过控制读写请求需要完成的副本数实现对副本一致性的控制 , 是一种相对简单的副本控制协议 , 可以作为其他复杂协议的基础 。
共识算法最常用于支持分布式事务 , 例如在P2P架构中 , 由于没有处于特殊地位的节点 , 当多个节点产生冲突时 , 共识算法便被用来使这些节点“达成共识” 。
发展前景
Apache社区的开源大数据管理系统包括了分布式文件系统、键值数据管理系统和时序数据管理系统 。
Hadoop分布式文件系统采用分布式的思想,适合存储大文件 。 它采用副本机制和纠删码保证数据的可靠性 , 但在极特定场景下也会产生副本不一致的情况 。
键值数据库的模型简单 , 支持的查询也仅限于单点查询、范围查询 。 其存储引擎通常基于LSM 。 目前流行的键值数据库包括Apache Accumulo、Apache Cassandra、Apache HBase等 。
时序数据管理系统主要采用3种架构:基于关系数据库、基于键值数据库、原生的时序数据库 。
时间序列数据本质上是一个时间函数的部分采样结果 , 而现实中的时间函数多数是连续、存在一定规律的 , 这使得对时间序列进行压缩切实可行 。 同时 , 时间序列数据也是一种流式数据 , 但时间戳的存在为其带来了新的机遇和挑战 。
研究结论
在大数据管理系统中 , 存储、数据分区、副本机制与一致性协议技术相互交织在一起 , 因而在引入一种技术时往往需要同时考虑对其他部分的依赖 。
大数据技术研究领域还有非常多的开放问题有待解决 , 尤其是在面向特定领域数据管理方面 , 有广泛的研究空间 。
论文作者:
江天 , 乔嘉林 , 黄向东 , 王建民
作者简介:
江天 , 清华大学软件学院 , 大数据研究中心 , 大数据系统软件国家工程实验室 , 博士研究生 , 研究方向为大数据系统;黄向东 , 清华大学软件学院 , 大数据研究中心 , 大数据系统软件国家工程实验室 , 助理研究员 , 研究方向为分布式系统及时序数据库 。
全文详见《开源软件中的大数据管理技术》 , 已发表于2020年《科技导报》第3期 。
[开源软件]开源软件中的大数据管理技术| 大数据系统软件国家工程实验室黄向东团队研究成果
本文插图
《科技导报》创刊于1980年 , 中国科协学术会刊 , 主要刊登科学前沿和技术热点领域突破性的成果报道、权威性的科学评论、引领性的高端综述 , 发表促进经济社会发展、完善科技管理、优化科研环境、培育科学文化、促进科技创新和科技成果转化的决策咨询建议 。 常设栏目有院士卷首语、智库观点、科技评论、热点专题、综述、论文、学术聚焦、科学人文等 。


推荐阅读