十种程序语言帮你读懂大数据的“秘密”

文章讲的是十种程序语言帮你读懂大数据的“秘密”,随着大数据的热潮不断升温,几乎各个领域都有洪水倾泻般的信息涌来,面对用户成千上万的浏览记录、记录行为数据,如果就单纯的Excel来进行数据处理是远远不能满足的。但如果只用一些操作软件来分析,而不怎么如何用逻辑数据来分析的话,那也只是简单的数据处理。

  替代性很高的工作,而无法深入规划策略的核心。

  当然,基本功是最不可忽略的环节,想要成为数据科学家,对于这几个程序你应该要有一定的认识:

  R

  若要列出所有程序语言,你能忘记其他的没关系,但最不能忘的就是R。从1997年悄悄地出现,最大的优势就是它免费,为昂贵的统计软件像是Matlab或SAS的另一种选择。

  但是在过去几年来,它的身价大翻转,变成了资料科学界眼中的宝。不只是木讷的统计学家熟知它,包括WallStreet交易员、生物学家,以及硅谷开发者,他们都相当熟悉R。多元化的公司像是Google、Facebook、美国银行以及NewYorkTimes通通都使用R,它的商业效用持续提高。

  R的好处在于它简单易上手,透过R,你可以从复杂的数据集中筛选你要的数据,从复杂的模型函数中操作数据,建立井然有序的图表来呈现数字,这些都只需要几行程序代码就可以了,打个比方,它就像是好动版本的Excel。

  R最棒的资产就是活跃的动态系统,R社群持续地增加新的软件包,还有以内建丰富的功能集为特点。目前估计已有超过200万人使用R,最近的调查显示,R在数据科学界里,到目前为止最受欢迎的语言,占了回复者的61%(紧追在后的是39%的Python)。

  它也吸引了WallStreet的注目。传统而言,证券分析师在Excel档从白天看到晚上,但现在R在财务建模的使用率逐渐增加,特别是可视化工具,美国银行的副总裁NiallO’Conno说,「R让我们俗气的表格变得突出」。

  在数据建模上,它正在往逐渐成熟的专业语言迈进,虽然R仍受限于当公司需要制造大规模的产品时,而有的人说他被其他语言篡夺地位了。

  “R更有用的是在画图,而不是建模。”顶尖数据分析公司Metamarkets的CEO,MichaelDriscoll表示,

  “你不会在Google的网页排名核心或是Facebook的朋友们推荐算法时看到R的踪影,工程师会在R里建立一个原型,然后再到Java或Python里写模型语法”。

  举一个使用R很有名的例子,在2010年时,PaulButler用R来建立Facebook的世界地图,证明了这个语言有多丰富多强大的可视化数据能力,虽然他现在比以前更少使用R了。

  “R已经逐渐过时了,在庞大的数据集底下它跑的慢又笨重”Butler说。

  所以接下来他用什么呢?

  Python

  如果说R是神经质又令人喜爱的Geek,那Python就是随和又好相处的女生。

  Python结合了R的快速、处理复杂数据采矿的能力以及更务实的语言等各个特质,迅速地成为主流,Python比起R,学起来更加简单也更直观,而且它的生态系统近几年来不可思议地快速成长,在统计分析上比起R功能更强。

  Butler说,“过去两年间,从R到Python地显著改变,就像是一个巨人不断地推动向前进”。

  在数据处理范畴内,通常在规模与复杂之间要有个取舍,而Python以折衷的姿态出现。IPythonNotebook(记事本软件)和NumPy被用来暂时存取较低负担的工作量,然而Python对于中等规模的数据处理是相当好的工具;Python拥有丰富的资料族,提供大量的工具包和统计特征。

  美国银行用Python来建立新产品和在银行的基础建设接口,同时也处理财务数据,“Python是更广泛又相当有弹性,所以大家会对它趋之若鹜。”O’Donnell如是说。

  然而,虽然它的优点能够弥补R的缺点,它仍然不是最高效能的语言,偶尔才能处理庞大规模、核心的基础建设。Driscoll是这么认为的。

  Julia

  今日大多数的数据科学都是透过R、Python、Java、Matlab及SAS为主,但仍然存在着鸿沟要去弥补,而这个时候,新进者Julia看到了这个痛点。

  Julia仍太过于神秘而尚未被业界广泛的采用,但是当谈到它的潜力足以抢夺R和Python的宝座时,数据黑客也难以解释。原因在于Julia是个高阶、不可思议的快速和善于表达的语言,比起R要快的许多,比起Python又有潜力处理更具规模的数据,也很容易上手。

  “Julia会变的日渐重要,最终,在R和Python可以做的事情在Julia也可以”。Butler是这么认为的。

  就现在而言,若要说Julia发展会倒退的原因,大概就是它太年轻了。Julia的数据小区还在初始阶段,在它要能够和R或Python竞争前,它还需要更多的工具包和软件包。

  Driscoll说,它就是因为它年轻,才会有可能变成主流又有前景。

  Java

  Driscoll说,Java和以Java为基础的架构,是由硅谷里最大的几家科技公司的核心所建立的,如果你从Twitter、Linkedin或是Facebook里观察,你会发现Java对于所有数据工程基础架构而言,是非常基础的语言。

  Java没有和R和Python一样好的可视化功能,它也不是统计建模的最佳工具,但是如果你需要建立一个庞大的系统、使用过去的原型,那Java通常会是你最基的选择。

  Hadoop and Hive

  为了迎合大量数据处理的需求,以Java为基础的工具群兴起。Hadoop为处理一批批数据处理,发展以Java为基础的架构关键;相较于其他处理工具,Hadoop慢许多,但是无比的准确和可被后端数据库分析广泛使用。和Hive搭配的很好,Hive是基于查询的架构下,运作的相当好。

  Scala

  又是另一个以Java为基础的语言,和Java很像,对任何想要进行大规模的机械学习或是建立高阶的算法,Scala会是逐渐兴起的工具。它是善于呈现且拥有建立可靠系统的能力。

  “Java像是用钢铁建造的;Scala则是让你能够把它拿进窑烤然后变成钢的黏土”Driscoll说。

  Kafka andStorm

  说到当你需要快速的、实时的分析时,你会想到什么?Kafka将会是你的最佳伙伴。其实它已经出现五年有了,只是因为最近串流处理兴起才变的越来越流行。

  Kafka是从Linkedin内诞生的,是一个特别快速的查询讯息系统。Kafka的缺点呢?就是它太快了,因此在实时操作时它会犯错,有时候会漏掉东西。

  鱼与熊掌不可兼得,「必须要在准确度跟速度之间做一个选择」,Driscoll说。所以全部在硅谷的科技大公司都利用两个管道:用Kafka或Storm处理实时数据,接下来打开Hadoop处理一批批处理数据系统,这样听起来有点麻烦又会有些慢,但好处是,它非常非常精准。

  Storm是另一个从Scala写出来的架构,在硅谷逐渐大幅增加它在串流处理的受欢迎程度,被Twitter并购,这并不意外,因为Twitter对快速事件处理有极大的兴趣。

  Matlab

  Matlab可以说是历久不衰,即使它标价很高;在非常特定的利基市场它使用的相当广泛,包括密集的研究机器学习、信号处理、图像辨识等等。

  Octave

  Octave和Matlab很像,除了它是免费的之外。然而,在学术信号处理的圈子,几乎都会提到它。

  GO

  GO是另一个逐渐兴起的新进者,从Google开发出来的,放宽点说,它是从C语言来的,并且在建立强大的基础架构上,渐渐地成为Java和Python的竞争者。

  这么多的软件可以使用,但我认为不见得每个都一定要会才行,知道你的目标和方向是什么,就选定一个最适合的工具使用吧!可以帮助你提升效率又达到精准的结果。

