1.      大数据现象是怎样形成的?

(1)      数据产生方式的改变

(2)      人类的活动越来越依赖数据

(3)      各行各业也越来越依赖大数据手段来开展工作

当数据量、数据的复杂程度、数据处理的任务要求等超出了传统数据存储与计算能力时,称之为“大数据(现象)”。

大数据(Big
Data)又称为巨量资料,指需要新处理模式才能具有更强的决策力、洞察力和流程优化能力的海量、高增长率和多样化的信息资产。“大数据”概念最早由维克托·迈尔·舍恩伯格和肯尼斯·库克耶在编写《大数据时代》中提出,指不用随机分析法(抽样调查)的捷径,而是采用所有数据进行分析处理。
大数据有4V特点,即Volume(大量)、Velocity(高速)、Variety(多样)、Value(价值)。

2.      新摩尔定律的含义是什么

每18个月全球新增信息量是计算机有史以来全部信息量的总和。

3.      云计算有哪些特点

(1) 超大规模

  “云”具有相当的规模,Google云计算已经拥有100多万台服务器,
Amazon、IBM、微软、Yahoo等的“云”均拥有几十万台服务器。企业私有云一般拥有数百上千台服务器。“云”能赋予用户前所未有的计算能力。

  (2) 虚拟化


  云计算支持用户在任意位置、使用各种终端获取应用服务。所请求的资源来自“云”,而不是固定的有形的实体。应用在“云”中某处运行,但实际上用户无需了解、也不用担心应用运行的具体位置。只需要一台笔记本或者一个手机,就可以通过网络服务来实现我们需要的一切,甚至包括超级计算这样的任务。

 (3) 高可靠性

  “云”使用了数据多副本容错、计算节点同构可互换等措施来保障服务的高可靠性,使用云计算比使用本地计算机可靠。

  (4) 通用性

  云计算不针对特定的应用,在“云”的支撑下可以构造出千变万化的应用,同一个“云”可以同时支撑不同的应用运行。

  (5) 高可扩展性

  “云”的规模可以动态伸缩,满足应用和用户规模增长的需要。

  (6) 按需服务

  “云”是一个庞大的资源池,你按需购买;云可以像自来水,电,煤气那样计费。

  (7) 极其廉价


  由于“云”的特殊容错措施可以采用极其廉价的节点来构成云,“云”的自动化集中式管理使大量企业无需负担日益高昂的数据中心管理成本,“云”的通用性使资源的利用率较之传统系统大幅提升,因此用户可以充分享受“云”的低成本优势,经常只要花费几百美元、几天时间就能完成以前需要数万美元、数月时间才能完成的任务。

  云计算可以彻底改变人们未来的生活,但同时也要重视环境问题,这样才能真正为人类进步做贡献,而不是简单的技术提升。

  (8) 潜在的危险性


  云计算服务除了提供计算服务外,还必然提供了存储服务。但是云计算服务当前垄断在私人机构(企业)手中,而他们仅仅能够提供商业信用。对于政府机构、商业机构(特别像银行这样持有敏感数据的商业机构)对于选择云计算服务应保持足够的警惕。一旦商业用户大规模使用私人机构提供的云计算服务,无论其技术优势有多强,都不可避免地让这些私人机构以“数据(信息)”的重要性挟制整个社会。对于信息社会而言,“信息”是至关重要的。另一方面,云计算中的数据对于数据所有者以外的其他用户云计算用户是保密的,但是对于提供云计算的商业机构而言确实毫无秘密可言。所有这些潜在的危险,是商业机构和政府机构选择云计算服务、特别是国外机构提供的云计算服务时,不得不考虑的一个重要的前提。

4.      云计算按照服务类型可以分为哪几类

三类:将基础设施作为服务(IasS)、将平台作为云服务(PaaS)、将软件作为服务(SaaS)

5.      云计算技术体系结构可以分为哪几层

云计算技术体系结构分为四层:物理资源层、资源池层、管理中间件层和SOA(service-oriented architecture,面向服务的体系结构)构建层

