分布式存储系统,是将数据分散存储在多台独立的设备上。传统的网络存储系统采用集中的存储服务器存放所有数据,存储服务器成为系统性能的瓶颈,也是可靠性和安全性的焦点,不能满足大规模存储应用的需要;分布式存储系统采用可扩展的系统结构,利用多台存储服务器分担存储负荷,利用位置服务器定位存储信息,它不但提高了系统的可靠性、可用性和存取效率,还易于扩展。
在设计分布式软件系统方案之前,首先要考虑的是当前的业务环境和应用功能,然后再考虑成本、方案目标和要达到的效果。此外,还应考虑多种因素,使方案具有针对性和可操作性。采集和处理的数据基本存储在传统数据库中,每条记录经过转换后存储在分布式存储系统中,数据文件变得更小也更分散,并行计算框架在处理小文件时需要进行数据传输,处理效率受到了一定的影响。在交通运输领域,底层数据处理仍以传统数据库为中心,与现有行业相连接,在存储上可以使用传统的关系数据库或分布式文件存储系统,关系数据库存储需要频繁更新数据,分布式文件存储系统的数据增长很快,但是变化频率不高;两者都有自己的备份计划,互不干扰。海量实时数据查询在此基础上,建立基于高速分布式NoSQL数据库。离线批处理任务一般基于并行计算框架,适用于大数据量、复杂和长时间的计算任务。
常见的各种类型的分布式存储技术框架如下。
1.HDFS
Hadoop的分布式文件系统(Hadoop Distributed File System,HDFS)适合存储海量非结构化数据,它可以部署在廉价的机器硬件上,能够安全可靠地存储TB级甚至PB级的海量非结构数据,是采用流式数据访问模式来存储超大文件的文件系统。
2.HBase(www.daowen.com)
HBase是一个分布式的、面向列的开源数据库,它适合存储海量的半结构化数据。由于HBase分布式存储系统具有可伸缩等特点,所以可以在廉价的PC服务器端上搭建起大规模的HBase存储集群。
3.Greenplum
Greenplum适合存储海量结构化数据,它是基于PostgreSQL开发的一款MPP(海量并行处理)架构的、shared-nothing无共享的分布式并行数据库系统。采用Master/Slave架构,Master只存储元数据,真正的用户数据被散列存储在多台Slave服务器上,并且所有的数据都在其他Slave节点上存有副本,从而提高了系统的可用性。
4.TFS
TFS(Taobao File System)适合存储海量的非结构化数据,是一个高可扩展、高可用、高性能、面向互联网服务的分布式文件系统,它构筑在普通的Linux机器集群上,可为外部提供高可靠和高并发的存储访问,TFS为淘宝提供海量小文件存储,通常文件大小不超过1M,满足了淘宝对小文件存储的需求,被广泛地应用在淘宝各项应用中。它采用了HA架构和平滑扩容,保证了整个文件系统的可用性和扩展性,同时扁平化的数据组织结构,可将文件名映射到文件的物理地址,简化了文件的访问流程,一定程度上为TFS提供了良好的读写性能。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。