说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

一网打尽13款开源Java大数据工具,从理论到实践的剖析

HTML文档下载 WORD文档下载 PDF文档下载
Java Code Geeks联合创始人Byron Kiourtzoglou近日发表文章,从理论到实践剖析了大数据的4个V,并于文章最后分享了Java工程师可能会需要的13个主流开源大数据工具。

大数据几乎已成为所有商业领域共有的最新趋势,然而大数据究竟是什么?是噱头、泡沫,又或是真如传言一样的重要。

事实上,大数据是个非常简单的术语——就像它所说的一样,是非常大的数据集。那么究竟有大多?真实的答案就是“如你所想的那么大”!

那么为什么会产生如此之大的数据集?因为当今的数据已经无所不在并且存在着巨大的回报:收集通信数据的RFID传感器,收集天气信息的传感器,移动设备给社交网站发送的GPRS数据包,图片视频,在线购物产生的交易记录,应有尽有!大数据是一个巨大的数据集,包含了任何数据源产生的信息,当然前提是这些信息是我们感兴趣的。

然而大数据的含义绝不只与体积相关,因为大数据还可以用于寻找新的真知、形成新的数据和内容;我们可以使用从大数据中提取的真知、数据和内容去使商业更加灵活,以及回答那些之前被认为远超当前范畴的问题。这也是大数据被从以下4个方面定义的原因:Volume(体积)、Variety(多样)、Velocity(效率)以及Veracity(Value,价值),也就是大数据的4V。下面将简述每个特性以及所面临的挑战:

1. Volume

Volume说的是一个业务必须捕获、存储及访问的数据量,仅仅在过去两年内就生产了世界上所有数据的90%。现今的机构已完全被数据的体积所淹没,轻易的就会产生TB甚至是PB级不同类型的数据,并且其中有些数据需要被组织、防护(窃取)以及分析。

2. Variety

世界上产生的数据有80%都是半结构化的,传感器、智能设备和社交媒体都是通过Web页面、网络日志文件、社交媒体论坛、音频、视频、点击流、电子邮件、文档、传感系统等生成这些数据。传统的分析方案往往只适合结构化数据,举个例子:存储在关系型数据库中的数据就有完整的结构模型。数据类型的多样化同样意味着为支持当下的决策制定及真知处理,我们需要在数据储存和分析上面进行根本的改变。Variety代表了在传统关系数据库中无法轻易捕获和管理的数据类型,使用大数据技术却可以轻松的储存和分析。

3. Velocity

Velocity则需要对数据进行近实时的分析,亦称“sometimes 2 minutes is too late!”。获取竞争优势意味着你需要在几分钟,甚至是几秒内识别一个新的趋势或机遇,同样还需要尽可能的快于你竞争对手。另外一个例子是时间敏感性数据的处理,比如说捕捉罪犯,在这里数据必须被收集后就完成被分析,这样才能获取最大价值。对时间敏感的数据保质期往往都很短,这就需求组织或机构使用近实时的方式对其分析。

4. Veracity

通过分析数据我们得出如何的抓住机遇及收获价值,数据的重要性就在于对决策的支持;当你着眼于一个可能会对你企业产生重要影响的决策,你希望获得尽可能多的信息与用例相关。单单数据的体积并不能决定其是否对决策产生帮助,数据的真实性和质量才是获得真知和思路最重要的因素,因此这才是制定成功决策最坚实的基础。

然而当下现有的商业智能和数据仓库技术并不完全支持4V理论,大数据解决方案的开发正是针对这些挑战。

下面将介绍大数据领域支持Java的主流开源工具

1. HDFS

HDFS是Hadoop应用程序中主要的分布式储存系统, HDFS集群包含了一个NameNode(主节点),这个节点负责管理所有文件系统的元数据及存储了真实数据的DataNode(数据节点,可以有很多)。HDFS针对海量数据所设计,所以相比传统文件系统在大批量小文件上的优化,HDFS优化的则是对小批量大型文件的访问和存储。

2. MapReduce

Hadoop MapReduce是一个软件框架,用以轻松编写处理海量(TB级)数据的并行应用程序,以可靠和容错的方式连接大型集群中上万个节点(商用硬件)。

3. HBase

