0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

学习大数据,Java工程师需要掌握哪些技术点?

如意 来源:沉默王二 作者:沉默王二 2020-08-08 08:41 次阅读

题目是一名叫“截然不同”的同学私信我的一个问题,原话是,“搞大数据,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、最后

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

执行力,很重要,对吧?

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • JAVA
    +关注

    关注

    19

    文章

    2966

    浏览量

    104703
  • Hadoop
    +关注

    关注

    1

    文章

    90

    浏览量

    15975
  • 大数据
    +关注

    关注

    64

    文章

    8882

    浏览量

    137403
收藏 人收藏

    评论

    相关推荐

    硬件工程师需要掌握的硬件基础知识

    作为一个资深硬件工程师,我们需要掌握一些硬件基础知识,今天总结一下哪些算是基础知识。给学电子方面想从事硬件工作的同学们一提示。给未走出大学校园的电子方面的学生一些帮助。   工具/原
    的头像 发表于 12-02 09:22 250次阅读
    硬件<b class='flag-5'>工程师</b><b class='flag-5'>需要</b><b class='flag-5'>掌握</b>的硬件基础知识

    零基础入门PCB工程师

    各位前辈大家好,零基础入门PCB工程师,有什么学习资料推荐吗?
    发表于 11-27 16:54

    FPGA算法工程师、逻辑工程师、原型验证工程师有什么区别?

    ,共同进步。 欢迎加入FPGA技术微信交流群14群! 交流问题(一) Q:FPGA中的FPGA算法工程师、FPGA逻辑工程师、FPGA原型验证工程师三者有什么区别? A:FPGA 算法
    发表于 09-23 18:26

    需要无刷电控硬件工程师

    需要无刷电控硬件工程师,地点东莞松山湖。最好有5-10年经验,大功率电摩电控。有意私聊。
    发表于 09-11 22:51

    求LORA技术开发工程师合作

    求LORA技术开发工程师合作
    发表于 09-02 10:21

    嵌入式软件工程师如何提升自己?

    的基础 嵌入式软件工程师需要具备扎实的计算机科学和工程知识。因此,在职业生涯的起步阶段,建议将重点放在学习基础知识上,包括数据结构、算法、操
    发表于 06-12 11:20

    嵌入式软件工程师和硬件工程师的区别?

    通常需要具备强大的问题解决能力,以及对新技术学习和应用能力。他们的工作通常涉及到多个领域,如计算机科学、电子工程、机械工程等。 嵌入式硬件
    发表于 05-16 11:00

    大厂电子工程师常见面试题#电子工程师 #硬件工程师 #电路知识 #面试题

    电子工程师电路
    安泰小课堂
    发布于 :2024年04月30日 17:33:15

    如何入门硬件工程师

    想跨行业做硬件设计工程师,应该如何学习规划呢
    发表于 03-17 21:49

    fpga工程师前景如何

    FPGA工程师的前景看起来相当积极和广阔。随着5G通信、物联网、边缘计算和人工智能等技术的快速发展,FPGA工程师的需求将进一步增加。FPGA芯片具有可编程性强、并行处理能力强、功耗低等特点,因此在
    的头像 发表于 03-14 16:32 3152次阅读

    工程师掌握的10种精密全波整流电路,你都吃透了吗?

    工程师掌握的10种精密全波整流电路
    的头像 发表于 03-12 19:45 5598次阅读
    <b class='flag-5'>工程师</b>必<b class='flag-5'>掌握</b>的10种精密全波整流电路,你都吃透了吗?

    嵌入式工程师需要掌握哪些技术?

    嵌入式工程师需要掌握哪些技术? 嵌入式系统是当今科技领域中的重要组成部分,它们存在于我们生活的方方面面,从智能手机到汽车控制系统,从家电到医疗设备。因此,对于那些想要进入嵌入式行业的
    发表于 03-04 16:38

    优秀电源工程师需要哪些必备技能?

    就带大家细数一下优秀电源工程师具备的那些技能。一、新手必备课程成为一名电源高手需要扎实的理论基础,涉及电路原理、语言编程和控制理论等多个学科领域。为了帮助大家更好地掌握电源开发相关的关键知识
    发表于 01-29 11:29