以最常用的Hadoop为例:
Hadoop是Apache公司开发的开源框架,在整个集群中可以使用简单的编程模型计算机分布式环境来存储和处理大数据。
集群是指两台或多台服务器构建节点并提供数据服务。 一台服务器无法处理大量大数据。 服务器越多,集群的威力就越大。
Hadoop类似于一个数据生态圈,不同的模块各有其职。 下图是Hadoop官网的生态图。
Hadoop的标志是灵活的大象。 关于logo的来源,网上有各种各样的说法,据说是因为大象象征着丰富的白开水,指向大数据,Hadoop使大数据变得灵活了。 官方盖章来源于logo创始人DougCutting的孩子给大象玩具取名为hadoop。
从上图可以看出,Hadoop的核心是HDFS、YARN和MapReduce。 介绍了几个主要模块的含义和功能。
1、分布式文件存储系统(HDFS ) )。
数据作为块分布在群集的不同节点上。 使用HDFS时,不需要在意数据存储在哪个节点上,从哪个节点获取,只需像管理和存储本地文件系统一样管理和存储文件系统中的数据即可。
2、MapReduce (分布式计算框架)。
分布式计算框架将复杂的数据集分发给不同的节点进行操作,每个节点定期返回完成的工作和最新状态。 可以结合下图理解MapReduce的原理。
要计算计算机输入的单词:
如果采用集中的计算方式,就必须计算出Deer等单词出现了多少次,然后再计算出其他单词出现了多少次。 在所有单词汇总之前,会浪费很多时间和资源。
采用分布式计算方式,计算效率更高。 将数据随机分配给三个节点,在节点上计数各自处理的数据中单词出现的次数,将同一单词汇总后输出最后的结果。
3、YARN (资源调度器)。
相当于电脑的任务管理器,管理和调度资源。
4、HBASE (分布式数据库) )。
HBase是非关系数据库(Nosql ),在某些业务场景中提高了数据存储查询在HBase中的使用效率。
关系数据库和关系数据库之间的区别将在后面的文章中详细讨论。
5、HIVE (数据仓库)。
HIVE是一个基于Hadoop的数据仓库工具,可以用SQL语言将其转换为MapReduce任务对hdfs数据的查询分析。 HIVE的优点是用户不需要编写MapReduce任务,只需掌握SQL就可以完成查询分析工作。
6、大数据计算引擎(Spark ) )。
Spark是一个快速通用的计算引擎,专为大型数据处理而设计
7、Mahout (机器学习挖掘库) )。
Mahout是一个可扩展的机器学习和数据挖掘库
8、Sqoop
Sqoop可以将关系数据库导入到Hadoop的HDFS中,也可以将HDFS数据导入到关系数据库中
除了上述模块外,Hadoop还包括许多模块,如Zookeeper和Chukwa。 因为是开源的,所以将来会出现更有效率的模块。 如果你感兴趣,你可以在网上知道。
通过Hadoop强大的生态圈,完成大数据处理流程。
人工智能、大数据、云计算和物联网未来的发展值得重视,都是前沿产业,多元智能时代集中在人工智能和大数据的入门和科谱上,在这里给大家推荐几篇优质的好文章。
大数据处理引擎Spark正在和Flink竞争
http://www.duozhishidai.com/article-6947-1.html
企业如何实现大数据的处理和分析?
33558 www.duozhishidai.com/article-5030-1.html
在大数据时代,最适合大数据处理的编程语言是什么?
http://www.duozhishidai.com/article-1823-1.html
多智时代-人工智能与大数据学习入门网站|人工智能、大数据、物联网、云计算学习交流网站