勤学思培训网RMOYRF
  • 终于找到学大数据的基础是什么

    随着社会的发展,移动互联技术不断的更新,“大数据”时代的到来已经是即将到来,再加上两会的“大数据”的提议,大数据时代将是今后几年发展的重点。那么我们如何把握大数据时代呢?以下是小编为你整理的学大数据的基础是什么

    首先是技术人员,要把握大数据时代的到来,数据库技术和正则表达式等专业技术已经炙手可热,学习这些技术将来一定能够在大数据时代占领一席之地,然后就是要关注各大知名网站的接口发布,要充分利用各种资源,把数据做到“大”。

    然后就是政府部门,要能够统筹协调,充分调动大型网站的技术优势,对数据进行统一的整合,确保大数据时代 数据的安全性。由于技术不断更新,技术漏洞的存在视乎不可避免,但是如果有着优秀的团队及时的发现这些漏洞,并且补充漏洞,相信数据安全性将不是问题。


    [图片0]

    对于大型网站,要做好数据的分离工作,随着网站的开放程度越来越大,网站必然存在一些问题,要做到内部数据的分离,最好做到局域网内操作内部数据。

    对于制造业、服务业,要及时通过大数据的分析,获取市场的第一手资料,确保自己的资源能够得到合理的分配。

    对于创业者,更是一次机遇,但是要根据总体趋势去选择自己的行业,不要为眼前的小利迷惑,大胆的做到创新发展的这一历史规则。

    对于我们打工的人,也可以通过大数据确定自己的日常生活行程。比如出行时根据道路的拥堵情况,确定自己的出行路线,购买商品时的数据统计来确定自己购买的商品。

    大数据处理

    大数据处理数据时代理念的三大转变:要全体不要抽样,要效率不要绝对精确,要相关不要因果。具体的大数据处理方法其实有很多,但是根据长时间的实践,笔者总结了一个基本的大数据处理流程,并且这个流程应该能够对大家理顺大数据的处理有所帮助。整个处理流程可以概括为四步,分别是采集、导入和预处理、统计和分析,以及挖掘。

    采集

    大数据的采集是指利用多个数据库来接收发自客户端的数据,并且用户可以通过这些数据库来进行简单的查询和处理工作。比如,电商会使用传统的关系型数据库MySQL和Oracle等来存储每一笔事务数据,除此之外,Redis和MongoDB这样的NoSQL数据库也常用于数据的采集。

    在大数据的采集过程中,其主要特点和挑战是并发数高,因为同时有可能会有成千上万的用户来进行访问和操作,比如火车票售票网站和淘宝,它们并发的访问量在峰值时达到上百万,所以需要在采集端部署大量数据库才能支撑。并且如何在这些数据库之间进行负载均衡和分片的确是需要深入的思考和设计。

    统计/分析

    统计与分析主要利用分布式数据库,或者分布式计算集群来对存储于其内的海量数据进行普通的分析和分类汇总等,以满足大多数常见的分析需求,在这方面,一些实时性需求会用到EMC的GreenPlum、Oracle的Exadata,以及基MySQL的列式存储Infobright等,而一些批处理,或者基于半结构化数据的需求可以使用Hadoop。统计与分析这部分的主要特点和挑战是分析涉及的数据量大,其对系统资源,特别是I/O会有极大的占用。

    大数据处理需要的语言

    Julia

    虽然当前的数据科学绝大多数是通过R语言,Python,Java,MatLab和SAS执行的。但依然有其他的语言存活于夹缝中,Julia就是值得一看的后起之秀。

    业界普遍认为Julia过于晦涩难懂。但数据骇客在谈到它取代R和Python的潜力时会不由得眉飞色舞。Julia是一种高层次的,极度快速的表达性语言。它比R语言快,比Python更可扩展,且相当简单易学。

    “它正在一步步成长。最终,使用Julia,你就能够办到任何用R和Python可以做到的事情,”Butler说。

    但是至今为止,年轻人对Julia依然犹豫不前。Julia数据社区还处于早期阶段,要能够和R语言和Python竞争,它还需要添加更多的软件包和工具。

    “它还很年轻,但它正在掀起浪潮并且非常有前途,”Driscoll说。


    [图片1]

    JAVA

    Java,以及基于Java的框架,被发现俨然成为了硅谷最大的那些高科技公司的骨骼支架。 “如果你去看Twitter,linkedIn和Facebook,那么你会发现,Java是它们所有数据工程基础设施的基础语言,”Driscoll说。

    Java不能提供R和Python同样质量的可视化,并且它并非统计建模的最佳选择。但是,如果你移动到过去的原型制作并需要建立大型系统,那么Java往往是你的最佳选择。

    Yarn(分布式资源管理器)

    YARN是下一代MapReduce,即MRv2,是在第一代MapReduce基础上演变而来的,主要是为了解决原始Hadoop扩展性较差,不支持多计算框架而提出的。

    Yarn是下一代 Hadoop 计算平台,yarn是一个通用的运行时框架,用户可以编写自己的计算框架,在该运行环境中运行。

    用于自己编写的框架作为客户端的一个lib,在运用提交作业时打包即可。该框架为提供了以下几个组件:

    - 资源管理:包括应用程序管理和机器资源管理

    - 资源双层调度

    - 容错性:各个组件均有考虑容错性

    - 扩展性:可扩展到上万个节点

    Mesos(分布式资源管理器)

    Mesos诞生于UC Berkeley的一个研究项目,现已成为Apache项目,当前有一些公司使用Mesos管理集群资源,比如Twitter。

    与yarn类似,Mesos是一个资源统一管理和调度的平台,同样支持比如MR、steaming等多种运算框架。

    Tachyon(分布式内存文件系统)

    Tachyon(/'tæki:ˌɒn/ 意为超光速粒子)是以内存为中心的分布式文件系统,拥有高性能和容错能力,

    能够为集群框架(如Spark、MapReduce)提供可靠的内存级速度的文件共享服务。

    Tachyon诞生于UC Berkeley的AMPLab。

    Tez(DAG计算模型)

    Tez是Apache最新开源的支持DAG作业的计算框架,它直接源于MapReduce框架,核心思想是将Map和Reduce两个操作进一步拆分,

    即Map被拆分成Input、Processor、Sort、Merge和Output, Reduce被拆分成Input、Shuffle、Sort、Merge、Processor和Output等,

    这样,这些分解后的元操作可以任意灵活组合,产生新的操作,这些操作经过一些控制程序组装后,可形成一个大的DAG作业。

    目前hive支持mr、tez计算模型,tez能完美二进制mr程序,提升运算性能。