- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
大数据和云计算 是什么关系? 大数据的核心技术 有哪些? 给定一个巨大的文本(如1TB),如何计算单词出现的数目? 使用MapReduce求解该问题 定义Map和Reduce函数 使用MapReduce求解该问题 Step 1: 自动对文本进行分割,形成初始的key,value对 使用MapReduce求解该问题 Step 2:在分割之后的每一对key,value进行用户定义的Map进行处理,再生成新的key,value对 使用MapReduce求解该问题 Step 3:对输出的结果集归拢、排序(系统自动完成) 使用MapReduce求解该问题 Step 4:通过Reduce操作生成最后结果 什么是NoSQL? NoSQL的主要特征是什么? MongoDB有什么作用? NoSQL是Not Only SQL的缩写,而不是Not SQL,它不一定遵循传统数据库的一些基本要求,如SQL标准、ACID属性、表结构等。 相比传统数据库,叫它分布式数据管理系统更贴切,数据存储被简化更灵活,重点被放在了分布式数据管理上。 关系数据库的表结构(学生、地址、成绩、科目): Students addressid name studentid Address addressid address city state postalcode Scores scoreid studentid courseid grade Courses courseid name NoSQL的表结构(学生、地址、成绩、科目): Students _id : 007 name : Jane address : address : 123 Main St. city : New York state : NY postalcode : 10014 scores : Biolgy : 4.0 English : 3.0 大数据的特征 Volume - 数据量巨大,对TB、PB数据级的处理,已经成为基本要求。 Variety - 数据多样性,能处理结构化、非结构化数据,能处理Web数据,甚至语音、图像、视频数据。 Velocity - 数据实时性,在客户每次浏览页面,下订单的过程中,都会对用户进行实时的产品推荐,购买决策已经变得非常实时。 大数据的性能要求 High performance - 高并发读写,高并发、实时动态数据查询和修改。 Huge Storage - 海量数据的高效存储和访问,类似SNS网站,海量用户信息的高效、实时存储和查询。 High Scalability High Availability - 高可扩展性和高可用性,需要拥有快速横向扩展能力、提供7*24小时不间断服务。 关系数据库处理大数据的弱势 面对高并发读写的需求,数据库读写压力巨大,硬盘IO无法承受。 面对海量数据,数据库能存储的记录数量有限,SQL查询效率极低。 横向扩展艰难,无法通过快速增加服务器节点实现,系统升级和维护造成服务不可用。 NoSQL处理大数据的优势 数据库结构简单,数据间无关系性,这自然就带来了很高的读写性能,且易扩展。 灵活的数据模型,可以随时存储自定义的数据格式。而在关系数据库里,增删字段是件麻烦的事。尤其大数据量的表,增加字段简直就是一个噩梦。 通过复制模型可实现高可用性,可以分布部署在低廉的PC集群上。 支持动态增加、删除服务器节点,随时控制硬件投入成本。 key-value存储 列式存储 文档型存储 图结构存储 一个分布式文件存储数据库。 功能最丰富、最像关系数据库的产品。 数据结构采用JSON格式,因此可以存储比较复杂的数据模型。 查询语言强大,支持索引、MapReduce等功能。 面向文档,以K/V形式存储数据。 支持主/从服务器间的数据复制和故障恢复。 支持自动分片。 Primary Secondary-1 Secondary-2 Replica Sets架构 Primary服务器:将数据同步到多个 Secondary 上。 Secondary服务器:热机备份主服务器上的数据,分担主机读压力,当主机发生故障不能工作,随时接管主机工作。 Sharding是什么? 分片是指将数据拆分,将其分散到不同服务器上的过程。 通过分片能够增加更多的服务器,来应对不断增加的负载和数据。 MongoDB何时需要分片? 机器的磁盘不够用。 单个mongod服务已经不能满足写数据的性能需求。 Replica Sets + Sharding
文档评论(0)