作者:王玉圆

来源:IT168

原文链接:十种程序语言帮你读懂大数据的“秘密”

时间: 2024-12-21 22:30:35

十种程序语言帮你读懂大数据的“秘密”的相关文章

【图解】九张图带你读懂大数据医疗

文章讲的是[图解]九张图带你读懂大数据医疗,互联网大框架的结构下,互联网+医疗的个性化服务,能给医疗保健工作者和消费者带来哪些真正的福利呢,首先可以提高效益减少废物.增强了预防传染病的能力.对于个人公共卫生.疾病预防和治疗都有很大的帮助.医学的临床试验等等工作,都在造福于我们. 人们都想选择个性化的健康医疗,为了实现这个目标,我们必须让大数据参与到破译和分析个人的所思.所需中.除了作为一个行业的流行语以外,大数据可以为医疗保健工作者和消费者带来怎样的成功呢? 下面的信息图是由Evariant公司

一图读懂大数据生态 大数据地图3.0

文章讲的是一图读懂大数据生态 大数据地图3.0,2012年,FirstMark资本的Matt Turck绘制了大数据生态地图2.0版本,涵盖了大数据的38种商业模式,被业界奉为大数据创业投资的清明上河图.两年后的今天,经过漫长的等待,Turck终于推出大数据生态地图3.0版本.(期间bloomberg推出过一个2013版大数据生态地图) 在大数据生态地图3.0版中,Turck从一个风险投资者的角度对两年来大数据市场的最新发展进行了深入的研判,并对未来趋势进行解读,以下是Turck眼中大数据市场的

大数据究竟是什么?一篇文章让你认识并读懂大数据