6.      简述Hadoop1.0与Hadoop2.0的优缺点,并比较二者区别与联系

一、从Hadoop整体框架来说

 

        Hadoop1.0即第一代Hadoop,由分布式存储系统HDFS和分布式计算框架MapReduce组成
,其中HDFS由一个NameNode和多个DateNode组成,MapReduce由一个JobTracker和多个TaskTracker组成。

 

        Hadoop2.0即第二代Hadoop为克服Hadoop1.0中的不足:针对Hadoop1.0单NameNode制约HDFS的扩展性问题,提出
HDFSFederation,它让多个NameNode分管不同的目录进而实现访问隔离和横向扩展,同时彻底解决了NameNode单点故障问题
;针对Hadoop1.0中的MapReduce在扩展性和多框架支持等方面的不足,它将JobTracker中的资源管理和作业控制分开,分别由ResourceManager(负责所有应用程序的资源分配)和ApplicationMaster(负责管理一个应用程序)实现,即引入了资源管理框架Yarn。同时Yarn作为Hadoop2.0中的资源管理系统,它是一个通用的资源管理模块,可为各类应用程序进行资源管理和调度,不仅限于MapReduce一种框架,也可以为其他框架使用,如Tez、Spark、Storm等

 

 

 

二、从MapReduce计算框架来讲

 

        MapReduce1.0计算框架主要由三部分组成:编程模型、数据处理引擎和运行时环境。
它的基本编程模型是将问题抽象成Map和Reduce两个阶段,其中Map阶段将输入的数据解析成key/value,迭代调用map()函数处理后,再以key/value的形式输出到本地目录,Reduce阶段将key相同的value进行规约处理,并将最终结果写到HDFS上;它的数据处理引擎由MapTask和ReduceTask组成,分别负责Map阶段逻辑和Reduce阶段的逻辑处理;它的运行时环境由一个JobTracker和若干个TaskTracker两类服务组成,其中JobTracker负责资源管理和所有作业的控制,TaskTracker负责接收来自JobTracker的命令并执行它。

 

        MapReducer2.0具有与MRv1相同的编程模型和数据处理引擎,唯一不同的是运行时环境。
MRv2是在MRv1基础上经加工之后,运行于资源管理框架Yarn之上的计算框架MapReduce。它的运行时环境不再由JobTracker和TaskTracker等服务组成,而是变为通用资源管理系统Yarn和作业控制进程ApplicationMaster,其中Yarn负责资源管理的调度而ApplicationMaster负责作业的管理。

7.      简述解压包方式部署Hadoop的弊端

繁琐易错

8.      试着从架构上分析Hadoop的优缺点

一、HDFS缺点:

1、不能做到低延迟
:由于hadoop针对高数据吞吐量做了优化,牺牲了获取数据的延迟,所以对于低延迟数据访问,不适合hadoop,对于低延迟的访问需求,HBase是更好的选择,

 

2、不适合大量的小文件存储
:由于namenode将文件系统的元数据存储在内存中,因此该文件系统所能存储的文件总数受限于namenode的内存容量,根据经验,每个文件、目录和数据块的存储信息大约占150字节。

 

3、不适合多用户写入文件,修改文件:Hadoop2.0虽然支持文件的追加功能,但是还是不建议对HDFS上的 文件进行修改,因为效率低。

 

4、对于上传到HDFS上的文件,不支持修改文件,HDFS适合一次写入,多次读取的场景。

 

5、HDFS不支持多用户同时执行写操作,即同一时间,只能有一个用户执行写操作。

 

二、HDFS优点:

 

1、高可靠性。Hadoop按位存储和处理数据的能力值得人们信赖。

 

2、高扩展性。Hadoop是在可用的计算机集簇间分配数据并完成计算任务的,这些集簇可以方便地扩展到数以千计的节点中。

 

3、高效性。Hadoop能够在节点之间动态地移动数据,并保证各个节点的动态平衡,因此处理速度非常快。

 

