大数据十大常见Hadoop应用误区常见Hadoop十大应用误区。Hadoop是由Apache基金会开发的分布式系统基础设施。用户可以在不知道分发的底层细节的情况下开发分布式程序。充分利用集群的力量进行高速计算和存储。以下是Hadoop应用程序的十大常见误解和正确答案。1.(误区)Hadoop无所不能(正解)当一个新技术出来的时候,我们都会去思考它在不同行业的应用,而对于平台的新技术,我们往往在思考之后得出这样的结论”似乎什么都可以做”,但是,如果你更深入地思考,你会发现“一切都需要重新做”。对于Hadoop,我经常喜欢用数据库来举例。三十年前,当数据库刚出来的时候,没有现成的应用方案(Application),所以厂商往往需要在销售过程中花很多时间告诉客户,如果你今天有了这个数据库,你就可以做任何应用,并且好像数据库可以做任何应用,因为毕竟大多数应用都会需要数据库,只不过30年前所有的应用都得重新构建,我们今天习以为常的ERP、CRM等应用系统并没有存在于那一次,那是后来的事了。今天的Hadoop有点像数据库刚出来的时候。毕竟今天所有的应用程序或多或少都会开始处理半结构化和非结构化数据,而这些东西确实是Hadoop擅长的,所以平台的适用性其实问题不大,关键是谁应该构建应用程序。2.(误区)Hadoop不能起到HPC(高性能计算)或网格计算的作用(正解)由于Hadoop本身是由并行计算架构(MapReduce)和分布式文件系统(HDFS)组成的,我们也看到许多研究机构或教育机构开始尝试将一些原本在HPC或Grid上执行的任务移植到Hadoop集群上,利用Hadoop兼具高速计算和海量存储的特点,更轻松高效地执行任务。目前,在国外的高能物理、生命科学、医学等领域已经有这样的应用案例,利用Hadoop集群与现有的HPC/Grid协同运行,满足不同特点的计算任务。3.(误区)Hadoop只能做数据分析/挖掘(DataMining/Analyst)(正确答案)毫无疑问,Hadoop特别适合数据分析和挖掘应用,但是数据分析和挖掘难度大,深度需要Hadoop的一个应用需要很长时间积累,这让普通企业对Hadoop的引入感到害怕甚至恐惧。但是,从易图智易团队这两年辅导客户的经验来看,我们发现大部分的应用都是在数据处理(DataProcessing)部分,或者更准确的说是Hadoop平台,特别适合数据预处理-处理(Datapre-Processing)这个应用场景。无论是数据仓库的DWOffload,还是数据聚合(DataAggregation),甚至是我们使用协同过滤算法(CollaborativeFiltering)针对线下和线上零售行业的精准推荐应用(Recommendation),从广义上看,都可以说它属于数据处理的一部分。毕竟,随着大数据的到来,我们必须改变看待和使用数据的角度和方式。大数据强调的不是对因果关系的渴望,而是关注数据之间的相关性。换句话说,关键是要知道“是什么”,但不一定要知道“为什么”。因此,它需要对所有数据进行处理,而不仅仅是随机样本的分析。***我们经常发现,大数据简单算法处理得到的数据所呈现的事实往往比小数据复杂算法分析得到的数据背后的原因对企业更有利。强烈推荐大家看一下BigData:ARevolutionThatWillTransformHowWeLive,Work,andThink这本书,里面把我们对大数据的看法和看法说得很清楚了,简体中文好像没看过还没看过繁体中文版。4.(误区)Hadoop就是BI(BusinessIntelligence)商业智能(正解)和前面一样,这是大多数人最容易误会的地方,因为Hadoop特别适合做数据分析,所以很直观的认为它是“那是BI。”这种误解主要来自对数据应用整体架构的不清晰。传统BI属于数据表现层(DataPresentation),其数据载体(DataStore)是数据库或数据仓库。相比之下,Hadoop是一种专注于半结构化和非结构化数据的数据载体,是一个与BI不同层次的概念。当然,除了DataStore,Hadoop还有特殊的计算特性,所以特别容易造成这种概念上的混淆。至于半结构化和非结构化数据的数据展示层,目前不在Hadoop生态中,而是由其他现有的或新的公司来填补,所以逐渐我们会看到越来越多的现有BI工具开始强调自己与Hadoop的联系和兼容性。同时,一些初创公司也开发了与现有BI工具完全不同的基于大数据的数据表现层。5.(误区)Hadoop是ETL(Extract,Transform&Load)(正解)ETL其实有两层含义,它本身是一个概念,同时也是对一个产品类别(ProductCategory)的统称。所以当我们听到“某公司在做ETL产品”的对话时,里面的ETL和DB、ApplicationServer等名词一样,都是指向某类IT产品。但是,从概念上讲,ETL是指数据利用生命周期中的过程之一。和我前面提到的数据预处理是同一个概念。例如数据清洗(DataCleansing)、数据关联、数据聚合等,都属于这一类。所以当我们说Hadoop特别适合做ETL的时候,在概念上是正确的,也能明确定位Hadoop在企业数据应用中的作用。但是Hadoop毕竟不是ETL产品。相反,现有的ETL产品已经开始像BI一样在Hadoop上发展其可用性、连通性和兼容性。Etu团队以前在帮助客户导入Hadoop进行数据处理时,经常会使用脚本语言来实现一些应用场景。最近我们的技术顾问也开始使用3rd-partyETL工具来实现这一块。对于客户来说,这是他们比较熟悉的工具,也降低了他们进入Hadoop的门槛。6.(误区)Hadoop和传统存储没有区别,都特别适合做数据备份(DataArchive)(正确答案)熟悉存储的人,第一次看到Hadoop的时候,往往只有注意到它的分布式文件系统HDFS,然后开始比较它和现有存储的功能和特点,而忽略了Hadoop本身的并行运行。这是有道理的。毕竟MapReduce的概念比较抽象,在应用上难以捉摸。相反,HDFS是一个非常清晰具体的概念。Hadoop当然可以作为数据归档,但是如果你自己的数据不是经常或者偶尔使用的(也就是我们说的冷数据),Hadoop自带的HDFS就不会作为数据归档。特殊的优点,但传统存储的一些扩展特性,Hadoop本身不具备。虽然HDFS本身是一个很好的对象存储,也有scale-outNAS的底层特性,但也仅限于此。Hadoop本身并没有为它增加存储本身应该具备的功能。毕竟Hadoop最初设计的时候就是在考虑数据的存储和使用,跟存储的应用场景是完全不一样的。Hadoop本身需要解决的是数据入库后需要取出来进行处理或计算时遇到的困难。因此特别适用于网页点击流、CDR(通话详情记录)、GPS数据、系统日志等时序数据,因为这些数据具有需要频繁分析和处理的特点。在实际应用中,Hadoop和传统存储其实是相辅相成的。比如我们可能会把过去3到6个月的数据放在Hadoop上,因为这些数据的复用性很高,而6个月后的数据可能会归档在传统的存储中,因为复用的少很多。7.(误区)Hadoop是搜索引擎(SearchEngine)(正解)搜索确实是Hadoop的一个重要应用,但是Hadoop本身并不包含搜索引擎。在实践中,我们经常将HBase的索引设计应用于***来满足一些特定的搜索或查询应用,但是如果要满足全文搜索(full-textsearch)的需求,就必须构建一个Hadoop——基于搜索引擎。Lucene/Katta等开源都有相应的计划。如何利用Hadoop的特性实现一个强大的分布式搜索引擎,也是我们一直在关注并投入到未来产品蓝图中的一个重要方面。话题。8.(误区)基于Hadoop的推荐系统与传统推荐系统没有区别(正解)传统推荐系统只处理客户交易数据(transactiondata),多采用数据仓库或商业智能等解决方案,但是,除此之外对客户的交易数据,是否可以分析客户交易前的行为,进而产生推荐?特别是电子商务网站,客户在完成购买前点击浏览、搜索、放入购物车等行为包含了丰富的信息,可以用来轻松引导客户想要寻找什么样的产品。因此,如果所有这些信息都可以包含在生成推荐的过程中,则生成的推荐将是准确的。度数和丰富度当然可以大大提高。这正是新一代推荐系统将面临的挑战:除了交易数据之外,如何包含客户交互数据?数据之间存在着巨大的差异,其量级远大于交易数据量,对操作频率有着极高的要求,因此远超现有数据库或数据仓库的能力,这就是Hadoop的优势所在at,可以轻松扩展传统机器学习(MachineLearning)算法分析大数据集(LargeDatasets)的能力,同时具备横向扩展(Scale-out)的能力,可以轻松扩展数据集的增长,不管数据有多大都可以轻松搞定。9.(误区)Hadoop不适合处理小文件的应用(正回答)稍微了解Hadoop的人都会知道,HDFS的blocksize默认值为64MB,不建议调低,因为HDFS最初设计的时候,并不是为了处理碎片化的小文件。所以当我们说Hadoop不适合处理小文件的时候,在技术上是正确的,但是在实践中,有不同的方式来满足海量小文件管理的需求。我们曾经在中国指导过一家保险公司。它需要处理大约2亿个小图像文件(20KB~1MB),并且每天都在持续增长。例如,所有的客户签名、病历等都需要被扫描成图像文件存储起来,同时偶尔被相应的应用程序查询和调用。在实践中,我们将这些小图像文件的二进制文件存储在HBase——而不是HDFS——中进行管理,因此HDFS块大小的设置值不是重点。同时,利用高性能和高扩展性的特点,可以轻松满足多人同时在线快速查询的需求,并且随着文件数量的不断增加,水平扩展不再是问题。有很多类似的应用程序。例如,纸币的管理就是其中之一。因此,易图团队在中国市场为该应用规划了“海量小图片文件管理系统”解决方案,以满足此类应用的需求。客户需求。10.(误区)Hadoop不适合做日志管理(正解)当每天的日志量增长到一定程度时,现有的日志管理工具就会遇到瓶颈,所以国外的一些日志管理工具(如Splunk和ArcSight)都有发布了他们的Hadoop连接器,强调了他们与Hadoop的连接和兼容性。所以,如果客户对日志管理的需求是保存日志,随时查找日志,那么Hadoop本身就可以满足这样的应用。对于更复杂的日志管理和非常大量的日志,客户还可以选择从现有的日志管理工具中选择并使用Hadoop。
