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

一网打尽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云创新产品与应用项目征集,欢迎研发者、团队和创业企业参加!

在VB中模拟实现邮件传输 在VB中实现文件上传 在VB中使用UDP协议 在VB中用Outlook发电子邮件 在程序中打开 Internet 拨号连接窗口 -VB资料 在一个单位内部或通过广域协议(如X.25)互联的行业内部都有几十或上万台计算机互联,用Intrane 在应用中集成浏览器-VB资料 在桌面上建立一个 Internet 快捷键 -VB资料 VB怎样接收电子邮件(POP3协议简介) VB怎样用VB得知系统当前是否处于internet链结状态 VB制作自己的网络搜索软件 自动更新工作站的应用程序-VB资料 自己的IE——用VB制作浏览器 VB6制作Win98风格的工具栏 VB实现窗口的弹出式菜单 用VB做个漂亮的进度条 Cool 3D 浮動按鈕的模擬作法-VB资料 VB 5.0中实现鼠标拖放 VB5.0下工具条的制作 VB5.0中基于桌面的屏幕技巧 VB5.0中实现字体闪烁效果 VB5实现窗口图像缩放、滚动技巧 VB6.0动态加载ActiveX控件漫谈 VB编程步步高-表单篇 VB编程常见问题 VB编程中如何锁定鼠标 VB创建位图菜单 VB实现按钮浮动效果 VB应用程序中的工具提示和状态显示 VB中处理长列表框项的两种方法 VB中多级下拉列表的实现 php 中有类似asp里response.redriect功能的函数吗? 好久没来了,也散一贴,中秋快乐 用JSP或Javabean怎样取到IP地址啊???? 抛砖引玉--获得当前数据库中对象的依赖关系的算法 数据库问题,,,在线等 MBR中的一点问题 中秋节快乐,散分了 程序如何在运行时取得数据库的建表SQL ************* 中秋快乐,抗日光荣 ************* database profile不能创建? 采用JBuilder9+WebLogic8.1连接DB2的问题! 帮忙评评,客观一点。强烈给分。 问题还未解决,高手仍需帮忙!!!!!! 关于DDB与DIB概念的问题 深圳公司招聘DELPHI高手 在线等SQL SERVER中查询出数据导入到EXCEL 中 请问如何改变本页的浏览器中的地址栏的网名? 谁有Active Report for .Net 的破解版 关于串口通信2问 wince支不支持叫大容量物理内存的申请 中秋快乐,顶者有分。帮忙评评。 急! 求问用在BCB或DEPHI那种方法把标准文本文件导入数据库效率最高 一个初学.net的问题,望大家不要见笑!! 多个文件在光盘里面先后自动启动 C#中类型转换,请大家看看: 中秋节散分 关于.net下客户端与数据库字符集不同时的处理 大家中秋快乐!以前没散过分今天散点。 文档结构的问题 抢救,可以用vb.net写一个用户控件或动态库,在asp.net里调用吗? 请问大家一个问题 如何解压Linux下的.zip文件? 下接列表框的问题 来这里几天了,看大家都是很消极的,为什么? 可以动态增加<option>吗? datagird高手的问题! 数据库导入问题。在线等!急啊!!! 高手来帮忙 為何調用data module中的adoconnection會出錯。 怎样把几张jpg图转换成avi的文件 ★☆pb8异机连接sql server数据库的问题???50分献 菜鸟求问,急需回答!!! 有哪位高手知道 哪位同志能提供软件工程电子文档教程下载的站点给我 菜鸟问题 简单问题 ASP里流媒体上传问题 初学VC得困惑 用第三方类MultipartRequest上传文件时,怎样实现根据用户填写的表单来决定上传路径 当我插入一个usb设备,系统装好驱动后注册表会有变化吗? 日本:转基因食品进口大国央视曝中国富豪相亲会内幕 爱钱美女惨北京中心城区今日空气达6级严重污染 哥伦比亚反政府武装释放一名美国人质第五届全球化时代犯罪与刑法论坛在北京日本拟引进上百架美国无人机“监视”钓日媒:安倍访土耳其将游说土方勿购买中今日海外关键词(10月28日):语言网上零售成为西方企业进军中国的新通道土耳其总理:只有中国退出才可能购别国LG曲面手机G Flex亮相 11月伤痕被鱼吃的? 云南“鱼塘浮尸事件”守望湖泊成“丛林”长沙发布暴雨黄色预警高一点低一点巴西世界杯,只剩这颗好“牙”了大运河申遗,杭州祝福你世界杯将再演“兄弟德比”■竞彩参谋部中了大乐透1000万 温州老板喜获“伤痕是被打的还是被鱼咬的?假牙碎了一地纯唇欲动龙城咒扬辰天罡尘翳女主必死无敌催眠师传奇高手混校园吞天魔咒桃运邪仙大湿兄争锋天下天门旅游勐腊旅游龙泉旅游维西旅游资源旅游左贡旅游八美旅游永泰旅游寿光旅游邹城旅游青田旅游
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