基于MongoDB的用户行为数据分布式存储研究与应用

 2022-02-15 10:02

论文总字数:30337字

摘 要

论文的主要工作是针对大数据的高效的存储要求,采用MongoDB自动分片的技术,设计基于MongoDB数据库的存储系统,并与其他大数据软件相结合。最终能把设计的这种存储系统应用到实际的生产环境中。

本文首先阐述了一些与大数据相关的技术,比如hadoop、hbase、hive等,然后研究了NoSQL系统与NoSQL数据库技术,最后在这些基础上实现我们的分布式存储研究及应用。

关键词:大数据、hadoop、MongoDB、生产

Research and Application in Distributed Storage of user behavior data Base on MongoDB

Abstract:In recent decades,data generated by various industries explosive growth with the popularization of the computer and the development of the Internet.The massive growth of data brings great distress to storage and analysis,which is far beyond the traditional technical ability to process information.If we are still using the traditional relational database, we will be unable to control the massive growth of data, traditional relational database has been unable to meet our storage and management needs.So,to seek a more efficient database to solve these problems, it has become a major focus of research data.

The main work is efficient for large data storage requirements, using MongoDB's auto-sharding technology, to design MongoDB database-based storage systems, and combined with other big data software.Finally,we will use the storage system in the actual production environment.

This paper describes the technologies associated with the big data , such as hadoop, hbase, hive, etc., and then to research the system of NoSQL and the technology of NoSQL database, finally achieve our distributed storage research and application based on these foundations.

Key words:Big Data,hadoop,MongoDB,production

目 录

摘要: I

Abstract I

第一章 绪论 1

1.1课题背景 1

1.2研究现状与意义 1

第二章 与大数据相关的技术 3

2.1 hadoop 3

2.2 hive 3

2.3 sqoop 3

2.4 zookeeper 3

第三章 MongoDB数据库 4

3.1什么是NoSQL 4

3.2 NOSQL与传统数据库比较优势 4

3.3 几种NOSQL数据库比较 5

3.4 选择MongoDB原因 7

第四章 MongoDB分布式存储实现 8

4.1 MongoDB分片原理 8

4.1.1分片概念 8

4.1.2分片中各个角色及其作用 8

4.2 环境及平台搭建 9

4.2.1公司现有环境 9

4.2.2设计MongoDB分布式存储环境框架 10

4.3 分布式存储部署 11

4.4 分布式存储测试及分析 16

4.4.1 负载均衡、性能优化问题 16

4.4.2结果及分析 19

结论 23

致谢 23

参考文献 24

第一章 绪论

1.1课题背景

在如今被科技驱动的世界,计算机的性能大大被提高、电子机械设备也越来越普及、我们访问互联网也变得越来越容易,而且用户能够收集和传送的数据比以往任何时期都多,我们如今生活在一个“大数据”时代。

并且一些组织还在以惊人的速度产生数据。据一些研究报告称,仅仅Facebook每天都会产生大概250TB的数据。按照汤姆森路透新闻分析部门的有关报道,数字化数据的产出已经翻了一倍以上,从2009年的大约一百万PB(约10亿TB)到2015年预计的7.9ZB(1ZB等于100万PB),以及到2020年的大概35ZB。甚至于,其他的研究组织给出了更高的估计。在如今,知识等于力量,但关键是随着大量数据的持续收集,传统的关系型数据库已经不能有效的存储及分析这些信息了。其后果是许多机构和组织已经被数据所埋没,上述组织没能够有效地利用他们所获得的数据,并且没能够快速的理清数据中的蕴含的机遇,所以也没办法理解数据所表现出的威力。正如Alistair Ctroll所说:“拥有着海量的数据但是没有海量的思路的企业将被刚刚创建的、只拥有少量数据但拥有着广阔的思路的企业所替代。”简而言之,Croll 所说的中心意思是,除非公司理解并掌握自己所拥有的数据,否则无法同能够做到这一点的公司进行竞争。

众多组织与机构已经开始存储与研究大量数据,他们开始认识到分析大量数据的好处,但他们也被大量数据的一些问题烦恼。这是个全新的挑战。怎样才能高效的存储规模如此庞大的数据?怎样才能有效的处理这些数据?怎样才能高效的分析这些数据?已知数据会一直增加,怎样才能建立一个与它匹配的解决方式?这些问题成为当前大数据研究的热点。

1.2研究现状与意义

数据的爆炸把人类带入了一个大数据的时期。大数据的时期的来临,引发了政府部门、学术界等对大数据的热情[1]。Science 和 Nature 等国际学术刊物相继出版相应刊物来探讨大数据。近几年 Nature 推出了“Big Data”专刊,从网络的经济、互联网技术、环境科学等多方面介绍了大数据带来的机遇与挑战;并且 Science 也出版了有关大数据的专刊“Dealing With Data”,探讨了由大数据带来的机遇挑战[2]。同时,各国政府部门同样高度关注着大数据,例如:2012年,美国公布“大数据研发计划”;欧盟过去几年对科学基础设施投资了将近1亿欧元,并且将数据信息化基础建设作为Horizon 2020年计划的优先项目之一等等。

然而随着大数据规模的不断扩张,能源价格的持续上涨,同时数据存储规模的不断扩大,高耗能已经成为一个大数据发展的主要瓶颈。要达到低能耗、低成本、高可靠性的目标,通常要用到分布式、冗余配置和云计算技术,并且在存储时按照一定的规则对数据进行分类,通过过滤、去重来减少存储量,同时应该建立索引来方便查询操作。在大数据配置平台中,能耗大部分由两部分主成:软件能耗和硬件能耗,而且两者之中又以硬件能耗为主。据《纽约时报》2012年的调查显示,Google 数据中心的年电功率大概在13亿W左右,而Facebook 则达到了6000 W左右。然而最令人惊叹的是在这些巨大的能耗当中,实际上只有约6%到12%的能量是真正用来响应用户的一些查询请求的,绝大部分是用来保持服务器处于正常待机的状态,以应对那些突如其来的用户查询高峰期。从已有的研究成果看,可以考虑从以下两个方面来改善数据能耗问题:

剩余内容已隐藏,请支付后下载全文,论文总字数:30337字

您需要先支付 80元 才能查看全部内容!立即支付

该课题毕业论文、开题报告、外文翻译、程序设计、图纸设计等资料可联系客服协助查找;