为了账号安全,请及时绑定邮箱和手机立即绑定

从“砌墙”到敲代码,看土木工程专业如何转型大数据开发

2019.07.27 18:42 117浏览

土木工程听起来是多么的高大上,梦想着自己将来会成为一名工程师,能够指点江山。但理想很丰满,现实很骨感。

毕业后拿着一张含金量并不高的大专毕业证进入到了土木工程领域,可以想象,我每天就是在“砌墙”与“搬砖”之间徘徊,所以不管别人想法如何,我决定换一种活法。

如果你准备入坑大数据开发,可以关注WX ID:IT资讯科技    会有最前沿的学习资讯

身边的同事都劝我不要转行,他们认为做IT就是在电脑上“搬砖”和在这里有什么区别呢?大家都是混工龄的,岁数到薪资自然高,但我并不这么想。

IT行业比其他行业更直接的一点就是凭本事吃饭,只要你技术过硬,即使没有文凭,没有工龄也能够拿到高薪。所以,我毅然决然的选择了转行大数据开发。

选择转行大数据开发,并不是我头脑发热所作出的决定,我了解过java开发的前景、UI发展的前景等等,相互对比之后才选择的大数据,所以,如果有和我一样的人,希望你们在转行的时候也要尽可能的去了解一下市场的需求和自己的兴趣点,毕竟每一次的转变都将对你的人生起到巨大的作用。

我从一个土木工程“砌墙者”蜕变为一名大数据界的“搬砖者”,虽然现在的工作并不轻松,但我很知足。

其实并不是土木工程行业不好,只是,想要获取15k的薪资,那么至少得有5-8年的工作经验,所以,我对自己转型大数据开发感到一丢丢的“小确幸”,毕竟半年的时间,我完成原来行业可能需要5年才完成的薪资标准,且大数据作为新兴的行业,未来的前景会更加广阔。

最后我想告诉还在纠结、徘徊的小伙伴们,选择有时候比努力更重要,但是选择正确后没有足够的努力也很难成功。

选择大数据是我做的一个选择,五个月我没有一刻停止努力,如今,我分享自己的经历,也希望在求学途中的你,能够做出更好的选择、付出足够的努力,实现你的期望。最后分享下我的大数据学习线路,希望对你有帮助!

如果你准备入坑大数据开发,可以关注wxID:IT资讯科技    会有最前沿的学习资讯

一、第一阶段:静态网页基础(HTML+CSS)

主要技术包括:html常用标签、CSS常见布局、样式、定位等、静态页面的设计制作方式等

从技术层面来说,该阶段使用的技术代码很简单、易于学习、方便理解。从后期课程层来说,因为我们重点是大数据,但前期需要锻炼编程技术与思维。经过我们多年开发和授课的项目经理分析,满足这两点,目前市场上最好理解和掌握的技术是J2EE,但J2EE又离不开页面技术。所以第一阶段我们的重点是页面技术。采用市场上主流的HTMl+CSS。

二、第二阶段:JavaSE+JavaWeb

主要技术包括:java基础语法、java面向对象(类、对象、封装、继承、多态、抽象类、接口、常见类、内部类、常见修饰符等)、异常、集合、文件、IO、MYSQL(基本SQL语句操作、多表查询、子查询、存储过程、事务、分布式事务)JDBC、线程、反射、Socket编程、枚举、泛型、设计模式称为Java基础,由浅入深的技术点、真实商业项目模块分析、多种存储方式的设计与实现。该阶段是前四个阶段最最重要的阶段,因为后面所有阶段的都要基于此阶段,也是学习大数据紧密度最高的阶段。本阶段将第一次接触团队开发、产出具有前后台(第一阶段技术+第二阶段的技术综合应用)的真实项目。

三、第三阶段:前端框架

主要技术包括:JavaScript、Jquery、注解反射一起使用,XML以及XML解析、解析dom4j、jxab、jdk8.0新特性、SVN、Maven、easyui

前两个阶段的基础上化静为动,可以实现让我们网页内容更加的丰富,当然如果从市场人员层面来说,有专业的前端设计人员,我们设计本阶段的目标在于前端的技术可以更直观的锻炼人的思维和设计能力。同时我们也将第二阶段的高级特性融入到本阶段。使学习者更上一层楼。

四、第四阶段:企业级开发框架

主要技术包括:Hibernate、Spring、SpringMVC、log4jslf4j整合、myBatis、struts2、Shiro、redis、流程引擎activity,爬虫技术nutch,lucene,webServiceCXF、Tomcat集群和热备、MySQL读写分离

从J2EE开发工程师的任职要求来说,该阶段所用到的技术是必须掌握,而我们所授的课程是高于市场(市场上主流三大框架,我们进行七大框架技术传授)、而且有真实的商业项目驱动。需求文档、概要设计、详细设计、源码测试、部署、安装手册等都会进行讲解。

五、第五阶段:初识大数据

