OpenStack环境中运行大数据系统的四大存储问题
原创2018-07-05 10:48:57目前,OpenStack 私有云应用在经过了长时间的技术累积和市场培养之后,产品的成熟度和客户的认可度都已迈入成熟。虽然基于OpenStack的云环境部署量越来越多,但是很多OpenStack云环境并不提供大数据服务。
【51CTO.com原创稿件】目前,OpenStack 私有云应用在经过了长时间的技术累积和市场培养之后,产品的成熟度和客户的认可度都已迈入成熟。虽然基于OpenStack的云环境部署量越来越多,但是很多OpenStack云环境并不提供大数据服务,比如类似AWS的Elastic MapReduce,再比如面向大数据的SQL,支持OLAP等等。与此同时,随着用户业务逐步实现了云迁移,在云上部署大数据系统的需求已经日益常见和迫切。
2018年5月18-19日,由51CTO主办的全球软件与运维技术峰会在北京召开。在第二日上午举行的“OpenStack创新实战”分论坛中,OStorage (奥思数据)创始人兼CTO李明宇为大家带来题为《在OpenStack云上运行大数据系统:问题、方法与实践》的精彩演讲,针对如何在OpenStack云环境上运行大数据系统,在实际运行过程中常见的问题,以及如何利用对象存储解决这些问题展开了阐述。会后,51CTO记者根据李明宇在WOT2018全球软件与运维技术峰会的演讲内容进行了整理。
在OpenStack环境上运行大数据系统的两种方法
李明宇之前在中科院软件所工作,除了科学研究外,他着重解决实际工程问题,带领团队承担分布式和云计算系统的相关研发工作。离开中科院后,李明宇一直致力于OpenStack等云计算和大数据相关开源技术的研究和传播,为企业提供咨询、评测等技术服务。
他演讲中谈到,OpenStack是一个大体系里包含很多的小的开源项目,其中有六个核心项目人们最为熟知:管理虚机的Nova、管理网络的Neutron、云硬盘的Cinder、认证的Keystone以及镜像和模板管理的Glance、Swift对象存储。
李明宇表示,在OpenStack环境上运行大数据系统有两种方法:***种方法是基于OpenStack服务组件Sahara实现。他通过现场演示DEMO的方式,让大家看到如何使用Sahara。Sahara实际上就是OpenStack专门为运行Hadoop来打造的一个项目。如果用户使用的OpenStack云环境没有部署Sahara怎么办?这时可以采用第二种方法,第二种是通过Heat和Hadoop社区的部署工具实现,用户直接管理Hadoop/大数据系统节点。OpenStack云平台上的除了依赖OpenStack Sahara外,还可以在裸机上安装Hadoop。

