OpenStack部署到Hadoop的四种方案
随着企业開始同一时候利用云计算和大数据技术。如今应当考虑怎样将这些工具结合使用。在这样的情况下,企业将实现最佳的分析处理能力。同一时候利用私有云的高速弹性
(rapid elasticity) 和单一租赁的特性。怎样协同效用和实现部署。是本文希望解决的问题。
一些基础知识
第一是OpenStack 。作为眼下最流行的开源云版本号,它包含控制器、计算
(Nova)、存储 (Swift)、消息队列 (RabbitMQ) 和网络 (Quantum) 组件。
图 1 提供了这些组件的一个图示(不包括 Quantum 网络组件)。
▲图 1. OpenStack 的组件
这些组件共同提供了一个同意动态配给计算和存储资源的环境。
从硬件角度看,这些服务可扩展到很多虚拟的和物理的server上。比如,大多数组织部署一个物理server作为控制器节点,部署还有一个物理server作为计算节点。
很多组织还选择将其存储环境分离到一个专用的物理server上,对于 OpenStack 部署而言,这意味着对 Swift存储环境使用单独的server。
第二是大数据。 一般能够理解为三个数据源的数据汇集:传统数据(结构化数据)、感知数据(日志数据和元数据)和社交(社交媒体)数据。
大数据通常採用新的技术模式进行存储,比方非关系分布式数据库 NoSQL。
共同拥有四种非关系数据库管理此系统 (NRDBMS):基于列、关键值、图表和基于文档。这些 NRDBMS 将源数据聚集在一起,同一时候用 MapReduce 之类的分析程序对汇总的信息进行分析。
传统的大数据环境包含一个分析程序、一个数据存储、一个可扩展文件系统、一个工作流管理器、一个分布式排序和散列解决方式以及一个数据流编程框架。
经常使用于商业应用程序的数据流编程框架是 Structured Query Language (SQL)。对于开源应用程序,一般会使用 SQL 的替代方案,如 Apache Pig for Hadoop。在商用方面,Cloudera 提供了最稳定、最全面的解决方式之中的一个,而
Apache Hadoop 是最流行的开源 Hadoop 版本号。
第三是Apache Hadoop 。包括多种组件,包括 Hadoop Distributed File System(即 HDFS,是一种可扩展的文件系统),HBase(数据库/数据存储)、Pig、Hadoop(分析方法)和 MapReduce(分布式排序和散列)。如图 2 所看到的,Hadoop 任务被分解为几个节点,而 MapReduce 任务则被分解为跟踪器 (tracker)。
▲图 2. HDFS/MapReduce 层的组成部分
图 3 显示了 MapReduce 怎样运行任务,它将获取输入并运行一系列分组、排序和合并操作。然后呈现经过排序和散列的输出。
▲图 3. 高级 MapReduce 图
图 4 演示了一个更复杂的 MapReduce 任务及其组成部分。
▲图 4. MapReduce 数据流图解
虽然 Hadoop MapReduce 要比传统的分析环境(如 IBM Cognos和 Satori proCube 在线分析处理)更复杂一些,但它的部署仍然具有可扩展能力和高成本效益。
全盘考虑
大数据技术和私有云环境都非常实用;只是。假设将两者结合在一起。企业会获得巨大的利润。虽然结合两者会让环境变得更复杂。企业仍然能够看到将 OpenStack 私有云和 Apache Hadoop 环境结合在一起产生的显著的协同效应。怎样来做会更好?
方案1. Swift+Apache Hadoop MapReduce
在私有云环境中,常见的大数据部署模型之中的一个是:将 OpenStack 的 Swift 存储技术部署到 Apache Hadoop MapReduce 集群,从而实现处理功能。使用这样的架构的优势是,企业将获得一个可扩展的存储节点,能够用该节点来处理其不断累积的数据。依据 IDC 的调查,数据年增长率已经达到 60%。该解决方式将满足不断增长的数据需求。同一时候同意组织同一时候启动一个试点项目来部署私有云。
该部署模型的最佳使用场景是企业希望通过存储池尝试使用私有云技术。同一时候在内部使用大数据技术。
最佳实践表明企业应当先将大数据技术部署到您的生产数据仓库环境中,然后构建并配置您的私有云存储解决方式。假设将 Apache Hadoop MapReduce 技术成功融合到数据仓库环境中,而且已经正确构建并执行您的私有云存储池。那么您就能够将私有云存储数据与预调度的 Hadoop MapReduce 环境集成在一起。
方案2. Swift + Cloudera Apache Hadoop 发行版
对于那些不愿意从头開始使用大数据的企业,能够使用 Cloudera 等解决方式供应商提供的大数据设备。Cloudera 的发行版包含 Apache Hadoop (CDH) 解决方式。它同意企业不必针对 Hadoop 的每一个细微区别来招募或培训员工。因此能够在大数据方面实现更高的投资回报 (ROI)。对于那些不具备大数据或私有云技能集,希望以缓慢、渐进的方式将该技术集成到其产品组合的企业。这一点尤其吸引人。
大数据和云计算属于相对较新的技术,很多企业希望通过它们实现成本节省;只是。很多企业对于是否全然採用这些技术犹豫不决。通过利用供应商支持的大数据软件版本号。企业在这方面将会更加从容,同一时候还能够了解怎样使用这些技术来发挥自身的优势。此外,假设使用大数据软件分析大型数据集。并且能够通过私有云存储节点来管理这些数据集,那么这些企业还能够实现更高的利用率。为了最好地将这一策略集成到企业中。首先须要安装、配置和管理
CDH。以便分析企业的数据仓库环境。然后将 Swift 中存储的数据加入到须要的地方。
方案3. Swift、Nova + Apache Hadoop MapReduce
对于希望在大数据环境中实现更高程度的灵活性、可扩展性和自治性的企业,能够利用 Apache 和 OpenStack 提供的开源产品的与生俱来的能力。为此,企业须要最大限度地利用这两种技术栈,这就要求採用与前面所述的解决方式不同的思维方式来设计环境。
要获得全然可伸缩的、灵活的大数据环境,必须在一个同一时候提供存储和计算节点的私有云环境中执行它。为此,企业必须先构建私有云。然后加入大数据。因此,在这样的情况下,必定会用到 Swift、Nova 和 RabbitMQ,并控制器节点来管理和维护环境。可是,问题在于企业是否须要针对不同的系统和业务部门将环境分为若干个部分(比如,非大数据虚拟机或客户机实例)。假设企业准备全然使用私有云,那么应当加入 Quantum。从网络的角度对不同的环境进行划分(參见图
5)。
▲图 5. OpenStack 架构
在设置并測试了私有云环境后,能够将 Apache Hadoop 组件合并到当中。此时,Nova 实例可用于存放 NoSQL 或 SQL 数据存储(没错,它们能够共存)以及 Pig 和 MapReduce 实例;Hadoop 能够位于一个独立的非 Nova 机器上。以便提供处理功能。
在不久的将来。Hadoop 有望在 Nova 实例上执行。使私有云自包括到全部 Nova 实例中。
方案4. GFS、Nova、Pig 和 MapReduce
从架构的角度看,除了使用 OpenStack 的 Swift 实现可扩展存储外,可能还有其它选择。
本例使用了 Google File System (GFS)、Nova 组件和 Apache Hadoop 组件,详细来讲,使用了 Pig 和 MapReduce。该演示样例同意企业集中精力开发一个仅用于计算处理的私有云计算节点,同一时候利用 Google 的公共存储云作为数据存储。
通过使用这样的混合云。企业能够专注于计算处理功能的核心能力,由第三方负责实现存储。该模型能够利用其它供应商的存储解决方式,如
Amazon Simple Storage Service;可是。在使用不论什么外部存储之前,企业应当在内部使用可扩展的文件系统 (XFS) 来构建该解决方式,并进行对应的測试,然后再将其扩展到公共云中。此外。依据数据的敏感性,企业可能须要使用数据保护机制。比方模糊处理 (obfuscation)、解除匿名化、加密或散列。
技巧和提示
在将云计算和大数据技术并入企业环境时,一定要为这两个技术平台构建员工的技能集。
当您的员工理解这些技术后。就能够组建一个实验室来測试这两个平台合并后的效果。因为包括很多不同的组件,因此在实现过程中,请务必遵循前面提到的经过验证的路径。此外。企业在尝试合并这两种模式时可能会遇到一些挫折,应当在进行若干次尝试后改用其它方法。这些方法包括设备和混合云。
障碍和陷阱
因为这些都是比較新的技术。所以大多数企业须要利用现有资源进行測试,之后再进行大量的资本支出 (CapEx)。然而,假设没有对这些技术在企业中的应用进行合理的预算和人员培训,那么试点和測试工作将会以失败告终。
相同,假设缺少完整的私有云部署,企业应当首先在当中实现大数据技术,然后再实现私有云。
最后,企业须要为私有云和大数据计划制定一个战略路线图。要获得成功的部署,则须要进行很多其它的分析 “工作”。这有可能会迟延处理过程。为了消除这样的风险,应当採用一种迭代式的项目管理方法,以分阶段的方式部署到业务部门中,通过这样的方法将这些技术部署到企业中。
企业须要确认怎样通过应用这些新技术使公司受益,如成本节省或加强处理功能等。(感谢@程序员张吉的分享。
OpenStack部署到Hadoop的四种方案的更多相关文章
- 四种方案:将OpenStack私有云部署到Hadoop MapReduce环境中
摘要:OpenStack与Hadoop被誉为继Linux之后最有可能获得巨大成功的开源项目.这二者如何结合成为更猛的新方案?业内给出两种答案:Hadoop跑在OpenStack上或OpenStack部 ...
- 基于Vue SEO的四种方案
基于Vue SEO的四种方案 https://segmentfault.com/a/1190000019623624?utm_source=tag-newest
- Tomcat中部署WEB项目的四种方法
对Tomcat部署web应用的方式总结,常见的有以下四种: 1.[使用控制台部署] 访问Http://localhost:8080,并通过Tomcat Manager登录,进入部署界面即可. 2.[利 ...
- Netty解决粘包和拆包问题的四种方案
在RPC框架中,粘包和拆包问题是必须解决一个问题,因为RPC框架中,各个微服务相互之间都是维系了一个TCP长连接,比如dubbo就是一个全双工的长连接.由于微服务往对方发送信息的时候,所有的请求都是使 ...
- http无状态和鉴权解决四种方案
http协议本身是无状态的,但是在实际的web开发中常有一些操作需要有状态.比如想要访问一些私人访问权限的文章,或者这种操作需要明确当前用户身份. 显然,最简单的方案就是每次都发送账户和密码,但是这样 ...
- Hadoop+MongoDB的四种方案
背景: 公司核心业务库现存在MongoDB中,分布在6台MongoDB节点.现面临如下问题: 1.最大的一张表有10多个G,MongoDB在查询方面尚能胜任,但是涉及到复杂计算时会比较吃力. 2.Mo ...
- 怎样将OpenStack部署到Hadoop
随着信息时代的快速发展,大数据技术和私有云环境都非常实用;只是,假设将两者结合在一起.企业会获得巨大的利润.虽然结合两者会让环境变得更复杂.企业仍然能够看到将 OpenStack 私有云和 Apach ...
- 83.基于Vue SEO的四种方案(小结)
前言:众所周知,Vue SPA单页面应用对SEO不友好,当然也有相应的解决方案,下面列出几种最近研究和使用过的SEO方案,SRR和静态化基于Nuxt来说. 1.SSR服务器渲染:2.静态化:3.预渲染 ...
- 四种方案解决ScrollView嵌套ListView问题(转)
以下文章转自@安卓泡面 在工作中,曾多次碰到ScrollView嵌套ListView的问题,网上的解决方法有很多种,但是杂而不全.我试过很多种方法,它们各有利弊. 在这里我将会从使用ScrollVie ...
随机推荐
- 数据结构自己实现——queue
SeqQueue.h #define QueueSize 100 typedef char DataType; class SeqQueue { public: DataType data[Queue ...
- Manajro17配置
:Manjaro近来点击率一直排行第一,比较适合笔记本使用,这次从下载刻录开始讲述: 1: 下载刻录 因为一些环境特殊原因,官网下载还是比较慢的,普通用户还是从清华镜像源下载比较快,当然你也可以选择官 ...
- 【UTR #2】题目排列顺序
题目描述 "又要出题了." 宇宙出题中心主任 -- 吉米多出题斯基,坐在办公桌前策划即将到来的 UOI. 这场比赛有 $n$ 道题,吉米多出题斯基需要决定这些题目的难度,然后再在汪 ...
- 第3章 CentOS常用命令
一.CentOS常用命令 1.1 文件和目录 # cd /home 进入 '/home' 目录 # cd .. ...
- ANT---调用外部命令的一些坑
最近用到了Ant,发现还是有许多功能是Ant没有提供相应Task支持,而操作系统提供了相应的系统命令.Ant说明书上说了,用<exec>可以调用系统命令,实际操作起来才发现陷阱可不少,一不 ...
- 迅雷在P2P网络中的另类上传速度
如上图,我们一般在下载BT时,一般P2P是边下载边上传. 但是迅雷在自己的软件中可以设置上传速度,反而在展示时却把P2P协议的速度不在上传那么显示,而是使用协议速度来进行展示:并且这个速度无法设置. ...
- Go语言:变参函数
变参函数: 函数中形式参数的数目通常是确定的,在调用的时候要依次传入与形式参数对应的所有实际参数,但是在某些函数的参数个数可以根据实际需要来确定,这就是变参函数. Go语言支持不定长变参,但是要注意不 ...
- Android自定义Dialog效果
上面是效果图. 使用方法: NiftyDialogBuilder dialogBuilder=NiftyDialogBuilder.getInstance(this); dialogBuilder . ...
- cocos2d-x step by step(3) Doub le Kill简单的一些小动画
在触控厮混了两年多,不过达到了自己的初衷以及目的. 目前从事cocos2d的更改和调优移植工作. 1 简单的一个图片放大和缩小 auto sprite = Sprite::create("l ...
- 改进的SMS4算法的差分故障与暴力联合攻击
改进的SMS4算法的差分故障与暴力联合攻击 (1.中国科学院研究生院,北京100049) 摘要SMS4是在国内正式使用并于2006年发布的第一个用于无线局域网的商用分组password算法.文中研究了 ...