BlueOcean海量存储系统客户端的设计与实现

BlueOcean海量存储系统客户端的设计与实现

论文摘要

随着信息技术的飞速发展,传统的存储系统已经难以满足现代社会的信息存储需求,很多新型应用需要使用大规模、高性能、高可靠的海量存储系统。近年来,学术界和企业界将海量存储系统技术作为研究的一个热点问题,并随之涌现出一批新型的海量存储系统。在海量存储系统中,客户端的设计与实现方式对于系统的性能等有重要影响。BlueOcean是一款大容量、高性能、高可靠、易管理的海量存储系统。它采用面向对象的存储技术,系统由管理节点、数据节点和客户端组成。管理节点负责保存和管理元数据,将元数据保存在内存以提升性能;数据节点负责保存数据,使用多份副本技术保证数据的可靠性;客户端对外提供遵守Posix语义的访问接口,可以支持绝大多数应用程序的透明访问。本文以BlueOcean海量存储系统为基础,研究了海量存储系统客户端设计中的关键技术问题,设计并实现了一款高性能的,通用的客户端程序。论文的主要工作如下:(1)对现有的海量存储系统进行了研究,分析了它们的系统架构和关键技术问题。(2)比较了几种客户端架构方案,设计了系统的总体架构以及通信交互协议等。(3)设计并实现了客户端的系统接口,描述了元数据操作接口和数据操作接口的工作流程,提出使用I/O流水线机制、预取、延迟写等技术提升读写性能。(4)分析了分布式系统中缓存设计的关键问题,设计并实现了客户端缓存机制来提升系统性能。(5)对BlueOcean海量存储系统的性能进行了测试,并且测试了缓存机制对于系统性能的影响。论文设计的客户端程序能够支持绝大多数应用程序对BlueOcean海量存储系统的透明访问,具有较好的元数据操作性能和数据读写性能,本论文的研究成果对于其它的海量存储系统客户端设计也具有较好的借鉴价值。

论文目录

  • 摘要
  • ABSTRACT
  • 目录
  • 图目录
  • 表目录
  • 第一章 绪论
  • 1.1 研究背景与意义
  • 1.1.1 海量存储系统现状
  • 1.1.2 海量存储系统功能需求
  • 1.2 研究内容及目标
  • 1.3 论文结构
  • 第二章 海量存储系统
  • 2.1 基于网络的存储系统介绍
  • 2.1.1 网络文件系统
  • 2.1.2 共享存储(SAN)集群系统
  • 2.1.3 面向对象的分布式存储系统
  • 2.2 典型海量存储系统介绍
  • 2.2.1 PVFS
  • 2.2.2 Lustre
  • 2.2.3 GoogleFS
  • 2.2.4 Panasas
  • 2.3 本章小结
  • 第三章BLUEOCEAN 海量存储系统介绍
  • 3.1 BlueOcean 系统架构
  • 3.2 管理节点
  • 3.2.1 元数据组织方式
  • 3.2.2 元数据持久化
  • 3.2.3 元数据高可用性
  • 3.3 数据节点
  • 3.3.1 数据保存方式
  • 3.3.2 数据高可用性
  • 3.3.3 数据副本一致性
  • 3.4 客户端
  • 3.5 本章小结
  • 第四章BLUEOCEAN 客户端总体架构设计
  • 4.1 客户端常见架构方案分析
  • 4.1.1 常见架构方案的分析
  • 4.1.2 FUSE 架构方案设计
  • 4.2 客户端总体架构设计
  • 4.2.1 用户态FUSE 模块设计
  • 4.2.2 系统接口模块设计
  • 4.2.3 系统缓存模块设计
  • 4.3 客户端通信交互设计
  • 4.3.1 交互协议设计
  • 4.3.2 网络通信设计
  • 4.4 本章小结
  • 第五章 BLUEOCEAN 客户端系统接口设计
  • 5.1 客户端系统接口总体设计
  • 5.2 元数据操作接口设计
  • 5.2.1 查询型元数据操作接口
  • 5.2.2 修改型元数据操作接口
  • 5.3 数据操作接口设计
  • 5.3.1 I/O 流水机制介绍
  • 5.3.2 读操作接口设计
  • 5.3.3 写操作接口设计
  • 5.4 客户端系统接口的程序实现
  • 5.5 本章小结
  • 第六章 BLUEOCEAN 客户端缓存机制设计
  • 6.1 缓存机制的关键问题
  • 6.1.1 缓存一致性问题
  • 6.1.2 缓存的替换策略
  • 6.1.3 缓存的更新策略
  • 6.2 客户端元数据缓存机制
  • 6.2.1 元数据缓存作用
  • 6.2.2 元数据缓存一致性
  • 6.2.3 元数据缓存替换与更新策略
  • 6.3 客户端数据缓存机制
  • 6.3.1 数据缓存作用
  • 6.3.2 数据缓存一致性
  • 6.3.3 数据缓存替换与更新策略
  • 6.4 客户端缓存机制的程序实现
  • 6.5 本章小结
  • 第七章 BLUEOCEAN 客户端性能测试
  • 7.1 测试环境
  • 7.2 顺序读写性能测试
  • 7.2.1 单客户端顺序读写测试
  • 7.2.2 多客户端顺序读写测试
  • 7.3 元数据操作性能测试
  • 7.3.1 单客户端元数据性能测试
  • 7.3.2 多客户端元数据性能测试
  • 7.4 缓存机制效果测试
  • 7.4.1 数据缓存效果测试
  • 7.4.2 元数据缓存效果测试
  • 7.5 本章小结
  • 第八章 总结与展望
  • 8.1 本文总结
  • 8.2 研究展望
  • 参考文献
  • 致谢
  • 攻读硕士学位期间已发表或录用的论文
  • 相关论文文献

    标签:;  ;  ;  ;  

    BlueOcean海量存储系统客户端的设计与实现
    下载Doc文档

    猜你喜欢