那么,这两种方法孰优孰劣呢?李明宇分析道,Sahara是云计算厂商视角,使用Sahara的好处在于服务商基于此提供大数据服务,用户使用更方便,总体来说还算稳定。但Sahara其实并不是那么***,服务种类受限,灵活性不高。而不使用Sahara直接管理的好处在于从用户视角出发,灵活性好,用户可控,但是劣势在于需要由用户管理大数据集群,并且难以感知云基础设施底层特性。“用户可以根据自己的需求,选择最适合自己的方法。”
四大存储问题
目前,OpenStack已被很多单位使用,在使用的过程中也会提出很多问题。而在OpenStack云上运行大数据系统最容易遇到的问题就是存储的问题。
李明宇表示,在存储方面***个面临的问题,就是块存储的冗余问题,虚机块存储/Volume底层冗余与HDFS本身的冗余。如果虚拟底层是采用Ceph支持虚机块存储,实际上虚机的块设备/Volume在Ceph上有三个副本,HDFS上又有三个副本,从而造成块存储的过度冗余。
第二个问题是数据移动开销比计算任务的移动开销大。Hadoop集群并不是时刻都承载相同的负载压力,我们希望在虚拟化环境中,Hadoop集群能够具有弹性。从5个节点扩展到10个节点,再扩展到50个节点,再缩到5个节点,如果数据存储在这些节点的HDFS中,那么这时需要重新平衡数据,数据移动开销较大,需要时间、耗费网络和I/O资源。
第三个问题,很多数据处理/分析任务是临时性的。为了实现在使用Hadoop集群或者利用大数据处理集群时,创建一个集群运行数据分析或者数据仓库,完成作业之后这个集群就可以销毁。但是使用HDFS,是无法销毁存有数据的虚机的,并且还会带来额外开销。相比这些开销,网络的开销在降低,整体网络成本在降低。针对上面这些问题,如果不再使用HDFS,可以用对象存储替换。也就是在云环境里运行大数据系统时,虚机只是进行计算,而数据放到对象存储。
第四个问题是跨多个地域的系统构建存储集群。这个问题可以通过OpenStack Swift对象存储来解决,OpenStack Swift可支持跨多个数据中心、多个地域构建存储集群,这就给用户构建跨数据中心的大数据系统带来了便利,用户在提交数据处理作业时,不用关心数据到底是存放在哪个数据中心,而且可以一批任务处理多个数据中心的数据,甚至多个地域的数据。
以上内容是51CTO记者根据OStorage (奥思数据)创始人兼CTO李明宇在WOT2018全球软件与运维技术峰会的采访内容整理,更多关于WOT的内容请关注IDC.Net。
海啸的有关知识,最好有数据分析,关于怎样强度的海啸波会造成灾害,还有浪高度和波长度等
海啸图片集萃(20张)水下地震、火山爆发或水下塌陷和滑坡等大地活动都可能引起海啸。 当地震发生于海底,因震波的动力而引起海水剧烈的起伏,形成强大的波浪,向前推进,将沿海地带一一淹没的灾害,称之为海啸。 海啸在许多西方语言中称为“tsunami”,词源自日语“津波”,即“港边的波浪”(“津”即“港”)。 这也显示出了日本是一个经常遭受海啸袭击的国家。 目前,人类对地震、火山、海啸等突如其来的灾变,只能通过观察、预测来预防或减少它们所造成的损失,但还不能阻止它们的发生。 海啸通常由震源在海底下50千米以内、里氏地震规模6.5以上的海底地震引起。 海啸波长比海洋的最大深度还要大,在海底附近传播也没受多大阻滞,不管海洋深度如何,波都可以传播过去,海啸在海洋的传播速度大约每小时五百到一千公里,而相邻两个浪头的距离也可能远达500到650公里,当海啸波进入陆棚后,由于深度变浅,波高突然增大,它的这种波浪运动所卷起的海涛,波高可达数十米,并形成“水墙”。 智利地震引发海啸过后一片狼藉由地震引起的波动与海面上的海浪不同,一般海浪只在一定深度的水层波动,而地震所引起的水体波动是从海面到海底整个水层的起伏。 此外,海底火山爆发,土崩及人为的水底核爆也能造成海啸。 此外,陨石撞击也会造成海啸,“水墙”可达百尺。 而且陨石造成的海啸在任何水域也有机会发生,不一定在地震带。 不过陨石造成的海啸可能千年才会发生一次。 海啸同风产生的浪或潮是有很大差异的。 微风吹过海洋,泛起相对较短的波浪.相应产生的水流仅限于浅层水体。 猛烈的大风能够在辽阔的海洋卷起高度3米以上的海浪,但也不能撼动深处的水。 而潮汐[1]每天席卷全球两次.它产生的海流跟海啸一样能深入海洋底部,但是海啸并非由月亮或太阳的引力引起,它由海下地震推动所产生,或由火山爆发、陨星撞击、或水下滑坡所产生。 海啸波浪在深海的速度能够超过每小时700千米,可轻松地与波音747飞机保持同步。 虽然速度快.但海啸抓拍(14张)在深水中海啸并不危险,低于几米的一次单个波浪在开阔的海洋中其长度可超过750千米这种作用产生的海表倾斜如此之细微,以致这种波浪通常在深水中不经意间就过去了。 海啸是静悄悄地不知不觉地通过海洋,然而如果出乎意料地在浅水中它会达到灾难性的高度. 海啸是一种具有强大破坏力的海浪。 水下地震、火山爆发或水下塌陷和滑坡等大地活动都可能引起海啸。 地震发生时,海底地层发生断裂,部分地层出现猛然上升或者下沉,由此造成从海底到海面的整个水层发生剧烈“抖动”。 这种“抖动”与平常所见到的海浪大不一样。 海浪一般只在海面附近起伏,涉及的深度不大,波动的振幅随水深衰减很快。 地震引起的海水“抖动”则是从海底到海面整个水体的波动,其中所含的能量惊人。 海啸时掀起的狂涛骇浪,高度可达10多米至几十米不等,形成“水墙”。 另外,海啸波长很大,可以传播几千公里而能量损失很小。 由于以上原因,如果海啸到达岸边,“水墙”就会冲上陆地,对人类生命和财产造成严重威胁。 编辑本段海啸的起因海啸海啸是一种灾难性的海浪,通常由震源在海底下5千米以内、里氏震级6.5以上的海底地震引起。 水下或沿岸山崩或火山爆发也可能引起海啸。 在一次震动之后,震荡波在海面上以不断扩大的圆圈,传播到很远的距离,正象卵石掉进浅池里产生的波一样。 海啸波长比海洋的最大深度还要大,轨道运动在海底附近也没受多大阻滞,不管海洋深度如何,波都可以传播过去。 水下地震、火山爆发或水下塌陷和滑坡等激起的巨浪,在涌向海湾内和海港时所形成的破坏性的大浪称为海啸。 破坏性的地震海啸,只在出现垂直断层、里氏震级大于6.5级的条件下才能发生。 当海底地震导致海底变形时,变形地区附近的水体产生巨大波动,海啸就产生了。 海啸过后(16张)海啸的传播速度与它移行的水深成正比。 在太平洋,海啸的传播速度一般为每小时两三百公里到1000多公里。 海啸不会在深海大洋上造成灾害,正在航行的船只甚至很难察觉这种波动。 海啸发生时,越在外海越安全。 一旦海啸进入大陆架,由于深度急剧变浅,波高骤增,可达20至30米,这种巨浪可带来毁灭性灾害。 海啸来袭之前,海潮为什么先是突然退到离沙滩很远的地方,一段时间之后海水才重新上涨? 大多数情况下,出现海面下落的现象都是因为海啸冲击波的波谷先抵达海岸。 波谷就是波浪中最低的部分,它如果先登陆,海面势必下降。 同时,海啸冲击波不同于一般的海浪,其波长很大,因此波谷登陆后,要隔开相当一段时间,波峰才能抵达。 另外,这种情况如果发生在震中附近,那可能是另一个原因造成的:地震发生时,海底地面有一个大面积的抬升和下降。 这时,地震区附近海域的海水也随之抬升和下降,然后就形成了海啸。 编辑本段海啸的分类海啸可分为4种类型。 即由气象变化引起的风暴潮、火山爆发引起的火山海啸、海底滑坡引起的滑坡海啸和海底地震引起的地震海啸。 中国地震局提供的材料说,地震海啸是海底发生地震时,海底地形急剧升降变动引起海水强烈扰动。 其机制有两种形式:“下降型”海啸和“隆起型”海啸。 “下降型”海啸:某些构造地震引起海底地壳大范围的急剧下降,海水首先向突然错动下陷的空间涌去,并在其上方出现海水大规模积聚,当涌进的海水在海底遇到阻力后,即翻回海面产生压缩波,形成长波大浪,并向四周传播与扩散,这种下降型的海底地壳运动形成的海啸在海岸首先表现为异常的退潮现象。 1960年智利地震海啸就属于此种类型。 “隆起型”海啸:某些构造地震引起海底地壳大范围的急剧上升,海水也随着隆起区一起抬升,并在隆起区域上方出现大规模的海水积聚,在重力作用下,海水必须保持一个等势面以达到相对平衡,于是海水从波源区向四周扩散,形成汹涌巨浪。 这种隆起型的海底地壳运动形成的海啸波在海岸首先表现为异常的涨潮现象。 1983年5月26日,中日本海7.7级地震引起的海啸属于此种类型编辑本段海啸的预警海啸预警的物理基础在大地震之后如何迅速地、正确地判断该地震是否会激发海啸,这仍然是个悬而未决的科学问题。 尽管如此,根据目前的认识水平,仍可通过海啸预警为预防和减轻海啸灾害做出一定的贡献。 海啸预警的物理基础在于地震波传播速度比海啸的传播速度快。 地震纵波即P波的传播速度约为6~7千米/秒,比海啸的传播速度要快20~30倍,所以在远处,地震波要比海啸早到达数十分钟乃至数小时,具体数值取决于震中距和地震波与海啸的传播速度。 例如,当震中距为1000千米时,地震纵波大约2.5分钟就可到达,而海啸则要走大约1个多小时;1960年智利特大地震激发的特大海啸22小时后才到达日本海岸。 如能利用地震波传播速度与海啸传播速度的差别造成的时间差分析地震波资料,快速地、准确地测定出地震参数,并与预先布设在可能产生海啸的海域中的压强计(不但应当有布设在海面上的压强计,更应当有安置在海底的压强计)的记录相配合,就有可能做出该地震是否激发了海啸、海啸的规模有多大的判断。 然后,根据实测水深图、海底地形图及可能遭受海啸袭击的海岸地区的地形地貌特征等相关资料,模拟计算海啸到达海岸的时间及强度,运用诸如卫星、遥感、干涉卫星孔径雷达等空间技术监测海啸在海域中传播的进程、采用现代信息技术将海啸预警信息及时传送给可能遭受海啸袭击的沿海地区的居民,并在可能遭受海啸袭击的沿海地区,开展有关预防和减轻海啸灾害的科技知识的宣传、教育、普及以及应对海啸灾害的训练和演习。 这样,就有希望在海啸袭击时,拯救成千上万生命和避免大量的财产损失。 海啸预警具有可靠的物理基础,它不但在理论上是成立的,实际上也是可行的,并且已经有了成功的范例。 例如,1946年,海啸给夏威夷的“曦嵝”(Hilo)市造成了严重的人员伤亡和财产损失。 于是,1948年便在夏威夷便建立了太平洋海啸预警中心,从而有效避免了在那以后的海啸可能造成的损失。 倘若印度洋沿岸各国在2004年印度洋特大海啸之前,能与太平洋沿岸国家一样建立起海啸预警系统,那么这次苏门答腊%A3%AD安达曼特大地震引起的印度洋特大海啸,决不致造成如此巨大的人员伤亡和财产损失。 以上所述的海啸预警对于“远洋海啸”比较有效。 但是,对于“近海海啸”(亦称“本地海啸”)即激发海啸的海底地震离海岸很近,例如只有几十至数百千米的海啸,由于地震波传播速度与海啸传播速度的差别造成的时间差只有几分钟至几十分钟,海啸早期预警就比较难于奏效。 为了在大地震之后能够迅速地、正确地判断该地震是否激发海啸,减少误判与虚报、特别是“近海海啸”预警的误判与虚报以提高海啸预警的水平,必须加强对海啸物理的研究。
是1字=4byte=32bit,还是1字=2byte=32bit
1个中文汉字=2B(Byte)1英文字符=1B1B(Byte)=8bit(位)大写的B是字节,小写的是位。
若x,y满足(x-1)^2+(y+2)^=4,求S=2x+y的最大值和最小值
解:可设x=2cosa+1,y=2sina-2.S=2x+y=4cosa+2sina=2√5sin(a+t)(cost=1/√5,sint=2/√5.)故Smin=-2√5,Smax=2√5.
发表评论