关键词:
对象存储
Amazon S3接口
自托管
私有云
混合云
分布式系统
摘要:
近年来,海量数据的处理与存储是学术界与工业界研究与探索的热门领域。数据处理与存储相关的基础设施得到了极大的发展,衍生出了丰富的细分领域,为各种不同的使用场景提供了有针对性优化的解决方案。公有云提供的对象存储服务是目前实现大规模非结构化数据存储最便捷的方式,但企业对敏感数据存储及其它场景的需求推动了私有云/混合云的兴起,同时也产生了对自托管的对象存储系统的需求。论文设计并实现了一种对象存储系统,用于满足信息技术企业对可靠、可扩展的非结构化数据存储的需求。该系统为应用程序提供简洁的接口抽象,简化应用程序存取数据的逻辑。接口采用了与现今广泛使用的公有云对象存储服务Amazon S3相近的接口设计,具有良好的兼容性,降低了应用程序的接入成本。该系统采用用户空间、存储区和对象的三层逻辑模型,模型扁平的结构降低了系统的复杂度。在架构设计上,该系统遵循逻辑与存储分离的原则,将对象存储逻辑的处理、对象元数据存储、对象数据存储相互分离,降低了系统内部的耦合度,提升了系统架构的灵活性。使用基于哈希摘要值的方法来标识对象数据,建立对象到对象数据之间的映射,同时也提供了数据完整性校验机制,提高了存储的可靠性。论文还提供了一种基于文件系统的对象数据存储实现,它通过分区将数据分布到多机集群环境中实现了存储的扩展性,又通过分区的副本提高了服务的可用性。论文设计和实现的系统通过分布式无共享架构实现了系统的扩展性和可靠性,可以部署在企业的私有云/混合云上,不仅控制了成本,还满足了企业对敏感数据自主控制及低时延场景等需求,可作为企业自托管云环境中的对象存储解决方案。