4、高容错性。Hadoop能够自动保存数据的多个副本,并且能够自动将失败的任务重新分配。

 

5、低成本。与一体机、商用数据仓库以及QlikView、Yonghong Z-Suite等数据集市相比,hadoop是开源的,项目的软件成本因此会大大降低。

 

6、Hadoop带有用Java语言编写的框架,因此运行在 Linux 生产平台上是非常理想的。Hadoop 上的应用程序也可以使用其他语言编写,比如 C++。

9.虚拟化技术在云计算中的哪些地方发挥了关键作用

云计算中运用虚拟化技术主要体现在对数据中心的虚拟化,它有四个表现方式,分别是服务器虚拟化,存储虚拟化,网络虚拟化和桌面虚拟化。

10.比较VMware、xen等虚拟化产品的关键技术,以及云计算技术提供的支持

Xen为了让内存可以被不同的虚拟机共享,它在虚拟内存(也称虚拟地址)到机器内存(也称物理地址)之间引入了一层中间地址,guest OS
看到的是这层中间地址,不是机器的实际地址,因此guest
OS感觉自己的物理地址从0开始的、“连续”的地址。实际上,xen将这层中间地址真正地映射到机器地址上却可以是不连续的,这样保证了所有的物理内存可以任意分配给不同的guest
OS。


VMware提供了云基础架构及管理、云应用平台和终端用户计算等多个层次上的解决方案,主要支持企业级组织机构利用服务器虚拟化技术,实现从目前的数据中心向云计算环境转变。

VMware的网络虚拟化技术主要通过VMware vsphere
中的vnetwork网络元素实现的,通过这些元素,部署在数据中心物理主机上的虚拟机可以像物理环境一样进行网络互连。

11.服务器虚拟化、存储虚拟化和网络虚拟化都有哪些实现方式

服务器虚拟化分为寄居虚拟化和裸机虚拟化            实现:1.CPU虚拟化   2.内存虚拟化  3.I/O设备虚拟化

存储虚拟化:基于主机的存储虚拟化、基于存储设备的存储虚拟化、基于网络的存储虚拟化

数据中心网络虚拟化分为核心层、接入层和虚拟机网络虚拟化三个方面


 异构存储介质的互联和统一管理。存储虚拟化的核心任务是兼容多种属性的存储设备,屏蔽它们间不同的物理特性并向用户提供统一的虚拟逻辑设备访问方式,由网络连接的各种物理存储设备以虚拟卷的形式向用户呈现,而用户关注的是存储容量和数据安全策略,而存储容量的物理分配则对用户透明的,存储虚拟化管理系统及其所兼容的协议屏蔽了连接到存储网络中的各类设备的差异性,简化了逻辑存储设备的管理、配置和分配,并向用户提供在线划分、扩展、配置存储和在线增加与更替存储设备的虚拟化存储管理技术。

 


  数据的共享冲突与一致性。数据共享是存储虚拟化的主要功能之一,基于网络的虚拟存储对数据共享访问提出了很高的要求,存放在不同物理存储器中的数据拷贝为操作系统间及操作系统和数据仓库问的数据共享带来便利,但同时必须仔细设计锁机制算法、备份分发算法以及缓存一致性技术来保证数据的完整性。

 


  数据的透明存储和容错容灾策略。数据的透明访问需要虚拟存储屏蔽存储设备的物理差异性,由系统按照资源的特性及用户的需求自动调度和利用存储资源,便于用户在逻辑卷的基础上对数据进行复制、镜像、备份以及实现虚拟设备级的数据快照等功能。

 


  虚拟存储系统必需按照数据的安全级别建立容错和容灾机制,以克服系统的误操作、单点失效、意外灾难等因素造成的数据损失。系统必需对用户透明地的实现多种机制下的数据备份、数据系统容错和灾难预警及自动恢复等策略。

 


  性能优化和负载均衡。存储系统应该从全局的观点并根据不同存储设备的特性来优化存储系统,应该根据不同存储的存储响应时问、吞吐率和存储容量来安排多级存储体系结构,实现数据的多级高速缓存和数据预取功能。

 


  根据用户的需求安排不同的存储策略实现对数据的按需存取,仔细设计I/O均衡策略,根据具体的物理设备合理分配用户的I/O请求,使用条带化方法、数据分块、时空负载区分、数据主动存取和数据的过预取策略来提高数据的访问效率,为了进一步提高访问效率,也可以采用基于存储对象的存储主动服务策略来提高数据的主动预测服务。

 


  数据的安全访问策略。基于网络的存储必需对访问加以控制,数据被越权访问和恶意攻击是虚拟存储系统必需要避免的,透明的存储服务所带来的数据安全性必需由虚拟化管理软件来实现,其实现安全访问的策略是多样的,如基于密钥的认证管理及数据加密策略,以及在存储体之上增加一层可信的管理层节点等都是可行的方法。

 

  高可靠性和可扩展性。高可靠和可扩展性是虚拟存储系统必需具备的特性,系统应该采用高效的故障预测、故障检测、故障隔离和故障恢复技术来保证系统的高可靠性。

 


  虚拟存储系统应该在不中断正常存储服务的前提下实现对存储容量和存储服务进行任意扩展,透明的添加和更替存储设备,虚拟存储系统还应该具有自动发现、安装、检测和管理不同类型存储设备的能力。

