第3期:零基础在校大学生应该如何学习大数据?

大家好,我是老王随聊,今天和大家讨论的话题——零基础在校大学生应该如何学习大数据

目前大数据是一个非常有发展前景的岗位,在IT界薪资待遇也很高,很多人想从事这方面的工作,那零基础的在校大学生应该如何学习大数据呢?

目录

1)准备一个台式机或笔记本

2)学习大数据基础编程语言——重点学习

3)编程语言书籍推荐

4)免费学习网站——保姆级教程

5)学习Hadoop家族组件—建议作为了解部分

6)分布式大数据处理框架Spark/Flink——建议作为了解部分


在校大学生如果想学习大数据,需要做以下准备:

1)准备一个台式机或笔记本

 条件允许的情况下,可以自己买一个台式机或笔记本;

或者去学校机房、图书馆都可以学习(老王当初上大学就是经常去学校机房练习编程)。

2)学习大数据基础编程语言——重点学习

要学习的编程语言为Java或Python,具体喜欢哪一种编程语言,根据自己喜好选择即可。

 如果精力和时间允许的情况话,可以再学点Linux命令,为后续学习以及部署大数据服务做准备。

3)编程语言书籍推荐

编程语言方面,可以参考《深入浅出Java》,《深入浅出Python》,这几本都比较适合初学者看。当然最重要的是多跟着书籍做练习,一定要记笔记,把不懂的地方在大数据成长社群进行提问。

4)免费学习网站——保姆级教程

完全免费——建议大家在相对比较系统的网站学习。菜鸟教程 - 学的不仅是技术,更是梦想!


Java 教程 | 菜鸟教程

Python3 教程 | 菜鸟教程

MySQL 教程 | 菜鸟教程

Linux 教程 | 菜鸟教程

老王建议基础薄弱的同学,优先把上面的内容学好,即使你后续转后端开发或者全栈,都需要这些基础知识做支撑。

5)学习Hadoop家族组件—建议作为了解部分

如果前面的基础编程有一定掌握后,这时可以尝试着学习hadoop家族的组件,从hdfs,hive,hbase等学起,逐步深入,切忌欲速则不达。

Hadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。Hadoop实现了一个分布式文件系统( Distributed File System),其中一个组件是HDFS(Hadoop Distributed File System)。HDFS有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上;而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。HDFS放宽了(relax)POSIX的要求,可以以流的形式访问(streaming access)文件系统中的数据。Hadoop的框架最核心的设计就是:HDFS和MapReduce。HDFS为海量的数据提供了存储,而MapReduce则为海量的数据提供了计算。

HBase是一个分布式的、面向列的开源数据库,该技术来源于 Fay Chang 所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统”。就像Bigtable利用了Google文件系统(File System)所提供的分布式数据存储一样,HBase在Hadoop之上提供了类似于Bigtable的能力。HBase是Apache的Hadoop项目的子项目。HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。另一个不同的是HBase基于列的而不是基于行的模式。

hive是基于Hadoop的一个数据仓库工具,用来进行数据提取、转化、加载,这是一种可以存储、查询和分析存储在Hadoop中的大规模数据的机制。hive数据仓库工具能将结构化的数据文件映射为一张数据库表,并提供SQL查询功能,能将SQL语句转变成MapReduce任务来执行。Hive的优点是学习成本低,可以通过类似SQL语句实现快速MapReduce统计,使MapReduce变得更加简单,而不必开发专门的MapReduce应用程序。hive十分适合对数据仓库进行统计分析。

6)分布式大数据处理框架Spark/Flink——建议作为了解部分

Apache Spark 是专为大规模数据处理而设计的快速通用的计算引擎。Spark是UC Berkeley AMP lab (加州大学伯克利分校的AMP实验室)所开源的类Hadoop MapReduce的通用并行框架,Spark,拥有Hadoop MapReduce所具有的优点;但不同于MapReduce的是——Job中间输出结果可以保存在内存中,从而不再需要读写HDFS,因此Spark能更好地适用于数据挖掘与机器学习等需要迭代的MapReduce的算法。

 Apache Flink是由Apache软件基金会开发的开源流处理框架,其核心是用Java和Scala编写的分布式流数据流引擎。Flink以数据并行和流水线方式执行任意流数据程序,Flink的流水线运行时系统可以执行批处理和流处理程序。此外,Flink的运行时本身也支持迭代算法的执行。

 如果有疑问或者更好的建议,请在留言区留言,一起探索适合你的学习路径。

猜你喜欢

转载自blog.csdn.net/wangyongfei5000/article/details/125036191
今日推荐