在写这篇文章之前,我发现身边很多IT人对于这些热门的新技术.新趋势往往趋之若鹜却又很难说的透彻,如果你问他大数据和你有什么关系?估计很少能说出一二三来.究其原因,一是因为大家对新技术有着相同的原始渴求,至少知其然在聊天时不会显得很"土鳖":二是在工作和生活环境中真正能参与实践大数据的案例实在太少了,所以大家没有必要花时间去知其所以然. 我希望有些不一样,所以对该如何去认识大数据进行了一番思索,包括查阅了资料,翻阅了最新的专业书籍,但我并不想把那些零散的资料碎片或不同理解论述简单规整并堆

一篇对大数据深度思考的文章,让你认识并读懂大数据

在写这篇文章之前,我发现身边很多IT人对于这些热门的新技术.新趋势往往趋之若鹜却又很难说的透彻,如果你问他大数据和你有什么关系?估计很少能说出一二三来.究其原因,一是因为大家对新技术有着相同的原始渴求,至少知其然在聊天时不会显得很"土鳖";二是在工作和生活环境中真正能参与实践大数据的案例实在太少了,所以大家没有必要花时间去知其所以然. 我希望有些不一样,所以对该如何去认识大数据进行了一番思索,包括查阅了资料,翻阅了最新的专业书籍,但我并不想把那些零散的资料碎片或不同理解论述简单规整并堆

一文读懂大数据计算框架与平台

1. 前言 计算机的基本工作就是处理数据,包括磁盘文件中的数据,通过网络传输的数据流或数据包,数据库中的结构化数据等.随着互联网.物联网等技术得到越来越广泛的应用,数据规模不断增加,TB.PB量级成为常态,对数据的处理已无法由单台计算机完成,而只能由多台机器共同承担计算任务.而在分布式环境中进行大数据处理,除了与存储系统打交道外,还涉及计算任务的分工,计算负荷的分配,计算机之间的数据迁移等工作,并且要考虑计算机或网络发生故障时的数据安全,情况要复杂得多. 举一个简单的例子,假设我们要从销售记录中

【独家】一文读懂大数据计算框架与平台

1. 前言 计算机的基本工作就是处理数据,包括磁盘文件中的数据,通过网络传输的数据流或数据包,数据库中的结构化数据等.随着互联网.物联网等技术得到越来越广泛的应用,数据规模不断增加,TB.PB量级成为常态,对数据的处理已无法由单台计算机完成,而只能由多台机器共同承担计算任务.而在分布式环境中进行大数据处理,除了与存储系统打交道外,还涉及计算任务的分工,计算负荷的分配,计算机之间的数据迁移等工作,并且要考虑计算机或网络发生故障时的数据安全,情况要复杂得多. 举一个简单的例子,假设我们要从销售记录中

大数据不神秘,一文读懂大数据是怎样在为你服务的

马云最近谈云端服务,阿里巴巴最近就在搞大数据峰会.事实上,无论云端服务还是大数据,概念都很虚,但是具体如何产生商业价值,如何被我们在生活上所用,才是真正的王道.--吐槽在前面的话. 言归正传. 每个人都在说大数据,这似乎是一个很时髦但又很有距离感的词.但是,你知道吗,你的每一个行为,都将运用到大数据,也都将组成大数据的一部分. 例如,http://www.aliyun.com/zixun/aggregation/33721.html">2014年春天的某一日,你刚刚看完<来自星星的你

一文读懂大数据的黄色小象帮手——Hadoop

继云计算之后,大数据(Big Data)接棒成为最热门的科技潮字,和大数据有关的技术和科技接二连三成为科技圈注目的焦点.如果你也关注云端跟大数据的资讯,Hadoop 这个字出现频率一定挺高的,这个黄色小象 Logo 也应该经常亮相. 究竟 Hadoop 是什么?能够用来解决什么问题?又为什么重要?比起解释一大堆技术上的细节,倒不如把重点放在 Hadoop 处理巨量资料的角度切入了解,看 Hadoop 能够带来什么好处,同时也从这个方向反过来理解大数据. Hadoop 的雏形 Nutch 最初是由

阿里HBase超详实践总结 | 一文读懂大数据时代的结构化存储

前言 时间回到2011年,Hadoop作为新生事物,在阿里巴巴已经玩得风生水起,上千台规模的"云梯"是当时国内名声显赫的计算平台. 这一年,Hadoop的好兄弟HBase由毕玄大师带入淘宝,开启了它的阿里之旅.从最初的淘宝历史交易记录,到去年的支付宝消费记录存储在线历史存储统一:从蚂蚁安全风控的多年存储演进,到HBase.TT.Galaxy的大数据激情迭代:HBase在阿里经历过年轻的苦涩,释放过青春的活力,也付出过成长的代价.几代人的不懈努力下,五年陈的HBase开始表现出更成熟.更