Apache HBase是Hadoop数据库,一个分布式、可扩展的大数据存储。它提供了大数据集上随机和实时的读/写访问,并针对了商用服务器集群上的大型表格做出优化——上百亿行,上千万列。其核心是Google Bigtable论文的开源实现,分布式列式存储。就像Bigtable利用GFS(Google File System)提供的分布式数据存储一样,它是Apache Hadoop在HDFS基础上提供的一个类Bigatable。

4. Cassandra

Apache Cassandra是一个高性能、可线性扩展、高有效性数据库,可以运行在商用硬件或云基础设施上打造完美的任务关键性数据平台。在横跨数据中心的复制中,Cassandra同类最佳,为用户提供更低的延时以及更可靠的灾难备份。通过log-structured update、反规范化和物化视图的强支持以及强大的内置缓存,Cassandra的数据模型提供了方便的二级索引(column indexe)。

5. Hive

Apache Hive是Hadoop的一个数据仓库系统,促进了数据的综述(将结构化的数据文件映射为一张数据库表)、即席查询以及存储在Hadoop兼容系统中的大型数据集分析。Hive提供完整的SQL查询功能——HiveQL语言,同时当使用这个语言表达一个逻辑变得低效和繁琐时,HiveQL还允许传统的Map/Reduce程序员使用自己定制的Mapper和Reducer。

6. Pig

Apache Pig是一个用于大型数据集分析的平台,它包含了一个用于数据分析应用的高级语言以及评估这些应用的基础设施。Pig应用的闪光特性在于它们的结构经得起大量的并行,也就是说让它们支撑起非常大的数据集。Pig的基础设施层包含了产生Map-Reduce任务的编译器。Pig的语言层当前包含了一个原生语言——Pig Latin,开发的初衷是易于编程和保证可扩展性。

7. Chukwa

Apache Chukwa是个开源的数据收集系统,用以监视大型分布系统。建立于HDFS和Map/Reduce框架之上,继承了Hadoop的可扩展性和稳定性。Chukwa同样包含了一个灵活和强大的工具包,用以显示、监视和分析结果,以保证数据的使用达到最佳效果。

8. Ambari

Apache Ambari是一个基于web的工具,用于配置、管理和监视Apache Hadoop集群,支持Hadoop HDFS,、Hadoop MapReduce、Hive、HCatalog,、HBase、ZooKeeper、Oozie、Pig和Sqoop。Ambari同样还提供了集群状况仪表盘,比如heatmaps和查看MapReduce、Pig、Hive应用程序的能力,以友好的用户界面对它们的性能特性进行诊断。

9. ZooKeeper

Apache ZooKeeper是一个针对大型分布式系统的可靠协调系统,提供的功能包括:配置维护、命名服务、分布式同步、组服务等。ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。

10. Sqoop

Sqoop是一个用来将Hadoop和关系型数据库中的数据相互转移的工具,可以将一个关系型数据库中数据导入Hadoop的HDFS中,也可以将HDFS中数据导入关系型数据库中。

11. Oozie

Apache Oozie是一个可扩展、可靠及可扩充的工作流调度系统,用以管理Hadoop作业。Oozie Workflow作业是活动的Directed Acyclical Graphs(DAGs)。Oozie Coordinator作业是由周期性的Oozie Workflow作业触发,周期一般决定于时间(频率)和数据可用性。Oozie与余下的Hadoop堆栈结合使用,开箱即用的支持多种类型Hadoop作业(比如:Java map-reduce、Streaming map-reduce、Pig、 Hive、Sqoop和Distcp)以及其它系统作业(比如Java程序和Shell脚本)。

12. Mahout

Apache Mahout是个可扩展的机器学习和数据挖掘库,当前Mahout支持主要的4个用例:

  • 推荐挖掘:搜集用户动作并以此给用户推荐可能喜欢的事物。
  • 聚集:收集文件并进行相关文件分组。
  • 分类:从现有的分类文档中学习,寻找文档中的相似特征,并为无标签的文档进行正确的归类。
  • 频繁项集挖掘:将一组项分组,并识别哪些个别项会经常一起出现。

13. HCatalog

Apache HCatalog是Hadoop建立数据的映射表和存储管理服务,它包括:

  • 提供一个共享模式和数据类型机制。
  • 提供一个抽象表,这样用户就不需要关注数据存储的方式和地址。
  • 为类似Pig、MapReduce及Hive这些数据处理工具提供互操作性。

原文链接: What is Big Data – Theory to Implementation (编译/仲浩 审校/包研)

