HBase是一个分布式的、基于列存储的开源数据库。HBase适合存储PB级别的海量数据,也可以说HBase是很适合大数据的存储的,它是基于列式存储数据的,列族下面可以有非常多的列,列族在创建表的时候就必须指定。所以对HBase的数据结构要有一定的理解,特别是RowKey的设计部分(因为面试被问到过,咳咳,所以点一下),对于它的原理要了解,一些基本操作也要都会,比如创建表,对表的操作,基本的API使用等。
视频:

8、Spark(重点中的重点)

Spark是快速、易用、通用的大数据分析引擎。一说到Spark,就有一种哪哪都是重点感觉,哈哈。
Spark的组成可以看下图
Spark是基于内存计算的,对于数据的处理速度要比MapReduce快很多很多,而且数据挖掘这些都是要对数据做迭代式计算,MapReduce对数据的处理方式也不适合,而Spark是可以进行迭代式计算,很适合数据挖掘等场景。Spark的Spark SQL能够对结构化数据进行处理,Spark SQL的DataFrame或DataSet可以作为分布式SQL查询引擎的作用,可以直接使用Hive上的表,对数据进行处理。Spark Streaming主要用于对应用场景中的实时流数据进行处理,支持多种数据源,DStream是Spark Streaming的基础抽象,由一系列RDD组成,每个RDD中存放着一定时间段的数据,再对数据进行处理,而且是基于内存计算,速度快,所以很适合实时数据的处理。Spark MLlib提供常见的机器学习(ML)功能的程序库。包括分类、回归、聚类、协同过滤等,还提供了模型评估、数据 导入等额外的支持功能。对Spark的核心组件、部署模式(主要是Standalone模式和YARN模式)、通讯架构、任务调度要有一定了解(面试问到了可以说一波),Spark Shuffle要好好理解,还有内存管理要知道,对Spark的内核原理一定要好好理解,不仅面试可能要用,以后工作也是有帮助的,
视频:

9、Flink(重点中的重点)

