大家好,我是Lake,专注大数据技术、程序员经验、互联网科技见解分享。
作为一个软件工程师,我个人目前从事的就是大数据方向。目前大数据可以分成很多具体的方向:大数据平台开发、大数据分析师(BI)、大数据运维、大数据处理(ETL)、大数据组件开发(偏大数据组件底层)。不同的工作方向,其工作内容还是有一定差异的,下面我来说下不同工作岗位具体的工作内容:
大数据平台开发更偏向对整体数据平台功能性开发,比如离线计算平台、实时计算平台、算法推荐平台等等。平时用的较多的语言是Java,其更偏向于Java开发。如果用户是上层用户,大数据相关组件作为最低层,大数据平台就桥接着用户和大数据组件,方便用户使用大数据组件的功能。
大数据方面有很多的技术:
一是大数据平台本身,一般是基于某些Hadoop产品如CDH的产品部署后提供服务。部署的产品里面有很多的组件,如HIVE、HBASE、SPARK、ZOOKEEPER等,一般都是基于Java的;
二是ETL,即数据抽取过程;大数据平台中的原始数据一般是来源于公司内的其它业务系统,如银行里面的信贷、核心等,这些业务系统的数据每天会从业务系统抽取到大数据平台中,然后进行一系列的标准化、清理等操作,再然后经过一些建模生成一些模型给下游系统使用; ETL一般对应有一个调度平台,一般是Java等技术实现的,基于Kettle进行封装;因此在ETL过程中有以下工作:一是调度平台的开发(也可以是产品部署);二是ETL过程中需要使用到的一些Shell脚本的开发;三是ETL及建模过程中调用的一些SQL过程的开发;当然也还有模型的设计等较为高级的工作;
三就是数据分析了;在数据收集完成后基于这些数据要做一些什么样的处理,典型的如报表应用,那每天可能就是写SQL开发报表了;还有一些如风险监测等平台,都要基于大数据平台收集的数据来进行处理;更往上就是一些如客户行为预测分析等分析场景,这个时候就需要使用一些更加专业的数据分析工具如SAS或者其它的一些更加高级的语言如Python、R语言等来进行数据挖掘及分析了。
你所说的大数据平台开发,需要明确到底是哪方面的开发才能做进一步的解答。
从工作内容上来说,大数据开发主要是负责大数据挖掘,大数据清洗处理,大数据建模等工作,主要是负责大规模数据的处理和应用,工作主要以开发为主,与大数据可视化分析工程师相互配合,从数据中挖掘出价值,为企业业务发展提供支持。
大数据开发工程师的主要工作内容:
1、负责公司大数据平台的开发和维护,负责大数据平台持续集成相关工具平台的架构设计与产品开发等;
2、主要从事网络日志的大数据分析工作,包括:网络日志的数据提取、数据融合及分析;专注于实时计算、流式计算、数据可视化等技术的研发;
3、负责网络安全业务主题建模等工作。
大数据开发是大数据职业发展的方向之一,另一方面是大数据分析。从工作内容,主要负责大数据的大数据挖掘,数据清洗的发展,数据建模工作,主要负责处理和大数据应用,主要在发展工作,结合大数据可视化分析工程师,挖掘出价值的数据,为企业提供业务发展支持。
这里还是要推荐下小编的大数据学习群:532218147,不管你是小白还是大牛,小编我都欢迎,不定期分享干货,包括小编自己整理的一份2017最新的大数据资料和0基础入门教程,欢迎初学和进阶中的小伙伴。在不忙的时间我会给解答
大数据开发、数据仓库、数据安全、数据分析、数据挖掘等都是围绕大数据的商业价值应运而生。大数据开发主要分为大数据平台开发(研发级)、大数据应用开发和大数据分析(统计学和机器学习),不同岗位需要面对不同的岗位职责,也需要具备不同的知识结构。
大数据开发做什么?
负责公司数据平台与数仓模型设计与开发;规范底层数据存储,结构化查询逻辑,方便快捷获取数据;支持实时数据报表、离线数据报表、交互式数据分析等多种数据应用;对大数据相关的前沿技术进行预研。
大数据开发需要具备的基本技能:目前从事大数据应用开发的语言包括Java、Python、Scala、R等,需要熟悉Hadoop、HBbase、hive、spark、Flink、ES、Presto、Flume、Kafka生态的原理和使用方法,掌握数据开发、数据挖掘的各项流程。
Java语言由于具备较为完善的生态,而且Hadoop平台自身也是Java语言开发的,所以Java语言往往是比较常见的选择。在学习Java语言的过程中,可以同步接触Hadoop平台,掌握Hadoop平台的整体结构,并且通过Java完成Hadoop平台的一些案例实验,进而逐步掌握在Hadoop平台下的Java应用开发。
大数据这一块你可以参考一下阿里云的体系,在国内阿里云大数据做的还是非常快的。
- 大数据开发应该是大型数据库的抓取、处理、分析、得出想要的结论这样的体系,基本也是需要写代码的。个人感觉和Java类似,只是领域不同,一般数据用“量级”来显示的时候就需要代码处理了。
- 总的来说,大数据开发要求更多一点,除了开发能力还需要数据分析能力、数据建模等等。
大数据开发使用了那些技术,分别是hadoop,hive,hbase,spark等,为什么等呢,它有不用的应用的场景。有日志清洗场景,有推荐场景,有数据挖掘场景,但基本的还是上面那些,学大数据,我觉得还要学scala语言,它是函数编程,学了java应该对scala会比较容易学,但大数据的方向比较广,需要你好好想想了
大数据,是对数据进行抓取,整理,分析处理,然后提供给其它部门使用。可以作为其它业务的数据来源,也可以作为业务运营的分析依据,还可以做为决策依据。Java开发,是PD使用 JAVA语言实现业务功能,曾经见到过大数据的同事使用JAVA分析数据的,但分析数据的python用的比较多。
有hadoop spark生态下的各种开发工具,如果你想学习,给你一套完整的学习路线
主要的方向包括:数据分析师、Hadoop开发工程师、大数据开发工程师、数据挖掘工程师、算法工程师
这是积云教育大数据方向学完毕业后能够从事的方向,像一般的java班可能学的东西较少,能够从事的工作方向也是有限的。