12.OpenStack是什么

OpenStack是一个管理计算、存储和网络资源的数据中心云计算开放平台

OpenStack是一个由NASA(美国国家航空航天局)和Rackspace合作研发并发起的,以Apache许可证授权的自由软件和开放源代码项目。


OpenStack是一个开源的云计算管理平台项目,由几个主要的组件组合起来完成具体工作。OpenStack支持几乎所有类型的云环境,项目目标是提供实施简单、可大规模扩展、丰富、标准统一的云计算管理平台。OpenStack通过各种互补的服务提供了基础设施即服务(IaaS)的解决方案,每个服务提供API以进行集成。

13.总结OpenStack的主要组件及其功能

OpenStack有三个主要的服务成员:计算服务(Nova)、存储服务(swift)、镜像服务(Glance)

计算服务Nova:Nova是OpenStack云计算架构的控制器,支持OpenStack云内的实例的生命周期的所有活动由Nova处理。

对象存储服务swift:swift提供的对象存储服务,允许对文件进行存储或者检索。

镜像服务glance:它提供了一个虚拟磁盘镜像的目录和存储仓库,可以提供对虚拟机镜像的存储和检索。

Nova


这个是最核心的,Nova最开始的时候,可以说是一套虚拟化管理程序,还可以管理网络和存储。不过从Essex版本后,Nova开始做减法,和网络相关的内容,包括安全组,交给Quantum负责,存储相关的交给Cinder负责。调度有关的内容,会交给新的项目Marconi。

 

以前还有一个nova common,这其实是各个组件都使用相同的东西,现在也专门成立一个项目:oslo,已经是核心项目。

 


未来Nova对各种Hyperv的支持是有差异的,KVM和XEN,基本是最好的。微软的Hyper-V算是很不错,微软投入再研发。刚才朋友还专门提到一点:就是未来计算节点,不直接查询数据库,而是通过rpc的方式,据说这是一大进步。

 

Nova的稳定性,其实取决于libvirt,qemu,希望未来可以能更加稳定。功能现在其实已经不是大问题。

 

keystone

这是提供身份认证和授权的组件。任何系统,身份认证和授权,其实都比较复杂。尤其Openstack 那么庞大的项目,每个组件都需要使用统一认证和授权。

 

目前keystone
要做的东西其实还是很多。没法基于角色的授权,web管理用户等。当然你如果希望实现使用动态令牌认证,多因素认证,LDAP集成,这都是未来版本需要实现的功能,这些功能都已经在计划中。

 

目前好像要实现keystone的高可用,还是比较困难,这个就让社区慢慢解决吧。大规模部署,这也会是瓶颈。

 

