本文以“大数据技术线”为线索铺开,从宏观视觉勾勒出各个大数据技术在大数据分析过程中不同阶段的不同使命。再从线的节点对应的大数据技术展开,谈及需要使用的工具。最后再将这些工具回归到hadoop的软件框架。笔者寄此构建个人的大数据知识框架,对细节没有过多赘述,后期会逐步细化框架内容,不足之处望严厉批评指出,笔者会校对修正。
大数据技术线
大数据技术线是大数据技术操作海量数据的抽象概念。它穿插在hadoop大数据软件框架中,涉及海量数据的转载、提取,到分布式存储、处理、计算及流式计算、可视化等大数据技术。
想要走完大数据技术线的每个技术节点,必须假设我们已经有大数据相关知识的基础,比如linux基础、hadoop基础等。若假设不成立,则需要继续阅读后面的内容。
Sqoop
Sqoop(ETL工具),就是用来提取、加载、转储数据的工具。比如再一个软件、库中提取、整理、分析的数据需要导入另外一个软件、库中,就需要ETL工具。比如在hdfs,Hive(仓库),Hbase,Mysql等数据储存系统中数据的转移。
Hive
hive,也被叫做基于hadoop的大数据仓库。它使用类Sql语言,向HDFs拿取保存数据的映射关系,本身是不储存数据的,适合大数据集的批作业处理。
Hbase
HBase是一个 高可靠性、高性能、面向列、可伸缩的分布式存储系统。相比于Hdfs,hbase可看成是对Hdfs的补充,habase能够实现实时单个记录的查询。
Spark
Spark有四个主要核心组件——Spark SQL、Spark Streaming、MLlib、GraphX,它是一个用于大规模数据处理的一站式分析引擎,类似于hadoop的开源集群计算环境,但将计算任务分配到内存上进行,速度更快。能够运行在多中集群管理器上,支持多种编程语言,支持多种数据类型的接入。spark的社区是目前最活跃的大数据社区。
Hadoop
Hadoop是一个由Apache基金会所开发的分布式系统基础架构。它的核心技术是分布式储存(HDFS)和分布式处理(MapReduce)。
小结
hadoop是一个分布式系统基础架构,hdfs和mapreduce、yarn是其核心。由于hadoop的宽松特性,在hadoop的其架构上安装其他组件如hive、hbase,sqoop等,使得hadoop分布式系统的性能更加贴近海量数据环境下的商业需求。