主要技术包括:大数据前篇(什么是大数据,应用场景,如何学习大数据库,虚拟机概念和安装等)、Linux常见命令(文件管理、系统管理、磁盘管理)、LinuxShell编程(SHELL变量、循环控制、应用)、Hadoop入门(Hadoop组成、单机版环境、目录结构、HDFS界面、MR界面、简单的SHELL、java访问hadoop)、HDFS(简介、SHELL、IDEA开发工具使用、全分布式集群搭建)、MapReduce应用(中间计算过程、Java操作MapReduce、程序运行、日志监控)、Hadoop高级应用(YARN框架介绍、配置项与优化、CDH简介、环境搭建)、扩展(MAP端优化,COMBINER使用方法见,TOPK,SQOOP导出,其它虚拟机VM的快照,权限管理命令,AWK与SED命令)

该阶段设计是为了让新人能够对大数据有一个相对的大概念怎么相对呢?在前置课程JAVA的学习过后能够理解程序在单机的电脑上是如何运行的。现在,大数据呢?大数据是将程序运行在大规模机器的集群中处理。大数据当然是要处理数据,所以同样,数据的存储从单机存储变为多机器大规模的集群存储。

六、第六阶段:大数据数据库

主要技术包括:Hive入门(Hive简介、Hive使用场景、环境搭建、架构说明、工作机制)、HiveShell编程(建表、查询语句、分区与分桶、索引管理和视图)、Hive高级应用(DISTINCT实现、groupby、join、sql转化原理、java编程、配置和优化)、hbase入门、HbaseSHELL编程(DDL、DML、Java操作建表、查询、压缩、过滤器)、细说Hbase模块(REGION、HREGIONSERVER、HMASTER、ZOOKEEPER简介、ZOOKEEPER配置、Hbase与Zookeeper集成)、HBASE高级特性(读写流程、数据模型、模式设计读写热点、优化与配置)

该阶段设计是为了让大家在理解大数据如何处理大规模的数据的同时。简化咋们的编写程序时间,同时提高读取速度。怎么简化呢?在第一阶段中,如果需要进行复杂的业务关联与数据挖掘,自行编写MR程序是非常繁杂的。所以在这一阶段中我们引入了HIVE,大数据中的数据仓库。这里有一个关键字,数据仓库。我知道你要问我,所以我先说,数据仓库呢用来做数据挖掘分析的,通常是一个超大的数据中心,存储这些数据的呢,一般为ORACLE,DB2,等大型数据库,这些数据库通常用作实时的在线业务。

总之,要基于数据仓库分析数据呢速度是相对较慢的。但是方便在于只要熟悉SQL,学习起来相对简单,而HIVE呢就是这样一种工具,基于大数据的SQL查询工具,还包括HBASE,它为大数据里面的数据库。

七、第七阶段:实时数据采集

主要技术包括:Flume日志采集,KAFKA入门(消息队列、应用场景、集群搭建)、KAFKA详解(分区、主题、接受者、发送者、与ZOOKEEPER集成、Shell开发、Shell调试)、KAFKA高级使用(java开发、主要配置、优化项目)、数据可视化(图形与图表介绍、CHARTS工具分类、柱状图与饼图、3D图与地图)、STORM入门(设计思想、应用场景、处理过程、集群安装)、STROM开发(STROMMVN开发、编写STORM本地程序)、STORM进阶(java开发、主要配置、优化项目)、KAFKA异步发送与批量发送时效,KAFKA全局消息有序,STORM多并发优化

前面的阶段数据来源是基于已经存在的大规模数据集来做的,数据处理与分析过后的结果是存在一定延时的,通常处理的数据为前一天的数据。举例场景:网站防盗链,客户账户异常,实时征信,遇到这些场景基于前一天的数据分析出来过后呢?是否太晚了。所以在本阶段中我们引入了实时的数据采集与分析。主要包括了:FLUME实时数据采集,采集的来源支持非常广泛,KAFKA数据数据接收与发送,STORM实时数据处理,数据处理秒级别

八、第八阶段:SPARK数据分析

主要技术包括:SCALA入门(数据类型、运算符、控制语句、基础函数)、SCALA进阶(数据结构、类、对象、特质、模式匹配、正则表达式)、SCALA高级使用(高阶函数、科里函数、偏函数、尾迭代、自带高阶函数等)、SPARK入门(环境搭建、基础结构、运行模式)、Spark数据集与编程模型、SPARKSQL、SPARK进阶(DATAFRAME、DATASET、SPARKSTREAMING原理、SPARKSTREAMING支持源、集成KAFKA与SOCKET、编程模型)、SPARK高级编程(Spark-GraphX、Spark-Mllib机器学习)、SPARK高级应用(系统架构、主要配置和性能优化、故障与阶段恢复)、SPARKMLKMEANS算法,SCALA隐式转化高级特性


点击查看更多内容
0人点赞

若觉得本文不错,就分享一下吧!

评论

相关文章推荐

正在加载中
意见反馈 邀请有奖 帮助中心 APP下载
官方微信

举报

0/150
提交
取消