Glance

这是镜像管理。功能其实相对比较简单。不过Glance后端的存储的支持,其实一直到Folsom的版本,Glance对swift的支持,才算是比较完善。

 

目前Glance的镜像存储,支持本地存储,NFS,swift,sheepdog和Ceph,基本是够用了。

 

目前Glance的最大需求就是多个数据中心的镜像管理,如何复制,不过这个功能已经基本实现。还有就是租户私有的image管理,这些目前功能都已经实现。

 

个人感觉:Glance后续基本就是一个bug修复,稳定的阶段。

 

Quantum


这是网络管理的组件,也是重头戏,Openstack的未来,基本都要靠quantum。上面介绍nova的时候,说过网络相关的内容,都会交给Quantum。不过Quantum的开发进度不是太如人意。Flosom规划实现功能,到Grizzly才实现。未来nova
network的代码清理,估计到H版本都不见得可以实现。

 

Quantum 后端可以是商业产品或者开源。开源产品支持Openvswitch,和linux
bridge。网络设备厂商都在积极参与,让他们的产品支持Quantum,目前思科,锐捷已经实现支持。

 

比较悲观的估计:quantum要完全满足生产的需求,例如带宽限制,mutilhost等功能,很可能需要等到2014年的I版本,真的考验耐心。

 

如果你关注Quantum的话,就会发现目前还是在起步阶段,无论是bug还是功能,都是非常多。

 

Cinder

这是存储管理的组件。一直以来,很多人都很纠结AWS的EBS的实现。Openstack也终于推出了自己的存储管理组件。

 


Cinder存储管理主要是指虚拟机的存储管理。目前支持开源和商业化产品。开源的sheepdog,Ceph等。商业存储的支持,目前IBM是最积极的。未来如果商业存储厂商都支持Cinder,对Openstack的商业化还是非常有利的。

 


对于企业来说,使用分布式作为虚拟机的存储,并不能真正节省成本,维护一套分布式存储,成本还是很高的。目前虚拟机的各种高可用,备份的问题,其实都可以把问题交给商业存储厂商来解决。

 

Lbaas


这是实现负载均衡的项目。现在linode,Rackspace,都提供了负载均衡的服务,有了这个服务,你才有可能实现所谓的弹性扩展。这个组件是Mirantis公司和思科合作开发的。目前这个项目集成在Quantum里,不过基本算是一个独立的组件。

 

Lbaas后端可以是各种商业产品和开源产品。F5,Ngnix,Haproxy,LVS

 

为了发布的Grizzly,你应该有机会在Dashboard里设置虚拟机的负载均衡。

 

Horizon

严格意义来说,Horizon不会为Openstack
增加一个功能,他更多的是一个演示,demo。不过对于很多用户来说,了解Openstack基本都是从Horizon,dashboard开始。从这个角度来看,他在Openstack各个项目里,显得非常重要。

 

Horizon的开发者,应该是最累的。需要和各个项目打角度。每个项目的功能很多都是需要通过Dashboard来展现。

 

大家需要注意的是:Horizon只是使用了Openstack部分API功能,很多功能,你可以根据你的需求去实现。

 

Swift


这是对象存储的组件。对于大部分用户来说,swift不是必须的。你只有存储数量到一定级别,而且是非结构化数据才有这样的需求。很多人都问一个相同的问题:是否可以把虚拟机的存储放在swift上。简单回答:不行。你需要搞明白对象存储是干啥,擅长那些地方,那些是不行的。

 


swift是Openstack所有组件了最成熟的,可以在线升级版本,各种版本可以混合在一起,也就是说,1.75版本的swift可以和1.48的在一个群集里.这个是很难得的.

 

oslo

这个项目其实就是把所有组件需要用到相同的东西,集中起来,以前叫nova
common,估计感觉不贴切,现在单独成立一个项目。日后大家开发新的组件,估计都需要用到oslo。

 

Ceilometer

