1.什么是大数据?大数据,大数据,《大数据》是这样定义大数据的。分析法(抽样调查)就是这样一条捷径,所有数据都用于分析处理。这句话至少传达了两种信息:1.大数据是海量数据2.大数据处理没有捷径,对分析处理技术提出了更高的要求2.大数据处理流程数据如下图所示处理流程:1、底层是千亿数据源,数据源可以是SCM(供应链数据)、4PL(物流数据)、CRM(客户数据)、网站日志等数据2、第二层是数据处理层,数据工程师根据标准的统计口径和指标从数据源中提取、清洗、转换、加载数据(整个过程简称ELT)。3.第三层是数据仓库。处理后的数据流入数据仓库进行整合存储,形成一个又一个数据集市。数据集市是指分类存储数据的集合,即数据按照不同部门或用户的需要进行存储。4.第四层是BI(商业智能)。根据业务需求,对数据进行分析、建模、挖掘、计算,输出统一的数据分析平台。5、第五层为数据访问层,面向不同的需求方开放。使用数据驱动业务的数据角色和权限。大数据的规模决定了大数据处理和应用的难度,需要借助特定的技术工具来处理大数据。3.大数据处理技术以最常用的Hadoop为例:Hadoop是Apache公司开发的开源框架,它允许在整个集群中使用简单编程模型的计算机在分布式环境中存储和处理大数据。集群是指由两台或多台服务器搭建节点来提供数据服务。单个服务器无法处理海量大数据。服务器越多,集群越强大。Hadoop类似于一个数据生态系统,不同的模块各司其职。下图是Hadoop官网的生态图。Hadoop的LOGO是一头灵活的大象。关于LOGO的来源,网上众说纷纭。有人说是因为大象象征着巨人,指的是大数据。Hadoop使大数据变得灵活。公章、LOGO来源于创始人DougCutting的孩子们曾为一个大象玩具取名hadoop。从上图可以看出,Hadoop的核心是HDFS、YARN和MapReduce。下面给大家说说几个主要模块的含义和作用。1、HDFS(DistributedFileStorageSystem)数据以块的形式分布在集群的不同节点中。使用HDFS时,不需要关心数据存储在哪个节点或从哪个节点获取。您只需要像本地文件系统一样管理和存储文件系统中的数据。2.MapReduce(分布式计算框架)分布式计算框架将复杂的数据集分布到不同的节点上运行,每个节点会周期性的返回自己完成的工作和最新的状态。可以通过下图来理解MapReduce的原理:计算机需要对输入的单词进行统计:如果采用集中式计算的方式,我们需要先计算Deer这样的单词出现了多少次,然后计算出现了多少次timesanotherwordappears,直到统计完所有的单词,会浪费大量的时间和资源。如果采用分布式计算,计算将变得高效。我们将数据随机分配给三个节点,节点分别统计处理后的数据中词的出现次数,然后聚合相同的词输出最终结果。3、YARN(resourcescheduler)相当于计算机的任务管理器,对资源进行管理和调度。4、HBASE(分布式数据库)HBase是一种非关系型数据库(Nosql)。在某些业务场景下,数据存储查询在Hbase中效率更高。关系型数据库和菲律宾关系型数据库的区别,会在以后的文章中详细介绍。5、HIVE(数据仓库)HIVE是一个基于Hadoop的数据仓库工具,可以转化为SQL语言的MapReduce任务,对hdfs数据进行查询和分析。HIVE的优势在于用户无需编写MapReduce任务,只需要掌握SQL即可完成查询分析。6.Spark(大数据计算引擎)Spark是为大规模数据处理而设计的快速通用计算引擎7.Mahout(机器学习挖掘库)Mahout是一个可扩展的机器学习和数据挖掘库8.SqoopSqoop可以导入关系数据库导入Hadoop的HDFS,将HDFS数据导入关系型数据库。除了以上模块,Hadoop还有Zookeeper、Chukwa等各种模块。因为是开源的,所以以后会有更多的模块。更多更高效的模块,有兴趣的可以上网了解一下。通过Hadoop强大的生态系统完成大数据处理过程。在不久的将来,多元智能时代必将全面走进我们的生活。未来有志于进入前沿行业的朋友可以关注多元智能时代,及时获取人工智能、大数据、云计算、物联网的前沿资讯和基础.知识,让我们共同引领人工智能的未来!
