新闻中心

我有java基础,想学习大数据,该怎么开始?以下是我的疑惑(我有一个想法作文三年级 垃圾分类)

2023-09-25
浏览次数:
返回列表

首先,我先申明:任何以『做大数据好像挣得多』为名学习数据科学相关的内容都是不谨慎,而且难以有回报的。而且,任何『只要学会一两种工具就能做大数据』的想法也都是盲目的,难有成效的。

从目前我遇到过的面试者和看过的简历来看,凡是没有过大数据项目经验的人,简历写出花来都是扯淡。部署一个集群,装一个Hive,HBase什么的根本就不叫大数据(有的公司甚至部署Hadoop只用HDFS,每天处理5GB数据,这是我面过的一个人告诉我的他的工作经验)。一次处理1个TB以下的数据都不叫大数据(我还在权衡,是不是要提高这个量级)。

大数据是建立在数据科学基础上的,对编程、算法,分布式计算统计学,线性代数,机器学习,系统构架都有比较高的要求。而且要看英文就像看中文一样(这条很重要,我一般对于不积极主动看英文资料的人没有什么太大的期待)。

我的建议是不要管什么Hadoop,Spark。把基础打牢,只要编程技巧和算法精通,能看英文文献,顺便学点概率统计,随便去哪个公司都能应聘大数据的岗位,等有了项目环境,上手Hadoop或者Spark还不是分分钟的事~

更新

======

针对评论,我稍微补充几点:

1、关于没有相关工具的经验,难以找到合适的工作的问题

这不是很正常么?看好招聘的要求,人家要有经验的,你没经验,不是肯定碰壁么!问题是你想做的工作如果是日常使用、维护Hadoop,这不叫做大数据,这叫做运维。结合自己的兴趣和能力,在自己求职的时候为自己定位,才能找到令人满意的工作。

2、关于很多公司数据量不是特别大的问题

这样的公司不是做大数据的,别去。他们不过是跟风,忽悠股东,忽悠媒体的,说不定哪天就把这个部门废了,你自己还啥都没学到。

3、还是关于大数据的『大』的问题

大的几个维度业界通常用4个V来衡量,Volume、Variety、Value、Velocity,也就是体积大、变化大、价值大、速度大。很多工具(包括Hadoop,Spark等)都是为了解决这4个大问题才设计的。你没有满足4V的数据,一是没必要用这种工具;二是即使用了因为没有真实的场景,你也难以理解这其中的难点(好吧,就算是坐运维,部署3台机器和部署1000台机器用的方法和手段都是不同的),你学到的是单机版的Hadoop,生产中真正需要人来解决的问题你都不会遇到。

PS:关于如何开始以及如何提高,我的观点是学好编程,打好基础,数学、英语要牛逼(三本的那位同学,既然起点已经落后是不是要更加努力一些呢?)。还在上学的学生通常对于学好编程的理解很浅显。科班出身当然是优势,不过你要去GitHub去找一个Star数10000以上的小型项目(类似Flask这种,而不是Django这种,在Github的搜索栏里输入『stars:>10000』可以搜索star数超过10000的项目),去读一下源码就知道我说的学好编程是什么意思了。自己写不出这样的项目,还不能叫做学好了编程。

搜索