楼主: aongao
8104 2

[Hadoop] 一文读懂大数据:Hadoop,大数据技术及相关应用 [推广有奖]

  • 5关注
  • 31粉丝

VIP

教授

52%

还不是VIP/贵宾

-

TA的文库  其他...

新能源&可持續發展

農業&经济

威望
1
论坛币
33743 个
通用积分
5631.2235
学术水平
153 点
热心指数
194 点
信用等级
114 点
经验
89598 点
帖子
626
精华
2
在线时间
1101 小时
注册时间
2014-1-20
最后登录
2022-4-13

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币

大数据处理和分析的新方法
  存在多种方法处理和分析大数据,但多数都有一些共同的特点。即他们利用硬件的优势,使用扩展的、并行的处理技术,采用非关系型数据存储处理非结构化和半结构化数据,并对大数据运用高级分析和数据可视化技术,向终端用户传达见解。
  Wikibon已经确定了三种将会改变业务分析和数据管理市场的大数据方法。
  Hadoop
  Hadoop是一个处理、存储和分析海量的分布式、非结构化数据的开源框架。最初由雅虎的Doug Cutting创建,Hadoop的灵感来自于 MapReduce ,MapReduce是谷歌在2000年代初期开发的用于网页索引的用户定义函数。它被设计用来处理分布在多个并行节点的PB级和EB级数据。
  Hadoop集群运行在廉价的商用硬件上,这样硬件扩展就不存在资金压力。Hadoop现在是Apache软件联盟(The Apache Software Foundation)的一个项目,数百名贡献者不断改进其核心技术。基本概念:与将海量数据限定在一台机器运行的方式不同,Hadoop将大数据分成多个部分,这样每个部分都可以被同时处理和分析。
  Hadoop如何工作
  客户从日志文件、社交媒体供稿和内部数据存储等来源获得非结构化和半结构化数据。它将数据打碎成“部分”,这些“部分”被载入到商用硬件的多个节点组成的文件系统。Hadoop的默认文件存储系统是Hadoop分布式文件系统。文件系统(如HDFS)善于存储大量非结构化和半结构化数据,因为它们不需要将数据组织成关系型的行和列。
  各“部分”被复制多次,并加载到文件系统。这样,如果一个节点失效,另一个节点包含失效节点数据的副本。名称节点充当调解人,负责沟通信息:如哪些节点是可用的,某些数据存储在集群的什么地方,以及哪些节点失效。
  一旦数据被加载到集群中,它就准备好通过MapReduce 框架进行分析。客户提交一个“匹配”的任务( 通常是用Java编写的查询语句)给到一个被称为作业跟踪器的节点。该作业跟踪器引用名称节点,以确定完成工作需要访问哪些数据,以及所需的数据在集群的存储位置。一旦确定,作业跟踪器向相关节点提交查询。每个节点同时、并行处理,而非将所有数据集中到一个位置处理。这是Hadoop的一个本质特征。
  当每个节点处理完指定的作业,它会存储结果。客户通过任务追踪器启动“Reduce”任务。汇总map阶段存储在各个节点上的结果数据,获得原始查询的“答案”,然后将“答案”加载到集群的另一个节点中。客户就可以访问这些可以载入多种分析环境进行分析的结果了。MapReduce 的工作就完成了。
  一旦MapReduce 阶段完成,数据科学家和其他人就可以使用高级数据分析技巧对处理后的数据进一步分析。也可以对这些数据建模,将数据从Hadoop集群转移到现有的关系型数据库、数据仓库等传统IT系统进行进一步的分析。




  Hadoop的技术组件
  Hadoop “栈”由多个组件组成。包括:
  · Hadoop分布式文件系统(HDFS):所有Hadoop集群的默认存储层;
  · 名称节点:在Hadoop集群中,提供数据存储位置以及节点失效信息的节点。
  · 二级节点:名称节点的备份,它会定期复制和存储名称节点的数据,以防名称节点失效。
  · 作业跟踪器:Hadoop集群中发起和协调MapReduce作业或数据处理任务的节点。
  · 从节点:Hadoop集群的普通节点,从节点存储数据并且从作业跟踪器那里获取数据处理指令。
  除了上述以外,Hadoop生态系统还包括许多免费子项目。NoSQL数据存储系统(如Cassandra和HBase)也被用于存储Hadoop的MapReduce作业结果。除了??Java,很多 MapReduce 作业及其他Hadoop的功能都是用Pig语言写的,Pig是专门针对Hadoop设计的开源语言。Hive最初是由Facebook开发的开源数据仓库,可以在Hadoop中建立分析模型。
  请参阅文章:Hadoop组件和子项目指导手册:HBase,Sqoop,Flume等:Apache Hadoop定义(http://wikibon.org/wiki/v/HBase,_Sqoop,_Flume_and_More:_Apache_Hadoop_Defined)
  Hadoop:优点和缺点
  Hadoop的主要好处是,它可以让企业以节省成本并高效的方式处理和分析大量的非结构化和半结构化数据,而这类数据迄今还没有其他处理方式。因为Hadoop集群可以扩展到PB级甚至EB级数据,企业不再必须依赖于样本数据集,而可以处理和分析所有相关数据。数据科学家可以采用迭代的方法进行分析,不断改进和测试查询语句,从而发现以前未知的见解。使用Hadoop的成本也很廉价。开发者可以免费下载Apache的Hadoop 分布式平台,并且在不到一天的时间内开始体验Hadoop。
  Hadoop及其无数组件的不足之处是,他们还不成熟,仍处于发展阶段。就像所有新的、原始的技术一样,实施和管理Hadoop集群,对大量非结构化数据进行高级分析,都需要大量的专业知识、技能和培训。不幸的是,目前Hadoop开发者和数据科学家的缺乏,使得众多企业维持复杂的Hadoop集群并利用其优势变得很不现实。此外,由于Hadoop的众多组件都是通过技术社区得到改善,并且新的组件不断被创建,因此作为不成熟的开源技术,也存在失败的风险。最后,Hadoop是一个面向批处理的框架,这意味着它不支持实时的数据处理和分析。
  好消息是,一些聪明的IT人士不断对Apache Hadoop项目做出贡献,新一代的Hadoop开发者和数据科学家们正在走向成熟。因此,该技术的发展日新月异,逐渐变得更加强大而且更易于实施和管理。供应商(包括Hadoop的初创企业Cloudera和Hortonworks)以及成熟的IT中坚企业(如IBM和微软)正在努力开发企业可用的商业Hadoop分布式平台、工具和服务,让部署和管理这项技术成为传统企业可用的实际现实。其他初创企业正在努力完善NoSQL(不仅仅是SQL)数据系统,结合Hadoop提供近实时的分析解决方案。
  NoSQL
  一种称为NoSQL的新形式的数据库(Not Only SQL)已经出现,像Hadoop一样,可以处理大量的多结构化数据。但是,如果说Hadoop擅长支持大规模、批量式的历史分析,在大多数情况下(虽然也有一些例外),NoSQL 数据库的目的是为最终用户和自动化的大数据应用程序提供大量存储在多结构化数据中的离散数据。这种能力是关系型数据库欠缺的,它根本无法在大数据规模维持基本的性能水平。
  在某些情况下,NoSQL和Hadoop协同工作。例如,HBase是流行的NoSQL数据库,它仿照谷歌的BigTable,通常部署在HDFS(Hadoop分布式文件系统)之上,为Hadoop提供低延迟的快速查找功能。
  目前可用的NoSQL数据库包括:
  · HBase
  · Cassandra
  · MarkLogic
  · Aerospike
  · MongoDB
  · Accumulo
  · Riak
  · CouchDB
  · DynamoDB
  目前大多数NoSQL数据库的缺点是,为了性能和可扩展性,他们遵从ACID(原子性,一致性,隔离性,持久性)原则。许多NoSQL数据库还缺乏成熟的管理和监控工具。这些缺点在开源的NoSQL社区和少数厂商的努力下都在克服过程中,这些厂商包括DataStax,Sqrrl,10gen,Aerospike和Couchbase,他们正在尝试商业化各种NoSQL数据库。
  大规模并行分析数据库
  不同于传统的数据仓库,大规模并行分析数据库能够以必需的最小的数据建模,快速获取大量的结构化数据,可以向外扩展以容纳TB甚至PB级数据。
  对最终用户而言最重要的是,大规模并行分析数据库支持近乎实时的复杂SQL查询结果,也叫交互式查询功能 ,而这正是Hadoop显着缺失的能力。大规模并行分析数据库在某些情况下支持近实时的大数据应用。大规模并行分析数据库的基本特性包括:
  大规模并行处理的能力: 就像其名字表明的一样,大规模并行分析数据库采用大规模并行处理同时支持多台机器上的数据采集、处理和查询。相对传统的数据仓库具有更快的性能,传统数据仓库运行在单一机器上,会受到数据采集这个单一瓶颈点的限制。
  无共享架构: 无共享架构可确保分析数据库环境中没有单点故障。在这种架构下,每个节点独立于其他节点,所以如果一台机器出现故障,其他机器可以继续运行。对大规模并行处理环境而言,这点尤其重要,数百台计算机并行处理数据,偶尔出现一台或多台机器失败是不可避免的。
  列存储结构: 大多数大规模并行分析数据库采用列存储结构,而大多数关系型数据库以行结构存储和处理数据。在列存储环境中,由包含必要数据的列决定查询语句的“答案”,而不是由整行的数据决定,从而导致查询结果瞬间可以得出。这也意味着数据不需要像传统的关系数据库那样构造成整齐的表格。
  强大的数据压缩功能: 它们允许分析数据库收集和存储更大量的数据,而且与传统数据库相比占用更少的硬件资源。例如,具有10比1的压缩功能的数据库,可以将10 TB字节的数据压缩到1 TB。数据编码(包括数据压缩以及相关的技术)是有效的扩展到海量数据的关键。
  商用硬件: 像Hadoop集群一样,大多数(肯定不是全部)大规模并行分析数据库运行在戴尔、IBM等厂商现成的商用硬件上,这使他们能够以具有成本效益的方式向外扩展。
  在内存中进行数据处理: 有些(肯定不是全部)大规模并行分析数据库使用动态RAM或闪存进行实时数据处理。有些(如SAP HANA和 Aerospike)完全在内存中运行数据,而其他则采用混合的方式,即用较便宜但低性能的磁盘内存处理“冷”数据,用动态RAM或闪存处理“热”数据。
  然而,大规模并行分析数据库确实有一些盲点。最值得注意的是,他们并非被设计用来存储、处理和分析大量的半结构化和非结构化数据。
  大数据方法的互补
  Hadoop,NoSQL 和大规模并行分析数据库不是相互排斥的。相反的,Wikibon 认为这三种方法是互补的,彼此可以而且应该共存于许多企业。Hadoop擅长处理和分析大量分布式的非结构化数据,以分批的方式进行历史分析。NoSQL 数据库擅长为基于Web的大数据应用程序提供近实时地多结构化数据存储和处理。而大规模并行分析数据库最擅长对大容量的主流结构化数据提供接近实时的分析。
  例如,Hadoop完成的历史分析可以移植到分析数据库供进一步分析,或者与传统的企业数据仓库的结构化数据进行集成。从大数据分析得到的见解可以而且应该通过大数据应用实现产品化。企业的目标应该是实现一个灵活的大数据架构,在该架构中,三种技术可以尽可能无缝地共享数据和见解。
  很多预建的连接器可以帮助Hadoop开发者和管理员实现这种数据集成,同时也有很多厂商(包括Pivotal Initiative-原EMC的Greenplum,CETAS-和Teradata Aster)提供大数据应用。这些大数据应用将Hadoop、分析数据库和预配置的硬件进行捆绑,可以达到以最小的调整实现快速部署的目的。另外一种情况,Hadapt提供了一个单一平台,这个平台在相同的集群上同时提供SQL和Hadoop/MapReduce的处理功能。Cloudera也在Impala和Hortonworks项目上通过开源倡议推行这一策略。
  但是,为了充分利用大数据,企业必须采取进一步措施。也就是说,他们必须使用高级分析技术处理数据,并以此得出有意义的见解。数据科学家通过屈指可数的语言或方法(包括SAS和R)执行这项复杂的工作。分析的结果可以通过Tableau这样的工具可视化,也可以通过大数据应用程序进行操作,这些大数据应用程序包括自己开发的应用程序和现成的应用程序。其他厂商(包括 Platfora和Datameer)正在开发商业智能型的应用程序,这种应用程序允许非核心用户与大数据直接交互。




  图3 – 现代数据架构  资料来源:Wikibon 2013
  底层的大数据方法(如Hadoop,NoSQL和大规模并行分析数据库)不仅本身是互补的,而且与大部分大型企业现有的数据管理技术互补。Wikibon并不建议企业CIO们为了大数据方法而“淘汰并更换”企业现有的全部的数据仓库、数据集成和其他数据管理技术。
  相反,Wikibon认为首席信息官必须像投资组合经理那样思考,重新权衡优先级,为企业走向创新和发展奠定基础,同时采取必要的措施减轻风险因素。用大数据方法替换现有的数据管理技术,只有当它的商业意义和发展计划与现有的数据管理基础设施尽可能无缝地整合时才有意义。最终目标应该是转型为现代数据架构(见图3和文章链接)。
  大数据供应商发展状况
  大数据供应商正在迅速发展。参见图4对一个细分市场的概述,对于大数据市场的详细分析,包括市场规模(现状及到2017年的五年预测)和供应商之间的大数据收入数字,详情参考 大数据供应商收入和市场预测2012-2017。




  图4 – 大数据供应商发展状况   资料来源:Wikibon 2012
  大数据:实际使用案例
  让Hadoop和其他大数据技术如此引人注目的部分原因是,他们让企业找到问题的答案,而在此之前他们甚至不知道问题是什么。这可能会产生引出新产品的想法,或者帮助确定改善运营效率的方法。不过,也有一些已经明确的大数据用例,无论是互联网巨头如谷歌,Facebook和LinkedIn还是更多的传统企业。它们包括:
  推荐引擎:网络资源和在线零售商使用Hadoop根据用户的个人资料和行为数据匹配和推荐用户、产品和服务。LinkedIn使用此方法增强其“你可能认识的人”这一功能,而亚马逊利用该方法为网上消费者推荐相关产品。
  情感分析: Hadoop与先进的文本分析工具结合,分析社会化媒体和社交网络发布的非结构化的文本,包括Tweets和Facebook,以确定用户对特定公司,品牌或产品的情绪。分析既可以专注于宏观层面的情绪,也可以细分到个人用户的情绪。
  风险建模: 财务公司、银行等公司使用Hadoop和下一代数据仓库分析大量交易数据,以确定金融资产的风险,模拟市场行为为潜在的“假设”方案做准备,并根据风险为潜在客户打分。
  欺诈检测: 金融公司、零售商等使用大数据技术将客户行为与历史交易数据结合来检测欺诈行为。例如,信用卡公司使用大数据技术识别可能的被盗卡的交易行为。
  营销活动分析:各行业的营销部门长期使用技术手段监测和确定营销活动的有效性。大数据让营销团队拥有更大量的越来越精细的数据,如点击流数据和呼叫详情记录数据,以提高分析的准确性。
  客户流失分析: 企业使用Hadoop和大数据技术分析客户行为数据并确定分析模型,该模型指出哪些客户最有可能流向存在竞争关系的供应商或服务商。企业就能采取最有效的措施挽留欲流失客户。
  社交图谱分析: Hadoop和下一代数据仓库相结合,通过挖掘社交网络数据,可以确定社交网络中哪些客户对其他客户产生最大的影响力。这有助于企业确定其“最重要”的客户,不总是那些购买最多产品或花最多钱的,而是那些最能够影响他人购买行为的客户。
  用户体验分析: 面向消费者的企业使用Hadoop和其他大数据技术将之前单一 客户互动渠道(如呼叫中心,网上聊天,微博等)数据整合在一起, ,以获得对客户体验的完整视图。这使企业能够了解客户交互渠道之间的相互影响,从而优化整个客户生命周期的用户体验。
  网络监控:Hadoop 和其他大数据技术被用来获取,分析和显示来自服务器,存储设备和其他IT硬件的数据,使管理员能够监视网络活动,诊断瓶颈等问题。这种类型的分析,也可应用到交通网络,以提高燃料效率,当然也可以应用到其他网络。
  研究与发展: 有些企业(如制药商)使用Hadoop技术进行大量文本及历史数据的研究,以协助新产品的开发。
  当然,上述这些都只是大数据用例的举例。事实上,在所有企业中大数据最引人注目的用例可能尚未被发现。这就是大数据的希望。
  大数据技能差距
  企业运用大数据的最大障碍是缺乏相关的技能,如Hadoop管理技能、大数据分析技能或数据科学。为了让大数据真正被大量采用,并且实现其全部潜力,缩小技能上的差距就至关重要了。这需要从两条战线进行攻击:
  首先,这意味着开源社区和商业大数据厂商必须开发易于使用的大数据管理和分析工具和技术,为传统的IT和商业智能专业人士降低进入的门槛。这些工具和技术,必须从底层数据处理框架抽象掉尽可能多的复杂性。可以通过图形用户界面,类似于向导的安装功能和日常任务自动化的组合方式实现。
  其次,社会必须开发更多的教育资源,培养现有的IT和商业智能专业人士以及高中生和大学生成为我们未来所需要的大数据从业者。
  据麦肯锡公司研究,到2018年仅美国就有可能面临14万~19万具备专业分析技能的人才,以及懂得使用大数据分析做出有效决策的150万经理和分析师的短缺。造成短缺的部分原因是数据科学本身的规律导致的,因为数据科学要求各种综合技能。
  具体来说,数据科学家必须具备的技术技能侧重于统计、计算机科学和数学。但他们还必须具有商业头脑,即了解现有业务,并且能找到大数据可以业务提供最大价值的方向。或许同样重要的是,数据科学家必须具备专业的沟通技巧,以及通过大数据的可视化,向业务同事讲故事的能力。
  正如本报告中提到的,一些大数据厂商开始提供大数据培训课程。IT从业者具有极好的机会,利用这些培训和教育活动的优势磨练自己的数据分析技能,并可以在企业内部确定新的职业道路。同样,在南加州大学、北卡罗来纳州立大学、纽约大学和其他地方,几门关于大数据和高级分析技术的大学级别的课程也应运而生。但大数据的发展和普及还是需要更多的课程。
  只有通过两条战线-更好的工具和技术,更好的教育和培训-才能克服大数据技术差距。
  大数据:企业和供应商的后续动作
  对企业和为他们服务的供应商双方而言,大数据都具有很大的潜力,但首先必须先采取行动。Wikibon的建议如下。
  行动项目:各个行业的企业应评估现有和潜在的大数据用例,参与大数据社区了解最新的技术发展。与大数据社区里志趣相投的企业和供应商一起识别大数据能够提供商业价值的领域。接下来,考虑企业内部的大数据技术水平,确定是否开始大数据方法,如Hadoop的试验。如果是这样,与IT部门和业务部门一起制定计划,将大数据工具、技术和方法整合到企业现有的IT基础架构。
  最重要的是,首先要在所有工作人员中培养数据驱动的文化,鼓励数据实验。当这个基础已经奠定,开始使用大数据的技术和方法提供最大的业务价值,并不断地重新评估新成熟的大数据方法。
  IT供应商应该帮助企业找出最有利可图、最实用的大数据用例,开发使大数据技术更易于部署、管理和使用的产品和服务。拥有开放而不专有的心态,给予客户尝试新的大数据技术和工具所需要的灵活性。同样地,开始建立大数据服务,帮助企业发展部署和管理大数据方法(如Hadoop)所需要的技能。最重要的是,随着大数据部署方案的成熟和成长,及时倾听和回应客户的反馈。


  本文来源:摘自大数据观察




二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:Hadoop 大数据技术 大数据 Had foundation Software 谷歌 雅虎 技术 开发

沙发
ReneeD 发表于 2014-7-10 10:40:02 |只看作者 |坛友微信交流群
关注使用。。。
已有 1 人评分论坛币 热心指数 收起 理由
aongao + 5 + 1 鼓励积极发帖讨论

总评分: 论坛币 + 5  热心指数 + 1   查看全部评分

使用道具

藤椅
kiwi502 发表于 2015-11-24 10:06:59 |只看作者 |坛友微信交流群
如何入手呢

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-26 23:05