有很多人对大数据东西感兴趣,但是对编程语言也不太了解不过大数据学习并不是高深莫测的,虽然它并没有多简单,但是通过努力,零基础的朋友也是完全可以掌握大数据的。
我个人总结了一下 零基础学习大数据的话大概分为以下几步:
1. 了解大数据理论
要学习大数据你至少应该知道什么是大数据,大数据一般运用在什么领域。对大数据有一个大概的了解,你才能清楚自己对大数据究竟是否有兴趣,如果对大数据一无所知就开始学习,有可能学着学着发现自己其实不喜欢,这样浪费了时间精力,可能还浪费了金钱。所以如果想要学习大数据,需要先对大数据有一个大概的了解。
2. 计算机编程语言的学习
对于零基础的朋友,一开始入门可能不会太简单。因为需要掌握一门计算机的编程语言,大家都知道计算机编程语言有很多,比如:R,C++,JAVA等等。目前大多数机构都是教JAVA,同时我自己也是通过java学起来的,我们都知道Java是目前使用最为广泛的网络编程语言之一。他容易学而且很好用,如果你学习过C++语言,你会觉得C++和Java很像,因为Java中许多基本语句的语法和C++一样,像常用的循环语句,控制语句等和C++几乎一样,其实Java和C++是两种完全不同的语言,Java只需理解一些基本的概念,就可以用它编写出适合于各种情况的应用程序。Java略去了运算符重载、多重继承等模糊的概念,C++中许多容易混淆的概念,有的被Java弃之不用了,或者以一种更清楚更容易理解的方式实现,因此Java语言相对是简单的。
那在学习Java的时候,我们一般需要学习这些课程: HTML&CSS&JS,java的基础,JDBC与数据库,JSP java web技术, jQuery与AJAX技术,SpringMVC、Mybatis、Hibernate等等。这些课程都能帮助我们更好了解Java,学会运用Java。
3. 大数据相关课程的学习
学完了编程语言之后,一般就可以进行大数据部分的课程学习了。一般来说,学习大数据部分的时间比学习Java的时间要短。大数据部分课程,包括大数据技术入门,海量数据高级分析语言,海量数据存储分布式存储,以及海量数据分析分布式计算等部分,Linux,Hadoop,Scala, HBase, Hive, Spark等等专业课程。如果要完整的学习大数据的话,这些课程都是必不可少的。
4. 实战阶段
不用多说,学习完任何一门技术,最后的实战训练是最重要的,进行一些实际项目的操作练手,可以帮助我们更好的理解所学的内容,同时对于相关知识也能加强记忆,在今后的运用中,也可以更快的上手,对于相关知识该怎么用也有了经验。目前要找到可以让自己操作的实际项目可能不太多,但是有一些资源比较好的培训机构,是拥有大量实际的大数据项目的,选择这种机构的另一个好处就是,我们可以学到任课老师的一些经验。在实际练手的过程中,老师会教给你一些相应的技巧,或者是根据他们的经验,教你一些捷径。
一般来说,零基础学习大数据大概就是分为这4个阶段,学习大数据不是件容易的事,但是只要你能多努力,积极地解决自己的疑惑,多练手,相信你一定可以掌握这门技术。
首先要掌握的就是Java语言和Linux操作系统,这两个是大数据的基础。学习顺序的话不分前后的。
(1)Java:Java也有很多方向。JavaSE,JavaEE还有JavaME,大数据的话只需要学习Java标准版的JavaSE就可以了,像Servlet、JSP、Tomcat、Struts等在JavaEE方向,在大数据里面不常用到。但是需要了解,想要成为成为人才的话可以要学习Hibernate或者Mybites的原理,不要只学习API。
(2)Linux:因为大数据相关软件都是在Linux上面运行的所以,Linux要学习很扎实。它能让你更好的理解hadoop,hive,hbase,spark等大数据软件的运行环境和网络环境配置,能少踩很多坑,学会shell就能看懂脚本这样更容易理解配置大数据集群。
大数据学习
第一阶段 Java语言编程基础:计算机基础、编程基础、面向对象、常用类、集合操作、IO操作。
第二阶段 Javaweb核心技术:Java基础增强、数据库操作、前端技术基础、Javaweb核心、Linux服务器、Javaweb综合项目实战。
第三阶段 网站开发三大框架:项目构建及管理、数据库操作框架、spring框架、Springmvc框架、CRM项目实战。
第四阶段 互联网搜索及爬虫:单机爬虫开发、爬虫高级开发、分布式爬虫、搜索系统技术、搜索系统框架、分布式搜索系统。
第五阶段 分布式电商系统:电商基础背景和项目需求分析、dubbo、angularJS、电商核心业务实现;Nginx、Hudson、solrCloud、keepalived、负载均衡、反向代理、高并发;redis Cluster、freemarker页面静态化、高并发;mycat数据库、高并发;docker容器部署、热部署、高并发。
第六阶段 大数据离线计算:基础增强、大数据平台、数据收集、数据存储、数据计算、数据管理、案例分析、数据分析、核心增强、核心提高。
第七阶段 大数据实时计算:实时数据存储、实时数据计算、实时计算案例、实时数据存储、实时数据查询、推荐系统开发。
第八阶段 大数据内存计算:Scala语言基础、spark基础、sparkRDD、spark SQL、spark streaming、项目实战阶段。
第九阶段 机器学习基础:机器学习基础概念、机器学习决策树模型、机器学习KNN模型、机器学习SVM支持向量机、机器学习感知机与BP神经网络。
Hadoop:这是现在流行的大数据处理平台。包括HDFS、MapReduce和YARN,HDFS是储存数据的地方想我们的电脑硬盘一样,都存储在这个上面。MapReduce是对数据进行处理计算的,它的特点是不管多大的数据只要有时间就能跑完。YARN是体现Hadoop平台概念的重要组件。
大数据中重要的要掌握的几点:
Zookeeper:安装Hadoop的HA的时候就会用到它,以后的Hbase也会用到它。需要把它安装正确 ,让它正常的跑起来。
Mysql:在Linux上把它安装好,运行起来,会配置简单的权限,修改root密码,创建数据库。
Sqoop:这个是用于把Mysal里面的数据导入Hadoop里面。
Hive:和Pig同理,想要变得厉害可以都学习。
Oozie:可以帮你管理你的Hive或者MapReduce、Spark脚本还能检查你的程序执行的是否正确。
Hbase:这个是Hadoop生态体系中的NOSQL数据库,是按照key和value的形式存储的并且key是唯一的。所以可以帮你做数据排重,它与MYSQL相比存储的数据量大。
Kafka:这个是队列工具。可以利用它来做线上实时数据的入库或者是入HDFS,与Flume的工具配合使用,专门用来提供对数据进行简单处理。
Spark:这个工具是用来弥补MapReduce处理数据速度上的缺点,特点就是把数据装载到内存里面去计算。适合做迭代运算,Java语言或者Scala都可以操作它,他们都是用JVM的。
上面的知识点和线路图你能完整的学下来掌握,基本去哪家企业都很抢手~
(你认为零基础学习大数据有哪些方法!)