开学了,第一周快结束了,又是三月初,立个flag,开始学习大数据,希望月底能搞定!
首先,来了解一下大数据编程的五大核心软件。
Hadoop
- 存储海量的数据(HDFS):可以将多个服务器组合起来去存储
- 处理海量的数据并且得到有价值的信息
- 是最基础的,能处理我们遇到的所有问题,比较复杂。
Hive
是一个用SQL语句查询存储在Hadoop HDFS上面数据的工具。
简化了大数据编程的工作量,但是有局限,只能处理类似表格的数据。
Sqoop
主要用于在Hadoop(Hive)与关系型数据库(MySQL、、、)间进行数据传递,可以将一个关系型数据(如:Mysql,Oracle、、)中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。
Flume
是一个高可用的,高可靠的,分布式的海量日志采集,聚合和传输的系统,可以理解成传输文件数据。
Spark
- Spark是专为大规模数据处理而设计的快速通用的计算机引擎。
能做Hadoop Map Reduce的工作。 - Spark利用内存去处理,而Hadoop利用的是磁盘,Hadoop处理的稍慢,而Spark容易崩溃。
- Spark提供了大量的库,包括SQL,MLlib等。开发者可以在同一应用程序中无缝组合使用这些库。
其他
- Hbase:处理千亿级的数据特别快,一般在特别大型的公司,如联通会用到,比如你去查某一天的通话记录。
- Oozie、Zookeeper:辅助软件
- Pig:类似于Hive
ok,比较晚了,简单学习了一下大数据的五大软件,之后逐一在这一个月内会学习完。