这是实现监控和计量的组件。这应该算是Grizzly的孵化项目。对他的了解其实很少。在Grizzly版本里,你应该可以在Dashboard里看到这个组件。

 


监控和计费一直是一个难题,尤其用户希望知道cpu和内存的使用情况。看看他如何解决这个问题。到时候看看同事如何调用api来解决监控和计量的问题。解决计量,计费就简单的。

 

http://wiki.openstack.org/Ceilometer

 

Heat


这个项目是要解决虚拟机的软件部署的问题。你的虚拟机创建好,os准备好,你还需要做很多配置才能使用,如何能实现把所有繁琐的操作简化呢?亚马逊上有一个专门的工具:AWS
cloudformation。目前Openstack上,希望通过Heat来实现类似的功能。

 

关于这个项目,还是有很多争议。不过这个项目是Redhat发起。他们的功力是不容置疑,等Openstack成熟后,这个项目的重要性就会体现出来。

 

 

真的要实现弹性扩展,自动部署,都是需要指望这个。目前Heat已经成为孵化项目

 

下面的项目,基本都还是在讨论阶段,不过成为孵化项目的可能性很大。

 

Moniker

这是实现dns功能的组件。其实如果你用过AWS,你就知道这个功能是必不可少。新浪目前的已经加上了这个功能,每个虚拟机,都会自动有一个dns记录。

 

估计集成到Dashboard里,还是需要等待一段时间啊。目前该项目开发还是非常积极。

 

marconi

此项目用于解决openstack 消息队列的扩展问题。据说这是Rackspce推出的项目,就是为了解决他们生产中遇到消息队列的问题。

14.云计算数据中心配电系统节能的原理是什么

目前常见的云计算数据中心节能策略和算法可以从功率管理和降低能耗两个角度进行分类。从功率管理来看,主要可以分为动态功率管理(dynamic power
management,dpm)技术和静态功率管理(static power management,spm)技术;按照降低能耗阶段简单不同,可以分为关闭/
开启技术(resource hibernation)、动态电压/频率调整(dynamic voltage&frequencyscaling,dvfs
)技术以及虚拟机技术三类。

 

15.集装箱数据中心有哪些优点?常见的节能措施有哪些

优点:

(1)高密度

(2)模块化

(3)按需快速部署

(4)移动便携

(5)Free Cooling功能

常见的节能措施:

从配电系统,空调系统,管理系统的节能策略和算法以及新能源应用等方面来采取节能措施。

16.比较Hadoop与spark的异同,以及docker与OpenStack的异同

hadoop和spark的异同

hadoop是分布式数据存储技术;spark是大数据分析技术,数据分析的基础是有海量的数据存储。因此hadoop是spark分析的数据来源。

Docker与OpenStack比较

Docker:可以理解为集装箱,将各种货物标准并且互不影响,这些货物就是轻量级的虚拟机

 

Openstack:整合服务器,自由的在这些服务器上创建管理虚拟机



17.Google云计算系统容错机制包括什么?

(1)Master容错

具体来说,Master上保存了GFS文件系统的三种元数据

1.命名空间(Name Space),也就是整个文件系统的目录结构。

2.Chunk与文件名的映射表

3.Chunk副本的位置信息,每一个Chunk默认有三个副本。

(2)Chunk Server 容错

GFS采用副本的方式实现Chunk Server的容错。每一个Chunk有多个存储副本(默认为三个),分布存储在不同的Chunk Server上。

18. Google云计算系统的管理有哪些技术?

(1)大规模集群安装技术

(2)故障检测技术

(3)节点动态加入技术

(4)节能技术

19.GFS系统构架是如何构成的,有什么特点?

(1)GFS将整个系统的节点分为三类角色:client(客户端)、master(主服务器)和Chunk Server(数据块服务器)

(2)特点:1.采用中心服务器模式

           2.不缓存数据

           3.在用户态下实现

           4.只提供专用接口

 

友情链接
KaDraw流程图
API参考文档
OK工具箱
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:ixiaoyang8@qq.com
QQ群:637538335
关注微信