论文部分内容阅读
近年来,社会化网络服务在国内开始兴起。微博从一个新兴的社会化网络平台的概念,逐步走近用户,被越来越多的用户接纳并使用,这个容量只有140个字,通过手机或电脑随时随地阅读、更新、联络的服务不断在改写着信息传播的历史。伴随而来的是网站对数据库高并发读写的需求,对海量数据的高效率存储和访问的需求以及对数据库的高可扩展性和高可用性的需求都在日益增加。目前主流微博主要使用的是Mysql数据库的分布式实践来提供数据支持。但是目前来看,仍有几个问题没有很好的解决就是如何实现系统易于扩展、低延迟、高可用和异地分布、可监控以及去中心化。本文旨在通过构建基于Hadoop的海量数据微博系统来解决这几个问题。Hadoop框架的底层实现部分HDFS分布式文件系统,具有高容错性、高传输率等特点,访问文件系统中的数据可以以流的形式,从而解决安全性问题和访问速度,实现海量数据的存储管理。建立在HDFS之上的HBase,提供高性能、高可靠性、可伸缩、列存储、实时读写的数据库系统。MapReduce是一种编程模型,用于大规模数据集的并行运算。Hadoop上的HDFS、MapReduce和HBase可以说是Hadoop的三剑客,它们之间相辅相成、各有长处。本文首先以Hadoop的相关技术作为理论基础,这些理论对系统的分析与设计有重要的指导意义。然后对系统进行了详细的需求分析:用户分析,系统功能分析,业务流程分析和非功能需求的分析。在需求分析的基础上,针对微博系统的特点,进行了系统的逻辑架构设计,系统技术架构设计,功能模块设计,处理流程设计,数据库设计和系统运行环境的设计。经过细致的分析与设计,依次实现系统的用户模块,用户关系模块,内容发布模块,内容搜索模块和后台管理模块。之后是系统的部署和测试。最后在以上实践的基础上对工作提出总结,以及对今后工作的展望,希望以此作为一个开始,未来云存储系统能有广阔的发展空间。