大数据存储与处理技术解析
1. 大数据管理软件栈概述
大数据管理软件栈促进了松耦合(通常是开源)组件的集成。例如,NoSQL数据库管理系统(DBMS)通常支持不同的存储系统,如Hadoop分布式文件系统(HDFS)等。这些系统通常部署在公共或私有云计算环境中。
大数据管理软件栈的组件包括数据存储、数据处理框架、脚本、SQL、NoSQL、搜索、流处理、数据分析和资源管理等。这个软件栈架构将指导我们对大数据存储和处理的讨论。
2. 分布式存储系统
2.1 分布式存储系统的发展
大数据管理依赖于分布式存储层,数据通常以文件或对象的形式分布在无共享集群的节点上。这与当前依赖块存储的DBMS软件栈有很大不同。
早期的DBMS基于层次或网络模型,是文件系统的扩展,如COBOL。第一个关系型DBMS也是建立在文件系统之上,如著名的INGRES DBMS是在Unix文件系统上实现的。但使用通用文件系统会使数据访问效率低下,因为DBMS无法控制磁盘上的数据聚类或主内存中的缓存管理。主要问题是当时操作系统缺乏对数据库管理的支持。
因此,关系型DBMS的架构从基于文件发展到基于块,使用操作系统提供的原始磁盘接口。基于块的接口可以直接、高效地访问磁盘块(磁盘上的存储分配单位)。如今,所有关系型DBMS都是基于块的,因此可以完全控制磁盘管理。向并行DBMS的演进也保持了这种方法,主要是为了便于从集中式系统过渡。
回到使用文件系统的主要原因是分布式存储可以实现容错和可扩展性,这使得构建上层数据管理层更加容易。
2.2 分布式存储的两种解决方案
分布式存储层通
超级会员免费看
订阅专栏 解锁全文
1261

被折叠的 条评论
为什么被折叠?