“  第五届中国云计算大会 ”将于2013年6月5-7日在北京国家会议中心隆重举行。猛击报名!

相关活动已经火热启动:

2013中国云计算大调查,每周大奖等你拿! “

Innovation Cloud 2013云创新产品与应用项目征集,欢迎研发者、团队和创业企业参加!

美国人眼中的腾讯 英特尔发布64位凌动处理器Merrifield 布局移动市场 OvershareKit:开源的iOS社交分享工具库 Ruby 2.1.1发布,改进系统加速,服务器兼容等问题 专访Ejoy2D作者云风:因Lua而生的开源图形引擎 当DDoS跨入400Gbps时代,那些来自孩子们的攻击该如何应对! Mesos渐入主流,Twitter模式有望“无限复制” 几十亿美元当头,你现实世界信息是否还会安全? 华为V3服务器挑战小型机,多路高端市场汹涌 迟到的祝福:Ruby生日快乐!编程快乐! 无缘CEO Stephen Elop将执掌微软硬件业务部门 又一API聚集地 3scale成立API Codex 你应该放弃的八大设计元素 Tropo与华为达成合作 Tropo API首次可供中国电信客户使用 抢先看:2014即将召开的Web Design大会 小米盒子2视频推送测试及解决播放优酷视频卡的问题 《近匠》UPYUN——从开发者变为服务者 移动开发者必须了解的10大跨平台工具 不差钱:30+收购案,170亿美元投资,IBM再度出手收购Cloudant 微软反击谷歌:Windows授权费降七成+硬件要求减少一半 [测试] 你的HTML5知识够金质吗? 基于OpenStack的虚拟机在线迁移 当64bit遇上8核心:高通发布Snapdragon 615 深圳Maker Faire创客市集:国内外创客组团来参展 腾讯正式发布QQ浏览器微信版 摩托罗拉今年推智能手表,有望提高续航能力 众筹未来必拥抱众智 果合报告:iOS趋势及手游开发六大核心策略 无视OpenStack的前车之鉴,SAP等毅然支持Cloud Foundry 轻松搞定TB级数据,开源GraphLab突破人类图计算“极限值” 英特尔至强E7 v2处理器:2倍性能提升,3倍内存容量,4倍I/O带宽 请问:用SQL Select数据源建立一个数据窗口,该窗口包含两的表的内容,两个表的字段已通过主键(ID)进行了连接,可是在运行过程中能检索数据,但是却不能进行增加、删除、修改的操作,不知为什么? 在c++ builder 延时5秒怎么做到 类似与c++的sleep()函数功能 请教一下:站点服务器上的服务扩咱展不兼容怎么解决啊,我要疯了。 关于pb调chm格式文件的问题?? to killerdanny 急需解答 关于ActiveX DLL的问题,希望高手帮助 关于文件操作的问题 关于installshield更改所打包的应用程序的ICON的问题!急!!! 请问谁那里有页面规范、代码规范、SQL规范?重金求购 欲寻求项目来作(报酬多少无所谓)!!! 请问各位大虾,在DELPHI中EXE文件的调用方法? 菜鸟问题:忘了如何定义几位的变量?谁能告诉我,谢谢! 如果我要在window.showModalDialog 打开的页面中返回一个值,或者在被打开的页面中改变打开打开者中的某属性该怎么做? 关于木马程序的设计! 新手的问题(关于成员函数使用的位置???) 谁知道那里有ado教程 请高手介绍点用perl操纵mysql的经验和方法,不胜感激 about BCB 的数据库开发问题 请大家详细说一下SQL Select数据源的具体使用方法,书上说的太简单了,用SQL Select数据源建立的数据窗口为什么不能进行增加、删除操作,还不让修改,愁啊! 诸位:这个显示隐藏工具栏状态栏的代码有三处错,可我不知为什么???以指出 怎么将ACCESS2000表中的内容导入到SQLSERVER数据库中 我想把LOCAL声明改为.data? 可不行,为什么? .net似乎对组件编程的支持很强?就是说,似乎省区了很多繁琐的细节? 各位有人可以告诉我怎么实现SMTP用户验证吗? 大家有用这个软件吗?有的话请写下你使用的感觉,有什么不足? CoolSoft HTML Optimizer 谁那里有页面开发规范,重金求购 帮助中HTML文件的链接问题!!! asp.net是否可以用任何一种vs.net语言? 请教---------一个函数返回指针值的问题!!!! 如何可以筛选出被修改过的数据记录。。。。。。 如何在广域网上实现SOCKET通讯,与局域网有什么不同? invocation在Java中怎么翻译啊? oracle中增量导数据的问题!! 过多的异常捕捉会影响程序性能吗? 二个form时怎样用request来收取数据? 在sybase里健好的表如何从新修改? 一个小问题,这个变量是什么类型的??? 使用通讯控件的疑惑 怎样实现在文本文件中修改某一行的其中字符串 Nokia MobileSet中如何让手机识别中文? 注册表坏了怎么办? 大哥们,能否告诉小弟,在 ms sql server2000中如何修改 sa 用户的口令 我的超星不能用了!!! 十万火急:PDF文件修改 大哥们,能否告诉小弟,在 ms sql server2000中如何修改 sa 用户的口令.. 作为初学者,每天的问题太多了?帮我看一下下面的小问题 我上午53,下午58.该不会下马吧????/我相知道什么时候才能知道是否已经Pass,什么时候下证? 有关DELPHI6中使用SKINENGINE??? C++ Builder中多国语言的问题 在哪下载到Exchange 2000 Server Resource Kit? 向量安某个向量平移是什么意思?怎么l个平移法?公式?例己知A(3,7),B(5,2),将向量AB按向量a=(1,2)平移后所得向量的坐标是?什么叫按某个向量平移啊?怎么个移法?根据哪一点哪条路径移?帮我描述一 关于图形在格点上平移的小学数学题,越多越好 关于仰角及锐角三角比的应用.如图,在地面A处看一竖直在高台上铁塔PQ的顶点P的仰角为45°,朝铁塔方向前进12米到达B处,又测得P的仰角为60°,Q的仰角为30°,求铁塔PQ的高度. 向量平移怎么向量平移已知直线l:x-2y+m=0按向量a=(2,-3)平移后得到的直线l1与圆(x-2)²+(y-1)²=5相切,m值? 导线 电源 开关 用电器的作用分别是什么 【初三数学】在地面上一点,测得一电视塔尖的仰角为45°,沿水平方向,再向塔底前进am,在地面上一点,测得一电视塔尖的仰角为45°,沿水平方向,再向塔底前进am,又测得塔尖的仰角为60°,那么电视 把一个图像按某向量平移是什么意思啊 ?什么叫按某向量平移?怎么按某向量平移? 在电源、用电器、导线、开关中.提供电能的是( ) 消耗电能的是( ) .而开关的作用是( ) 导线直接接在电源两极上,电流不经过用电器的电路叫什么? 若锌和镁的质量为4.8克,与100克稀硫酸恰好完全反应,则该稀硫酸的质量分数可能为多少? 1.用导线把用电器的两端直接连接起来,叫做用电器短路.2.用一根导线将电源的两极直接连接起来,叫做电源短路如果配上图就好了 导线直接接在电源两级上,电流不经过用电器的电路叫什么 把电源,用电器,________用导线连接起来组成的电流的路径叫电路 石灰水溶质的化学式 为什么串联电路中用一根导线把用电器两端接在一起,电流不通过用电器? 平移的概念 从能量角度分析,电源( )电能,用电器( )电能,开关( )电能,导线( )电能 是用导线直接连接用电器两端?那为什么这个电路图不是短接?为什么电流不会经过?附图 平移的定义在平面内,一个图形由一个位置沿某个方向()另一个位置,这样的图形叫做平移.平移不改变图形的()和() 澄清石灰水的化学式 一个电路中可以没有开关吗,只有一个用电器和电源导线 平移的定义是什么?急!快 图和题目在这里说明理由 几个溶液中溶质的化学式1、氯化钠溶液2、锌和过量的稀硫酸充分反应的溶液3、过氧化氢溶液4、镁和稀硫酸恰好反应形成的溶液————————————————————————溶液的 平移的定义是什么? RT三角形ABC的斜边BC为一边在三角形ABC的同侧作正方形BCEF 设正方形的中心为O 连接AO 如果AB=4 AO=6根号2 那么AC的长?最上面B 最左C 最右F 最下E 中间 O 左上是 A 写溶液中溶质的化学式食盐水 澄清石灰水 过氧化氢溶液 稀盐酸 浓硫酸 白磷的二硫化碳溶液 铁与硫酸铜溶液恰好完全反应后形成的溶液二氧化碳是碳酸溶液的溶质吗?蔗糖水属于溶液的根本 平移的特征定义 在△ABC中,∠BAC=90°,AB=AC,P是△ABC内一点,PA=2,PB=1,PC=3,求∠APB的度数. 写出下列溶液中溶质的化学式(1)硫酸铜溶液(2)酒精溶液(3)澄清石灰水(4)稀盐酸(5)锌与盐酸恰好完全反应后的溶液(6)生理盐水 生理盐水的化学式 先看清条件,再想想作辅助线. 关于俯角和仰角的问题1.在高为200米的高楼楼顶分别测得一建筑物的顶部和底部的俯角为45°和60°.求建筑物的高度(图是自己画的)2.如图,某人在A出测得铁塔PQ的塔顶P的仰角为α,此人向铁塔 内阻到底是用电器、电源内部的电阻 还是导线的电阻? 在离旗杆20m的地方用测角仪测得旗杆顶的仰角为α,如果测角仪高为1.5m,那么旗杆的高度为____(用含α的三角函数表示) 根据密度 比热容 时间 怎样算功率? 生活中有哪些平移现象 电流过大会引起火灾:在家庭电路中各用电器________联,如果多个用电器同时使用,电路中总电流__________,超过_______和 所能承受的最大电流时,会因产生热量过多,温度过高而引起火灾. 锌与盐酸反应的化学式是? 在日常生活中,你看到过的平移现象有 、 、 、 ;旋转现象有 、 、 、 .平移 升旗杆上的旗、电梯上的人、传输带上的物品、推拉门、推拉窗 旋转 旋转木马、摩天轮、电风扇、转盘、方向盘 家庭电路中的用电器电功率过大,容易发生火灾.这是为什么 写出下列反应后所得溶液中的溶质、溶剂(用化学式表示)将铁钉投入稀盐酸中恰好完全反应后所得的溶液______、______;将铁钉投入过量硫酸铜溶液中,完全反应后所得的溶液________、________;生 6.5克镁与100克稀硫酸溶液恰好反应计算:(1)可制得氢气多少克?(2)这种硫酸溶液的溶质的质量分数是多少(3)完全反应后,所得溶液的溶质质量分数是多少 生活中哪些是平移现象不要让我去自己查的,要完整. 家庭电路中多个用电器同时使用,容易导致接线过热,甚至引起火灾,请你利用所学过的电学知识解释其中的道理 (5)若测得镁铝合金中镁的质量分数为4%,现取n克镁铝合金,投入到足量的质量分数为9.8%的稀硫酸溶液中,共收集得到氢气0.8克,该合金的质量n为? 观察生活周围各处,指出几个平移现象,并加以描述 关于俯角与仰角怎样求OC?OC/tan32°-OC/tan60°=35 一个大功率的用电器,用铝线接入电路后,工作过程中发现导线太热,为了不使导线过热,下列措施好的是A改用长短粗细都相同的铜导线B将铝线加长些C改用长短相同,更粗些的导线D将铝线减短些 日常生活中有哪些平移现象? 电路中用电器被短路 此时这个用电器在电路中相当于导线?教哈 一个大功率的用电器,用铝线接入电源後,工作过程中发现导体太热,为了不使导线过热,下列措施好的是 A.改用长短、粗细一样的铜导线 B.将铝导线加长些 C.改用长短一样,更粗些的铝导线 D.将 在生理盐水中,它的溶质(化学式)是什么? 将两个用电器串联在电路后再用导线连接其两端是否会短路 按向量平移的问题,麻烦解释清楚点啊……f(x)=X^2+4x+5的图像按a平移后为y=X^2的图像,则a=也就是说按向量平移就是给原式中x-h,y-k? 如图,折线AOBC是一段围墙,一根5米长的绳子的一端拴在O点处的柱子上,另一端拴着一只小羊.(1)如果OA=6米,OB=3米,BC=4米,∠AOB=90°,∠MBC=60°,求小羊活动的最大区域面积.(π取3结果精确到0.1平 为什么电流优先通过导线而用电器被短路所谓的路线较为“平坦” 老师讲 电流是聪明的 按向量平移y=2^x按向量(-2,1)平移得到的解析式? 平移后的图形是实线还是虚线 小河对岸有一铁塔ab在c处测得塔顶A的仰角为30°面对铁塔前进20米到达D处,测得塔顶A的仰角为45°,求铁塔的高度着急Q V Q
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn