大数据开发必备工具

大数据应用开发的12个辅助开发工具:

                                            大数据开发必备工具_第1张图片

    在大数据应用的开发中,除了基础的Hadoop或者R语言之外,还有很多优秀的开发工具,能使开发者如虎添翼。

    “兵欲善其事,必先利其器”,无论你是从事大数据应用的开发,还是希望分析你的移动应用,这些工具都可以帮助你更快更好的发展。

 1 BitDeli

    BitDeli是一家刚刚成立的公司,他的产品就是可以让开发者利用Python脚本, 对应用进行分析。 Python脚本可以很简单, 也可以很复杂。一切可以由开发者来定制。 BitDeli的产品甚至包含了一些机器学习的模块。相比较庞大的Hadoop分析工具, BitDeli把自己比作是应用分析方面的RoR (Ruby on Rail)。

                                   大数据开发必备工具_第2张图片

2 Continuity

    Continuity的两个创始人是雅虎的前首席云架构师Todd Papaioannou和前Facebook的HiBase工程师Jonathan Gray。 他们的目的, 就是想使客户能够像雅虎和Facebook

利用大数据。 Continuity的产品App Fabric主要是把复杂的与Hadoop和HBase集群的工作作为一个抽象层, 提供各种大数据开发工具,来满足企业内部或外部数据需求。

                                         大数据开发必备工具_第3张图片

3 Flurry

     Flurry是个一站式的移动应用商店,它每年已经有100美元的营收了。 它不但帮助开发者在它的平台上开发,还可以帮助开发者通过运营数据, 对应用进行分析以改善应用。而且, Flurry平台还可以和广告网络相对接,帮助开发者更好的实现盈利。

                                             大数据开发必备工具_第4张图片

4 Google Predictive API

      在Google提供的众多开发工具中, Google Predictive API 是最酷的一个了。如果你有好的训练样本数据, 那么GooglePredictive API将会利用机器学习算法来为你的应用建立模型,并把这些模型整合到你的应用中去。 在Google给出的例程里,包括了反垃圾邮件, 推荐引擎,以及情绪分析等模型的搭建步骤和代码。

                                               

5 Infochimps

      尽管Infochimps把自己定义为面向企业的IT平台, 他们大数据平台对开发者来说也非常有帮助。它的技术平台叫做Wukong(悟空), 用来进行大数据环境的配置和管理。从起一个Hadoop进程到用Ruby脚本来传递数据流。 Wukong都可以让开发者的工作变得更简单。此外, Infochimps的平台还包括了一个数据市场,以API或者下载方式提供各类数据。

                                              大数据开发必备工具_第5张图片

6 Keen IO

       Keen IO是个强大的移动应用分析工具。开发者只需要简单到一行代码, 就可以跟踪他们想要的关于他们应用的任何信息。开发者接下来只需要做一些Dashboard或者查询的工作就可以了。

                                             大数据开发必备工具_第6张图片

7Kontagent

       Kontagent是一个移动,社交, 网站应用的分析平台。它基于Hadoop大数据平台而建。今年, Kontagent平台增添了新功能。它可以让用户直接采用Hive查询语言对数据进行任意查询和分析,而不像原来那样只能进行预定义的查询和分析

               大数据开发必备工具_第7张图片

8 Mortar Data

       Mortar Data是专为开发者打造的Hadoop开发平台,它用Pig和Python的组合替代了MapReduce以便开发者能简单地编写Hadoop管道(Pipeline)。 今年11月, 它推出了Mortar Data开源开发框架,利用开源社区来推动数据共享。 Mortar Data平台运行在亚马逊的云平台上。 支持亚马逊S3以及MangoDB。

9 Placed Analytics

       利用脚本语言以及API, PlacedAnalytics能够提供针对移动和网络应用的详细用户行为分析。包括, 用户使用时间和地理位置信息。 这些可以帮助开发者的应用更好地吸引广告商, 也可以帮助开发者对自己的应用进行改善。

                                                          大数据开发必备工具_第8张图片

10 Precog

      Precog提供的是一个基于开源查询语言Quirrel的交互式开发环境,名为Labcoat。可以帮助开发者进行应用分析的开发。这个IDE环境还提供了关于Quirrel的教程,以及其他一些复杂的函数。 用公司首席运营官Jeff Carr的话来说:“就算是一个非技术人员, 几个小时也能掌握基本功能。”

11 Spring For Apache Hadoop

     尽管Hadoop是用Java写的,但是这并不意味着, 在Hadoop上编程或者使用Hadoop对Java程序员来说就很简单。因此, 在2012年初, SpringSource宣布推出了SpringFor Apache Hadoop项目。 把Spring开发框架和Hadoop结合起来。 这样也便于其他的Spring应用或者基于Java虚拟机的脚本, 更好地和Hadoop以及利用Hadoop的其他技术如Hive或者HBase进行整合。

12 StatMix

      和BitDeli以及Keen IO一样,StatMix也希望能够使开发者用他们所熟知的语言来进行数据查询与分析。 因此, 出来提供预定义的查询之外, StatMix也提供API和代码库来让开发者定制化的查询。并可以把不同数据源的查询结果整合在一个定制的Dashboard里。

                                                     大数据开发必备工具_第9张图片

13 Spark

         Spark是一个基于内存计算的开源集群计算系统,目的是更快速的进行数据分析Spark由加州伯克利大学AMP实验室Matei为主的小团队使用Scala开发开发,其核心部分的代码只有63Scala文件,非常轻量级。 Spark 提供了与 Hadoop 相似的开源集群计算环境,但基于内存和迭代优化的设计,Spark 在某些工作负载表现更优秀。

         在2014上半年,Spark开源生态系统得到了大幅增长,已成为大数据领域最活跃的开源项目之一,当下已活跃在HortonworksIBMClouderaMapRPivotal等众多知名大数据公司。那么Spark究竟以什么吸引了如此多的关注,这里我们看向Dzone上的6个总结。

(1)      轻量级快速处理。着眼大数据处理,速度往往被置于第一位,我们经常寻找能尽快处理我们数据的工具。Spark允许Hadoop集群中的应用程序在内存中以100倍的速度运行,即使在磁盘上运行也能快10倍。Spark通过减少磁盘IO来达到性能提升,它们将中间处理数据全部放到了内存中。

大数据开发必备工具_第10张图片 

        Spark使用了RDDResilient Distributed Dataset)的理念,这允许它可以透明的内存中存储数据,只在需要时才持久化到磁盘。这种做法大大的减少了数据处理过程中磁盘的读写,大幅度的降低了所需时间。

(2)      易于使用,Spark支持多语言。Spark允许JavaScalaPython,这允许开发者在自己熟悉的语言环境下进行工作。它自带了80多个高等级操作符,允许在shell中进行交互式查询。

(3)      支持复杂查询。在简单的“map”“reduce”操作之外,Spark还支持SQL查询、流式查询及复杂查询,比如开箱即用的机器学习机图算法。同时,用户可以在同一个工作流中无缝的搭配这些能力。

(4)       实时的流处理。对比MapReduce只能处理离线数据,Spark支持实时的流计算。Spark依赖Spark Streaming对数据进行实时的处理,当然在YARN之后Hadoop也可以借助其他的工具进行流式计算。对于Spark StreamingCloudera的评价是:

 

                                                                                                                       大数据开发必备工具_第11张图片

·        简单:轻量级且具备功能强大的APISparks Streaming允许你快速开发流应用程序。

·        容错:不像其他的流解决方案,比如Storm,无需额外的代码和配置,Spark Streaming就可以做大量的恢复和交付工作。

·        集成:为流处理和批处理重用了同样的代码,甚至可以将流数据保存到历史数据中。

 5.   可以与Hadoop和已存Hadoop数据整合。Spark可以独立的运行,除了可以运行在当下的YARN集群管理之外,它还可以读取已有的任何Hadoop数据。这是个非常大的优势,它可以运行在任何Hadoop数据源上,比如HBaseHDFS等。这个特性让用户可以轻易迁移已有Hadoop应用,如果合适的话。

6.   活跃和无限壮大的社区。Spark起源于2009年,当下已有超过50个机构250个工程师贡献过代码,和去年六月相比,代码行数几乎扩大三倍,这是个令人艳羡的增长。

你可能感兴趣的:(大数据,大数据)