Flink是一个框架和分布式处理引擎,用于对无界(有开始无结束)和有界(有开始有结束)数据流进行有状态计算。现在主要是阿里这种大公司使用的比较多,中国很多公司使用的还是Spark居多,而且Flink基本上都是和Spark很多功能大体上一样的,但是以后Flink和Spark孰强孰弱还有待时间的考验,不过Flink近几年越来越火了这是事实,所以如果有时间有精力的话,可以学一学Flink相关的内容也是很不错的。Spark和Flink主要都是在数据处理方面应用,在数据处理方面的话,离线数据处理:Flink暂时比不上Spark,Spark SQL优点在于可以和Hive进行无缝连接,Spark SQL可以直接使用Hive中的表;Flink暂时做不到这一步,因为官方不支持这一操作,Flink只能将数据读取成自己的表,不能直接使用Hive中的表。对于实时数据的处理:Flink和Spark可以说是平分秋色吧,而且Flink是以事件为驱动对数据进行处理,而Spark是以事件为驱动对数据进行处理,在一些应用场景中,也许Flink的效果比Spark的效果还要好些,因为Flink对数据更加的敏感。比如一秒钟如果触发了成千上万个事件,那么时间驱动型就很难对数据做细致的计算,而事件驱动型可以以事件为单位,一个个事件进行处理,相比而言延迟更低,处理效果更好。还是那句话,虽然现在使用的公司较少,但是有时间接触学习下,也是没有坏处的。
视频:
三、项目阶段
其实尚硅谷的视频里面有很多大数据相关的项目,而且都是文档配代码的,学习期间可以跟着视频做两到三个项目,自己理清思路,把项目理解透彻,还是可以学到很多东西的。
根据自己情况,选择两到三个项目重点跟着做,理解透彻一点
大数据实战项目
基于阿里云搭建数据仓库(离线):ECS(日志生产服务器)+Flume+DataHub+MaxCompute/DataWorks+RDS(业务数据)+QuickBI
四、机器学习
这部分给一个文章链接,里面有视频+资料的链接
五、书籍
都是根据自己看过和准备的来的,所以你自己有更好的选择,根据自己的来就行
Java
《Java核心技术 卷Ⅰ》
Scala
《快学Scala》
Linux
《鸟叔的Linux私房菜-基础篇》
《Linux命令行与Shell脚本编程大全》
Hadoop
《Hadoop权威指南》
谷歌三大文章
Hive
《Hive编程指南》
Kafka
《Kafka权威指南》
HBase
《HBase权威指南》
Spark
《Spark快速大数据分析》
《Apache Spark源码剖析》
《Spark MLlib机器学习》
大概就这些,看完就需要很久了,大部分我也是需要的时候看相应的部分,所以有时间可以好好看下,不然就需要哪一部分看哪一部分,有助于学习即可。
写这篇博客时间花的不多,但是找这些这些资料花的时间确实不少,这上面的视频资料大部分都是我自己看过的,还有一些其他看过的,不过觉得帮助不是很大,就没有再放链接,这些视频有些我看了不下两遍,一遍不懂,回头就再看一遍。
如果有笔误之处,或者不足之处,欢迎指正,不胜感激~
后续也会继续更新~~~~~~~~~~~
有帮助就点个赞吧,哈哈哈哈哈
欢迎关注我的知乎专栏,也会更新大数据的资料
推荐一个大数据学习群119599574晚上20:10都有一节【免费的】大数据直播课程,专注大数据分析方法,大数据编程,大数据仓库,大数据案例,人工智能,数据挖掘都是纯干货分享, 一、整体了解数据分析——5小时 新人们...
推荐一个大数据学习群 119599574晚上20:10都有一节【免费的】大数据直播课程,专注大数据分析方法,大数据编程,大数据仓库,大数据案例,人工智能,数据挖掘都是纯干货分享,一、整体了解数据分析——5小时 新人们被”大数据“、”人工智能“、”21世纪是数据分析师的时代“等等信息吸引过来,立志成为一名数据分析师,于是问题来了,数据分析到底是干什么的?数据分析都包含什么内容? 市面上有很多讲数据分析内容的书籍,在此我推荐《深入浅出数据分析》,此书对有基础人士可称消遣读物, 但对新人们还是有一定的作用。阅读时可不求甚解,重点了解数据分析的流程、应用场景、以及书中提到的若干数据分析工具,无需纠结分析模型的实现。5个小时,足够你对数据分析工作建立初步的印象,消除陌生感。 二、了解统计学知识——10小时 15个小时只够你了解一下统计学知识,作为入门足够,但你要知道,今后随着工作内容的深入,需要学习更多的统计知识。 本阶段推荐书籍有二:《深入浅出统计学》《统计学:从数据到结论》,要了解常用数理统计模型(描述统计指标、聚类、决策树、贝叶斯分类、回归等),重点放在学习模型的工作原理、输入内容和输出内容,至于具体的数学推导,学不会可暂放一边,需要用的时候再回来看。 三、学习初级工具——20小时 对于非技术类数据分析人员,初级工具只推荐一个:EXCEL。推荐书籍为《谁说菜鸟不会数据分析》,基础篇必须学习,提高篇不一定学(可用其他EXCEL进阶书籍),也可以学习网上的各种公开课。 本阶段重点要学习的是EXCEL中级功能使用(数据透视表,函数,各类图表适用场景及如何制作),如有余力可学习VBA。 四、提升PPT能力——10小时 作为数据分析人员,PPT制作能力是极其重要的一项能力,因此需要花一点时间来了解如何做重点突出,信息明确的PPT,以及如何把各类图表插入到PPT中而又便于更新数据。10个小时并不算多,但已经足够(你从来没做过PPT的话,需要再增加一些时间)。具体书籍和课程就不推荐了,网上一抓一大把,请自行搜索。 五、了解数据库和编程语言——10小时 这个阶段有两个目标:学习基础的数据库和编程知识以提升你将来的工作效率,以及测试一下你适合学习哪一种高级数据分析工具。对于前者,数据库建议学MySQL(虽然Hadoop很有用但你不是技术职位,初期用不到),编程语言建议学Python(继续安利《深入浅出Python》,我真没收他们钱……)。数据库学到联合查询就好,性能优化、备份那些内容用不到;Python则是能学多少学多少。 六、学习高级工具——10小时 虽然EXCEL可以解决70%以上的问题,但剩下30%还是需要高级工具来做(不信用EXCEL做个聚类)。高级分析工具有两个选择:SPSS和R。虽然R有各种各样的好处,但我给的建议是根据你在上一步中的学习感觉来定学哪一个工具,要是学编程语言学的很痛苦,就学SPSS,要是学的很快乐,就学R。不管用哪一种工具,都要把你学统计学时候学会的重点模型跑一遍,学会建立模型和小幅优化模型即可。 七、了解你想去的行业和职位——10+小时 这里我在时间上写了个”+“号,因为这一步并不一定要用整块时间来学习,它是贯穿在你整个学习过程中的。数据分析师最需要不断提升的能力就是行业和业务知识,没有之一。你将来想投入哪个行业和哪个职位的方向,就要去学习相关的知识(比如你想做网站运营,那就要了解互联网背景知识、网站运营指标体系、用户运营知识等内容)。 八、做个报告——25小时 你学习了那么多内容,但现在出去的话你还是找不到好工作。所有的招聘人员都会问你一句话:你做过哪些实际项目?(即使你是应届生也一样) 如果你有相关的项目经验或者实习经验,当然可以拿出来,但是如果没有,怎么办?答案很简单,做个报告给他们看,告诉招聘者:我已经有了数据分析入门级(甚至进阶级)职位的能力。同时,做报告也会是你将来工作的主要内容,因此也有可能出现另外一种情况:你费尽心血做了一个报告,然后发现这不是你想要的生活,决定去干别的工作了……这也是件好事,有数据分析能力的人做其他工作也算有一项优势。
大数据的三个发展方向,平台建设/优化/运行/维护/监控,大数据开发/设计/架构,数据分析/挖掘。 首先,说大数据的4V特征: 数据量大,TB-PB 有多种类型的数据,如结构化的、非结构化的文本、日志、视频、图片、...
很多人都知道大数据很受欢迎。他们的工作很好,薪水也很高。他们希望朝着大数据的方向发展。但是我们学到了什么技术和路线呢?
大数据的三个发展方向,平台建设/优化/运行/维护/监控,大数据开发/设计/架构,数据分析/挖掘。
首先,说大数据的4V特征:
数据量大,TB-PB
有多种类型的数据,如结构化的、非结构化的文本、日志、视频、图片、地理位置等。
商业价值很高,但是通过数据分析和机器学习需要大量的数据挖掘。
处理时间非常高,对海量数据处理的需求不再局限于离线计算。
现在,为了应对这些大数据的特点,开源大数据框架正变得越来越强大。
文件存储:Hadoop HDFS,Takyon,KFS
离线计算:Hadoop MapReduce,火花
流媒体,实时计算:风暴,火花流,S4,苍鹭
K-V,NoSQL数据库:HBase,ReiIS,MangoDB
资源管理:纱线,Mesos
日志收集:汇,划线,LogSTASH,Kibana
消息系统:卡夫卡,StruMQ,Zrimq,RabByMQ
查询分析:蜂箱,KORAS,猪,出版社,菲尼克斯,SARKSQL,钻机,弗兰克,麒麟,Druid
分布式协调服务:动物园管理员
集群管理和监控:AMBARI,Ganglia,NAGIOS,Cloudera管理器
数据挖掘与机器学习:火花MLLIB
数据同步:Sqoop
任务调度:OZIE
它们有30多种。不要说他们精通。它们都被使用了。
第二个方向(开发/设计/架构)进行了详细讨论,这是很容易找到在这个方向。
第一章:Hadoop的第一个熟人
1.1学习百度和谷歌
不管你有什么问题,试着自己去搜索和解决。
谷歌是首选。如果你不能翻转,使用百度。
1.2参考信息优先于公文
特别是对于入境,官方文件总是首选文件。
我相信这个地区的大多数人都是文化人,所以跟上英语是不可能的。请参阅第一步。
1.3让Hadoop前进
Hadoop可以被看作是大数据存储和计算的创始人。大多数开源大数据框架现在依赖于Hadoop或者与它们兼容。
关于Hadoop,你至少应该找出以下几点:
Hadoop 1,Hadoop 2
MapReduce
那扇门,Tan Ode
JobTracker,TaskTracker
纱线,资源管理器
要构建自己的Hadoop,请使用第一步和第二步来运行它。
建议先安装安装程序包命令行,而不是使用管理工具。
1.4尝试使用Hadoop
HDFS目录操作命令;
上传和下载文件命令;
提交运行MapReduce示例程序;
打开Hadoop Web界面以查看作业的运行状态并检查作业运行日志。
知道Hadoop的系统日志在哪里。
1.5你应该知道他们的原则。
MapReduce:如何划分和征服
HDFS:数据在哪里,什么是副本;
什么是纱线和它能做什么;
那门在地球干什么?
资源管理者到底在做什么;
1.6编写MapReduce程序
请根据单词计数的例子写一个单词计数程序。
该包提交到Hadoop运行。
你不能java?Shell,Python可以,有一个叫做Hadoop流的东西。
如果你已经做了这些步骤,恭喜你,你的一只脚已经进来了。
第二章:更有效的词语
2.1学习点SQL
你知道数据库吗?你能写SQL吗?
如果不是,请学习一些SQL。
2.2 SQL版本号
在1.6,你写了多少行代码(或复制)?
例如:
选择单词,逐字计数(1);
这就是SQL的魅力,编程需要几十行,甚至一百行代码,这句话就完成了;使用SQL来分析Hadoop上的数据,方便、高效、容易处理,而且趋势更大。无论是离线计算还是实时计算,越来越多的大数据处理框架正在积极提供SQL接口。大数据学习资料分享群119599574 不管你是小白还是大牛,小编我都挺欢迎,不定期分享干货,包括我自己整理的一份最新的适合2018年学习的大数据开发和零基础入门教程,欢迎初学和进阶中的小伙伴。
作者:powerhql ... 来源:知乎 ...系统学习大数据应该遵从《数据科学》的学习路径,从理论出发,延伸至实践中的技术: 第一层次:感性认识,判断方向。 阅读大数据领域与产业链的书籍,如:《大数据
作者:powerhql
链接:http://www.zhihu.com/question/29133044/answer/67456932
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
系统学习大数据应该遵从《数据科学》的学习路径,从理论出发,延伸至实践中的技术:
第一层次:感性认识,判断方向。
阅读大数据领域与产业链的书籍,如:《大数据时代》、《数据之美》; 英文能力不错的同学还可阅读英文的科技类期刊杂志,如《麻省理工技术评论》(MIT Technology Review)、《新科学家》(New Scientist)、《美国电子电气工程师协会月刊》(IEEE Spectrum)等。从中可以获得感性认识,了解大数据科学、产业、就业在全球的趋势,判断自身兴趣是否真在大数据上(你想做个研究人员还是IT从业者?)。同时查阅相关大数据培训的学习路径图(可能99%的结果都只会告诉你一个大数据IT技能的培训路线图)
第二层次:理论学习,编程实践。(耗时最长)
可参考美国问答网站Quora上精华帖:
What is a data scientist?
How can I become a data scientist?
What is it like to be a data scientist?
系统学习网络课程中的《数据科学》课程,如:Coursera及其他网络资源上的哈佛的 CS109 《数据科学入门》、华盛顿大学的《数据科学导论》,严格按照课程进度,观看视频、学习Python、学习统计学知识、数据挖掘、机器学习、人工智能的知识,阅读相关教材,完成习题,特别是应用Python编程的习题,进一步完成迷你、小、中、大项目,积累大数据领域从理论到小应用的经验。