大数据工程师 学习指南
一必备技能
Zookeeper、Hadoop、Hive、HBase、Flume、Sqoop、Flink等等
1定义(from百度百科)
1.1Zookeeper
百度百科-验证
可实现管理功能托管
1.2 Hadoop
Hadoop_百度百科
haddop和zookeeper关系可查阅一下内容描述很详细
ZooKeeper 原理及其在 Hadoop 和 HBase 中的应用 - 程序员大本营
总结来说管理集群的管理权限交给了Zookeeper来实现。
1.3 Hive
百度百科-验证
用来将Haddop存储的结构文件操作转换为sql操作的工具,其实不用他也可以,可以避免学习一门新的语言了解更多的独特语法,更好通过sql入门操作
1.4 Hbase
百度百科-验证
HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。另一个不同的是HBase基于列的而不是基于行的模式。
1.5 Flume与Kafka
Flume:百度百科-验证
Kafka:百度百科-验证
这篇文章也印证了我的猜想。Flume对数据写入HDFS更专业并且有数据的预处理与分类实时数据写入的该控制,但是它对单个管道的数据并不友好,如果管道出现了问题那么这条链路的数据必须停下。Kafka对数据的的采集更为专业,这得益于他的topic等组件。可以根据对数据的采集类型是否需要更多的topic信息等内容配合使用或者单一使用Flume,毕竟同宗同源的软件适配起来更优秀。
kafka和flume的区别_clzzzh的博客-CSDN博客_flume和kafka区别
1.6 Sqoop
百度百科-验证
hadoop与关系数据库之间的数据转换工具
1.7 Flink
百度百科-验证
优化实时数据流,针对实时处理更专业的处理
1.8 haddop与spark
大数据hadoop和spark怎么选择? - 知乎
Hadoop和Spark的对比_斯沃福德的博客-CSDN博客_hadoop spark
现阶段技术上的应用主要是spark对于mapreduce 的技术升级,线程+数据放入内存+数据共享来优化数据需要在原生hadoop上多次mapreduce计算的磁盘 多次IO,根据业务逻辑的是否复杂是否需要机器学习等多方面考虑是否需要 haddop+spark联合使用
1.9总结
在弄懂各个工具的作用后,在Hbase百度百科资料中的这样一段话应该诠释了大部分数据工具或者叫做软件之间的作用和关系,了解他们是怎么关联在一起发挥大数据处理的作用的
HBase – Hadoop Database,是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群。
与FUJITSU Cliq等商用大数据产品不同,HBase是Google Bigtable的开源实现,类似Google Bigtable利用GFS作为其文件存储系统,HBase利用Hadoop HDFS作为其文件存储系统;Google运行MapReduce来处理Bigtable中的海量数据,HBase同样利用Hadoop MapReduce来处理HBase中的海量数据;Google Bigtable利用 Chubby作为协同服务,HBase利用Zookeeper作为对应。[1]
正在上传…重新上传取消
上图描述Hadoop EcoSystem中的各层系统。其中,HBase位于结构化存储层,Hadoop HDFS为HBase提供了高可靠性的底层存储支持,Hadoop MapReduce为HBase提供了高性能的计算能力,Zookeeper为HBase提供了稳定服务和failover机制。
此外,Pig和Hive还为HBase提供了高层语言支持,使得在HBase上进行数据统计处理变的非常简单。 Sqoop则为HBase提供了方便的RDBMS数据导入功能,使得传统数据库数据向HBase中迁移变的非常方便
另外Hadoop、Hive、HDFS、Hbase、KUDU、Spark之间关系_灵豸的博客-CSDN博客_hadoop/hbase/spark/hive/kylin/doris等中对各个工具之间都提供了很好地解释,针对初步了解各个软件功能特点怎么融合提供了很浅显易懂的解释。
1.9 大数据相关架构
1. HDFS(Hadoop分布式文件系统):
2. MapReduce(分布式计算框架):
3. HBase(分布式列存数据库):
4. ZooKeeper(分布式协作服务):
5. Hive/Impala(基于Hadoop的数据仓库):
6. Pig(ad-hoc脚本):
7. Sqoop(数据同步工具):
8. Flume(日志收集工具):
9. Mahout(数据挖掘算法库):
10. YARN/Mesos(分布式资源管理器):
11. Tachyon(超光速粒子):
12. Spark(分布式计算框架):
13. Kafka(分布式消息队列):
14. Flink(分布式计算框架):
15. Oozie(工作流调度器):
16. Apache Phoenix:
17. Apache Ambari:
18. Apache Kylin: