搞大数据,Java 工程师需要掌握哪些知识?

简介: 搞大数据,Java 工程师需要掌握哪些知识?

题目是一名叫“截然不同”的同学私信我的一个问题,原话是,“搞大数据,java 需要掌握哪些技术点?”,我稍微调整了一下。必须得承认一点,我本人没有搞过大数据,所在这方面的经验为零。


但同学既然问了,咱就不能假装不知道啊,虽然真的是不知道。但要变强,就必须无所畏惧,迎难而上,对吧?




幸好我身边有一些朋友是做大数据的,我可以向他们请教,了解清楚后,我现在就把他们给我的建议整理一下发出来,希望给有需求的同学们一点帮助。


01、大数据的就业方向有哪些?


现实点,我们掌握任何技能都是为了就业,为了能够找份工作糊口;立志不打工的同学们请绕行哈。


那大数据的就业方向都有哪些呢?


大数据工程师


大数据科学家


数据分析师


那针对这些不同的就业方向,都需要哪些技能呢?我们来一一的分析下。


02、大数据工程师的技能要求


大数据工程师的门槛相对其他两个较低一些,所以同学们可以重点关注一下这个方向。


先说一些必备的技能吧。


对 Java 虚拟机有着深入的研究,推荐书籍,周志明的《深入理解 Java 虚拟机》。


对 Java 并发掌握得很透彻,推荐书籍,《Java 并发编程实战》。


掌握 Hadoop。Hadoop 是一款支持数据密集型分布式应用程序并以 Apache 2.0 许可协议发布的开源软件框架,可以使应用程序与成千上万的独立计算的电脑和 PB 级的数据连接起来,整个 Hadoop “平台”还包括 MapReduce、Hadoop 分布式文件系统(HDFS)。


掌握 HBase。HBase 是一个开源的非关系型分布式数据库,是 Hadoop 项目的一部分,运行于 HDFS 文件系统之上,对稀疏文件提供极高的容错率。


掌握 Hive。Hive 是一个建立在 Hadoop 架构之上的数据仓库,能够提供数据的精炼,查询和分析。


掌握 Kafka。Kafka 的目标是为处理实时数据提供一个统一、高吞吐、低延迟的平台。


掌握 Storm。Storm 是一个分布式计算框架,使用用户创建的“管”和“螺栓”来定义信息源和操作,允许批量、分布式处理流式数据。


了解 Scala。Scala 是一门多范式的编程语言,设计初衷是要集成面向对象编程和函数式编程的各种特性。可以和 Java 兼容,运行在 Java 虚拟机上。


掌握 Spark。Spark 是一个开源集群运算框架,相对于 Hadoop 的 MapReduce 会在运行完工作后将中介数据存放到磁盘中,Spark 使用了存储器内运算技术,能在数据尚未写入硬盘时即在存储器内分析运算。


会用 Linux。推荐书籍,鸟哥的《Linux 私房菜》。


再来说一些高阶的技能吧。


会用 Python。


会用 R 语言。


精通算法和数据结构。


03、大数据科学家的技能要求


“科学家”,这个 title 听起来就很牛逼,不会出乎同学们的意料,我小时候的梦想之一除了成为一名作家之外,就是成为一名“科学家”。


那大数据科学家,要求的技能就会超出绝大多数普通人的能力。首先,要对“统计机器学习方法”有着很深入的研究,既要会预测,还要能解释为什么要这样预测,对吧?


如果要预测股票是涨还是跌,就必须得有一套可以解释给客户听的理论,还要有一套预测方法,让程序能够按照这个方法去执行,并得出预期的结论。


现如今,数据已经不值钱了,哪里都是大量的数据,值钱的是通过对这些数据进行分析,得出指导性的建议——这就要求科学家要有数据处理的能力。


不多说了,这方面的要求非常高,最起码也得考个研究生吧。


04、数据分析师的技能要求


数据分析也可以细分为两个领域,一个类似产品经理,更注重业务,对业务能力要求比较高;一个偏向数据挖掘,更注重技术,对算法和数据结构要求比较高。


那不管是产品经理还是做数据挖掘,SQL 是必知必会的,因为数据分析师每天都要处理海量的数据,而这些数据来自哪呢?就是数据库。那怎么把数据从数据库中取出来呢?SQL 语句(select * from xxx,哈哈),别无其他。


那还需要什么技能呢?统计学基础,对,没错,数据和时间的关系,数据的动态分布,数据的最大值、最小值、平均值,这些都需要一定的统计学基础。


当然了,做数据分析最好的编程语言是 R 语言或者 Python,所以还需要学习一下这两门语言。不过,有了 Java 作为基础,学 Python 就会更容易些,因为 Python 本身的语言更简洁。(R 语言主要用于统计分析、绘图、数据挖掘)


推荐两本书吧,《深入浅出数据分析》和《精益数据分析》。


05、最后


好了,我已经把要学习的技能告诉同学们了,接下来,就靠同学们自己的修行了。看书,或者网上找资料(按照关键字去搜索),都可以,关键就看你愿不愿意沉下心,去花时间钻研了。


执行力,很重要,对吧?


相关实践学习
简单用户画像分析
本场景主要介绍基于海量日志数据进行简单用户画像分析为背景,如何通过使用DataWorks完成数据采集 、加工数据、配置数据质量监控和数据可视化展现等任务。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
3月前
|
监控 网络协议 Java
《Java工程师成神之路》阿里技术专家之作,囊括Java所有知识点!
很多Java程序员一直希望找到一份完整的学习路径,但是市面上很多书都是专注某一个领域的,没有一份完整的大图,以至于很多程序员很迷茫,不知道自己到底应该从哪里开始学,或者不知道自己学习些什么。
|
4月前
|
存储 安全 Java
Java大数据面试复习30天冲刺 - 日积月累,每日五题【Day03】——JavaSE
Java大数据面试复习30天冲刺 - 日积月累,每日五题【Day03】——JavaSE
37 0
|
4月前
|
安全 Java 大数据
Java大数据面试复习30天冲刺 - 日积月累,每日五题【Day01】——JavaSE
Java大数据面试复习30天冲刺 - 日积月累,每日五题【Day01】——JavaSE
42 0
|
4月前
|
大数据 Linux 网络安全
大数据开发工程师基本功修炼之史上最全Linux学习笔记(建议)
大数据开发工程师基本功修炼之史上最全Linux学习笔记(建议)
123 0
|
2月前
|
Java
电子书阅读分享《Java工程师成神之路》
电子书阅读分享《Java工程师成神之路》
50 1
|
4月前
|
设计模式 架构师 Java
2024到来!一到五年Java工程师想跳槽,大环境不好,怎么破?
会不会因为裁员潮,市场上工作机会比往年跳槽季更少,同时求职者因为失业或裁员潮带来的恐慌心理,很多人在找工作时更怕错过机会而不做过多思考和选择就入职。这样的形势下跳槽或者求职时,该如何判断和做出选择?
|
30天前
|
消息中间件 Dubbo Java
互联网 Java 工程师1000道面试题(485页)
互联网 Java 工程师1000道面试题(485页)
27 0
|
1月前
|
人工智能 监控 Java
招个Java工程师,却发现了一个宝藏平台
招个Java工程师,却发现了一个宝藏平台
21 0
招个Java工程师,却发现了一个宝藏平台
|
2月前
|
Java
电子书阅读分享《Java工程师成神之路》
电子书阅读分享《Java工程师成神之路》
68 2
|
4月前
|
Java 大数据
Java大数据面试复习30天冲刺 - 日积月累,每日五题【Day04】——JavaSE
Java大数据面试复习30天冲刺 - 日积月累,每日五题【Day04】——JavaSE
35 0

热门文章

最新文章