大数据技术由浅入深依次掌握:
Java语言基础:
Java语言基础、Java流程控制、Java字符串、Java数组与类和对象、数字处理类与核心技术、I/O与反射,多线程、Swing程序与集合类;
HTML、CSS与JavaScript:
PC端网站布局、HTML5+CSS3基础、WebAPP页面布局、原生javascript交互功能开发、Ajax异步交互、jQuery应用;
JavaWeb和数据库:
数据库、javaWeb开发核心、JavaWeb开发内幕;
Linux基础:
Linux安装与配置、系统管理与目录管理、用户与用户组管理、Shell编程、服务器配置、Vi编辑器与Emacs编辑器;
Hadoop生态体系:
Hadoop起源与安装、MapReduce快速入门、Hadoop分布式文件系统、Hadoop文件I/O详解、MapReduce工作原理、MapReduce编程开发、Hive数据仓库工具、开源数据库HBase、Sqoop与Oozie;
Spark生态体系:
Spark部署和运行、Spark程序开发、Spark编程模型、作业执行解析、Spark SQL与DataFrame、深入Spark Streaming、Spark MLlib与机器学习、GraphX与SparkR、spark项目实战、scala编程、Python编程;
Storm实时开发:
storm基本知识、拓扑详解与组件详解、Hadoop分布式系统、spout详解与bolt详解、zookeeper详解、storm安装与集群搭建、storm-starter详解、开源数据库HBase、trident详解;
首先是基础阶段。
这一阶段包括:关系型数据库原理、LINUX操作系统原理及应用。在掌握了这些基础知识后,会安排这些基础课程的进阶课程,即:数据结构与算法、MYSQL数据库应用及开发、SHELL脚本编程。
在掌握了这些内容之后,大数据基础学习阶段才算是完成了。接下来是大数据专业学习的第二阶段:大数据理论及核心技术。
第二阶段也被分为了基础和进阶两部分,先理解基础知识,再进一步对知识内容做深入的了解和实践。基础部分包括:布式存储技术原理与应用、分布式计算技术、HADOOP集群搭建、运维;进阶内容包括:HDFS高可靠、ZOOKEEPER、CDH、Shuffle、HADOOP源码分析、HIVE、HBASE、Mongodb、HADOOP项目实战。
完成了这部分内容的学习,学员们就已经掌握了大数据专业大部分的知识,并具有了一定的项目经验。但为了学员们在大数据专业有更好的发展,所学知识能更广泛地应用到大数据相关的各个岗位,有个更长远的发展前景。
第三阶段叫做数据分析挖掘及海量数据高级处理技术。基础部分有:PYTHON语言、机器学习算法、FLUME+KAFKA;进阶部分有:机器学习算法库应用、实时分析计算框架、SPARK技术、PYTHON高级语言应用、分布式爬虫与反爬虫技术、实时分析项目实战、机器学习算法项目实战。
前言,学大数据要先换电脑:
保证电脑4核8G内存64位操作系统,尽量有ssd做系统盘,否则卡到你丧失信心。硬盘越大越好。
1,语言要求
java刚入门的时候要求javase。
scala是学习spark要用的基本使用即可。
后期深入要求:
java NIO,netty,多线程,ClassLoader,jvm底层及调优等,rpc。
2,操作系统要求
linux 基本的shell脚本的使用。
crontab的使用,最多。
cpu,内存,网络,磁盘等瓶颈分析及状态查看的工具。
scp,ssh,hosts的配置使用。
telnet,ping等网络排查命令的使用
3,sql基本使用
sql是基础,hive,sparksql等都需要用到,况且大部分企业也还是以数据仓库为中心,少不了sql。
sql统计,排序,join,group等,然后就是sql语句调优,表设计等。
4,大数据基本了解
Zookeeper,hadoop,hbase,hive,sqoop,flume,kafka,spark,storm等这些框架的作用及基本环境的搭建,要熟练,要会运维,瓶颈分析。
5,mapreduce及相关框架hive,sqoop
深入了解mapreduce的核心思想。尤其是shuffle,join,文件输入格式,map数目,reduce数目,调优等。
6,hive和hbase等仓库
hive和hbase基本是大数据仓库的标配。要回用,懂调优,故障排查。
hbase看浪尖hbase系列文章。hive后期更新。
7,消息队列的使用
kafka基本概念,使用,瓶颈分析。看浪尖kafka系列文章。
8,实时处理系统
storm和spark Streaming
9,spark core和sparksql
spark用于离线分析的两个重要功能。
10,最终方向决策
a),运维。(精通整套系统及故障排查,会写运维脚本啥的。)
b),数据分析。(算法精通)
c),平台开发。(源码精通)
自学还是培训?
无基础的同学,培训之前先搞到视频通学一遍,防止盲目培训跟不上讲师节奏,浪费时间,精力,金钱。
有基础的尽量搞点视频学基础,然后跟群里大牛交流,前提是人家愿意,
想办法跟大牛做朋友才是王道。
学习要根据自身情况来定,如果你是零基础,那就必须先从基础Java开始学起(大数据支持很多开发语言,但企业用的最多的还是JAVA),接下来学习数据结构、Linux系统操作、关系型数据库,夯实基础之后,再进入大数据的学习,具体可以按照如下体系:第一阶段CORE JAVA (加**的需重点熟练掌握,其他掌握)Java基础**数据类型,运算符、循环,算法,顺序结构程序设计,程序结构,数组及多维数组面向对象**构造方法、控制符、封装继承**多态**抽象类、接口**常用类集合Collection、list**HashSet、TreeSet、Collection集合类Map**异常,File文件/流**数据流和对象流**线程(理解即可)网络通信(理解即可)第二阶段数据结构关系型数据库Linux系统操作Linux操作系统概述,安装Linux操作系统,图形界面操作基础,Linux字符界面基础,字符界面操作进阶,用户、组群和权限管理,文件系统管理,软件包管理与系统备份,Linux网络配置 (主要掌握Linux操作系统的理论基础和服务器配置实践知识,同时通过大量实验,着重培养动手能力。
了解Linux操作系统在行业中的重要地位和广泛的使用范围。在学习Linux的基础上,加深对服务器操作系统的认识和实践配置能力。
加深对计算机网络基础知识的理解,并在实践中加以应用。掌握Linux操作系统的安装、命令行操作、用户管理、磁盘管理、文件系统管理、软件包管理、进程管理、系统监测和系统故障排除。
掌握Linux操作系统的网络配置、DNS、DHCP、HTTP、FTP、SMTP和POP3服务的配置与管理。为更深一步学习其它网络操作系统和软件系统开发奠定坚实的基础。
与此同时,如果大家有时间把javaweb及框架学习一番,会让你的大数据学习更自由一些)重点掌握:常见算法数据库表设计,SQL语句,Linux常见命令第三阶段Hadoop阶段离线分析阶段实时计算阶段重点掌握:Hadoop基础,HDFS,MapReduce,分布式集群,Hive,Hbase,Sqoop,Pig,Storm实时数据处理平台,Spark平台。
第一阶段:linux基础入门
Linux基础入门主要包括: Linux硬件基础、Linux发展历史、Linux系统安装、xshell连接、xshell优化、SSH远程连接故障问题排查、L inux基础优化、Linux目录结构知识、Linux文件属性、Linux通配符、正则表达式、Linux系统权限等
第二阶段:linux系统管理进阶
linux系统管理进阶包括:Linux定时任务、Linux用户管理、Linux磁盘与文件系统、Linux三剑客之sed命令等。
第三阶段:Linux Shell基础
Linux Shell基础包括:Shell编程基础、Linux三剑客之awk命令等。
第四阶段:Linux网络基础
第五阶段:Linux网络服务
Linux网络服务包括:集群实战架构开始及环境准备、rsync数据同步服务、Linux全网备份项目、nfs网络存储服务精讲、inotify/sersync实时数据同步/nfs存储实时备份项目等。
第六阶段:Linux重要网络服务
Linux重要网络服务包括:http协议/www服务基础、nginx web介绍及基础实践、nginx web、lnmp环境部署/数据库异机迁移/共享数据异机迁移到NFS系统、nginx负载均衡、keepalived高可用等。
第七阶段:Ansible自动化运维与Zabbix监控
Ansible自动化运维与Zabbix监控包括: SSH服务秘钥认证、ansible批量自动化管理集群、zabbix监控等。
第九阶段:大规模集群高可用服务(Lvs、Keepalived)
第十阶段:Java Tomcat服务及防火墙Iptables
第十一阶段:MySQL DBA高级应用实践
MySQL DBA高级应用实践包括:MySQL数据库入门基础命令、MySQL数据库进阶备份恢复、MySQL数据库深入事务引擎、MySQL数据库优化SQL语句优化、MySQL数据库集群主从复制/读写分离、MySQL数据库高可用/mha/keepalved等。
第十二阶段:高性能数据库Redis和Memcached课程
第十三阶段:Linux大规模集群架构构建(200台)
第十四阶段:Linux Shell编程企业案例实战
第十五阶段:企业级代码发布上线方案(SVN和Git)
第十六阶段企业级Kvm虚拟化与OpenStack云计算
第十七阶段公有云阿里云8大组件构建集群实战
第十八阶段:Docker技术企业应用实践
第十九阶段:Python自动化入门及进阶
第二十阶段:职业规划与高薪就业指导
在平台方面,hadoop环境需要搭建在linux服务器上,首先需要了解Linux的基础知识与命令;
开发方面,hadoop首先是个提供大数据存储的平台,因此我们要使用其存储功能,因此需要掌握其数据操作的api(scala api 或者 java api);其次是hadoop是大数据分析的数据源,熟悉对大数据的 分析/使用 方法(spark/map-reduce技术,都有scala 和 java两种api)。
因此,学习hadoop必须掌握scala或者java中的一门开发语言,然后在学习hadoop数据操作命令,api,spark/map-reduce分析技术。
另外,还可以学习hbase这种基于hdfs的结构化大数据存储技术,和flume大数据采集技术。
学习大数据要有一定的编程基础,这是大数据大部分岗位都需要的。
目前从事大数据方向的程序员比较普遍使用的语言有四种,分别是Python、Java、Scala和R,这四种语言都有一定的应用场景,不同岗位的程序员使用的语言也稍有不同。Python目前主要是应用在数据分析、数据挖掘和算法实现上,可以说大数据领域Python的应用是比较普遍的。
Java目前在大数据领域的应用还是跟平台有直接关系,通常在需要高性能的数据处理部分采用Java开发。Scala和R主要是基于场景的应用多一些,Scala构建在Java基础之上,代码结构要比Java简洁一些,同时Scala是Spark的实现语言,在与Spark相关的开发中使用Scala是比较方面的选择。
R语言本身的特点就是统计分析,语法简单且功能强大,是做大数据统计分析的一把利器。
第一阶段:linux基础入门Linux基础入门主要包括: Linux硬件基础、Linux发展历史、Linux系统安装、xshell连接、xshell优化、SSH远程连接故障问题排查、L inux基础优化、Linux目录结构知识、Linux文件属性、Linux通配符、正则表达式、Linux系统权限等第二阶段:linux系统管理进阶linux系统管理进阶包括:Linux定时任务、Linux用户管理、Linux磁盘与文件系统、Linux三剑客之sed命令等。
第三阶段:Linux Shell基础Linux Shell基础包括:Shell编程基础、Linux三剑客之awk命令等。第四阶段:Linux网络基础第五阶段:Linux网络服务Linux网络服务包括:集群实战架构开始及环境准备、rsync数据同步服务、Linux全网备份项目、nfs网络存储服务精讲、inotify/sersync实时数据同步/nfs存储实时备份项目等。
第六阶段:Linux重要网络服务Linux重要网络服务包括:http协议/www服务基础、nginx web介绍及基础实践、nginx web、lnmp环境部署/数据库异机迁移/共享数据异机迁移到NFS系统、nginx负载均衡、keepalived高可用等。第七阶段:Ansible自动化运维与Zabbix监控Ansible自动化运维与Zabbix监控包括: SSH服务秘钥认证、ansible批量自动化管理集群、zabbix监控等。
第九阶段:大规模集群高可用服务(Lvs、Keepalived)第十阶段:Java Tomcat服务及防火墙Iptables第十一阶段:MySQL DBA高级应用实践MySQL DBA高级应用实践包括:MySQL数据库入门基础命令、MySQL数据库进阶备份恢复、MySQL数据库深入事务引擎、MySQL数据库优化SQL语句优化、MySQL数据库集群主从复制/读写分离、MySQL数据库高可用/mha/keepalved等。第十二阶段:高性能数据库Redis和Memcached课程第十三阶段:Linux大规模集群架构构建(200台)第十四阶段:Linux Shell编程企业案例实战第十五阶段:企业级代码发布上线方案(SVN和Git)第十六阶段企业级Kvm虚拟化与OpenStack云计算第十七阶段公有云阿里云8大组件构建集群实战第十八阶段:Docker技术企业应用实践第十九阶段:Python自动化入门及进阶第二十阶段:职业规划与高薪就业指导。
Linux是一种自由和开放源代码的类Unix操作系统,以Unix为原型改造的,一个多用户多任务的操作系统,任何人都可以修改其代码和页面,主要的目的就是为了不收商业化的限制,服务器部署在linux系统上会更加高效稳定、安全。
严格来讲,Linux只是操作系统内核本身,但通常采用“Linux内核”来表达该意思。而Linux则常用来指基于Linux内核的完整操作系统,它包括GUI组件和许多其他实用工具。
云计算、大数据的发展是基于开源软件的平台,Linux占据优势, 大数据的分布式集群( Hadoop,Spark )都是搭建在多台 Linux 系统上,对集群的执行命令都是在 Linux 终端窗口输入的。
大数据也是产业互联网重要的技术组成部分,而且大数据自身的产业生态规模也比较大,涉及到的岗位类型也比较多,包括数据采集、数据整理(清洗、归并)、数据存储、数据安全、数据分析、数据呈现、数据应用等,这些岗位也需要各种不同类型的人才。如果对于数据比较敏感,同时具有一定的数学基础,那么选择大数据方向也完全可以
以上就是我的回答,希望对你有所帮助
声明:本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
蜀ICP备2020033479号-4 Copyright © 2016 学习鸟. 页面生成时间:3.397秒