导航:首页 > 源码编译 > 大数据开发源码

大数据开发源码

发布时间:2022-12-27 21:22:43

A. Java大数据开发要掌握哪些技能

入门的1-3年,需要对Java有一个深入的了解,掌握并发、分布式与微服务等技术,对于Java的类库也应该有一定程度的掌握。

要入了解Java底层和Java类库,也就是JVM和JDK的相关内容。而且还要更深入的去了解你所使用的框架,方式比较推荐看源码或者看官方文档。进阶的3-5年,以不断提升技能为关键。这个阶段很容易遇到瓶颈,这个时候不要着急提高自己的技术,已经是时候提高你的影响力了,你可以尝试去一些知名的公司去提高你的背景,也可以去Github创建一个属于你的开源项目,去打造自己的产品。

而大数据开发能力,在这个过程当中,需要逐步建立起系统的体系:包括Java初级(虚拟机、并发)、Linux基本操作、Hadoop(HDFS+MapRece+Yarn)、HBase(JavaAPI操作+Phoenix)、Hive(Hql基本操作和原理理解)、Kafka、Storm/JStorm、Scala、python、Spark(Core+sparksql+Spark streaming)、辅佐小工具(Sqoop/Flume/Oozie/Hue等)。

关于Java大数据开发要掌握哪些技能,青藤小编就和您分享到这里了。如果您对大数据工程有浓厚的兴趣,希望这篇文章可以为您提供帮助。如果您还想了解更多关于数据分析师、大数据工程师的技巧及素材等内容,可以点击本站的其他文章进行学习。

B. 大数据开发工程师要学习哪些课程

1.大数据工程师工作中会做什么?

集群运维:安装、测试、运维各种大数据组件
数据开发:细分一点的话会有ETL工程师、数据仓库工程师等
数据系统开发:偏重Web系统开发,比如报表系统、推荐系统等
这里面有很多内容其实是十分重合的,下面大致聊一下每一块内容大致需要学什么,以及侧重点。
2.集群运维
数据工程师,基本上是离不开集群搭建,比如hadoop、Spark、Kafka,不要指望有专门的运维帮你搞定,新组件的引入一般都要自己来动手的。
因此这就要求数据工程师了解各种大数据的组件。
由于要自己的安装各种开源的组件,就要求数据工程师要具备的能力: Linux 。要对Linux比较熟悉,能各种自己折腾着玩。
由于现在的大数据生态系统基本上是 JVM系的,因此在语言上,就不要犹豫了,JVM系的Java和Scala基本上跑不掉,Java基本上要学的很深,Scala就看情况了。
3. ETL
ETL在大数据领域主要体现在各种数据流的处理。这一块一方面体现在对一些组件的了解上,比如Sqoop、Flume、Kafka、Spark、MapRece;另一方面就是编程语言的需要,Java、Shell和Sql是基本功。
4.系统开发
我们大部分的价值最后都会由系统来体现,比如报表系统和推荐系统。因此就要求有一定的系统开发能力,最常用的就是 Java Web这一套了,当然Python也是挺方便的。
需要注意的是,一般数据开发跑不掉的就是各种提数据的需求,很多是临时和定制的需求,这种情况下, Sql就跑不掉了,老老实实学一下Sql很必要。
如何入门?
前面提到了一些数据工程师会用到的技能树,下面给一个入门的建议,完全个人意见。
1.了解行业情况
刚开始一定要了解清楚自己和行业的情况,很多人根本就分不清招聘信息中的大数据和数据挖掘的区别就说自己要转行,其实是很不负责的。不要总是赶热点,反正我就是经常被鄙视做什么大数据开发太Low,做数据就要做数据挖掘,不然永远都是水货。
2.选择学习途径
如果真是清楚自己明确地想转数据开发了,要考虑一下自己的时间和精力,能拿出来多少时间,而且在学习的时候最好有人能多指点下,不然太容易走弯路了。
在选择具体的学习途径时,要慎重一点,有几个选择:
自学
报班
找人指点
别的不说了,报班是可以考虑的,不要全指望报个辅导班就能带你上天,但是可以靠他帮你梳理思路。如果有专业从事这一行的人多帮帮的话,是最好的。不一定是技术好,主要是可沟通性强。
3.学习路线
学习路线,下面是一个大致的建议:
第一阶段
先具备一定的Linux和Java的基础,不一定要特别深,先能玩起来,Linux的话能自己执行各种操作,Java能写点小程序。这些事为搭建Hadoop环境做准备。
学习Hadoop,学会搭建单机版的Hadoop,然后是分布式的Hadoop,写一些MR的程序。
接着学学Hadoop生态系统的其它大数据组件,比如Spark、Hive、Hbase,尝试去搭建然后跑一些官网的Demo。
Linux、Java、各种组件都有一些基础后,要有一些项目方面的实践,这时候找一些成功案例,比如搜搜各种视频教程中如何搞一个推荐系统,把自己学到的用起来。
第二阶段
到这里是一个基本的阶段了,大致对数据开发有一些了解了。接着要有一些有意思内容可以选学。
数据仓库体系:如何搞数据分层,数据仓库体系该如何建设,可以有一些大致的了解。
用户画像和特征工程:这一部分越早了解越好。
一些系统的实现思路:比如调度系统、元数据系统、推荐系统这些系统如何实现。
第三阶段
下面要有一些细分的领域需要深入进行,看工作和兴趣来选择一些来深入进行
分布式理论:比如Gossip、DHT、Paxo这些构成了各种分布式系统的底层协议和算法,还是要学一下的。
数据挖掘算法:算法是要学的,但是不一定纯理论,在分布式环境中实现算法,本身就是一个大的挑战。
各种系统的源码学习:比如Hadoop、Spark、Kafka的源码,想深入搞大数据,源码跑不掉。

C. 这几个大数据GitHub项目,太强了吧

大家好,我是 梦想家 Alex 。我们都知道 github 对于程序员们而言,就是一个巨大的“聚宝盆”,上面不仅有很多优质的开源项目,还有很多热爱开源分享的开发者。但如何从浩如烟海的宝藏中,筛选出适合自己的优质项目呢?本期内容,我就为大家推荐几个我认为还不错的大数据学习必备的 牛 X 项目,希望大家看完有所收获。

首推 heiying 的 BigData-Notes,该项目目前已经有高达 10.2K 的star,正如该仓库的介绍上简短几个字:大数据入门指南。这个项目也是我认为目前 最适合初学者学习和参考的项目

为什么说这个项目适合大数据初学者呢,可以通过观察项目的介绍文档,该项目包含了大数据学习必须要掌握的几种组件,包括 Hadoop,Hive,Spark,Flink,Kafka,Zookeeper,Flume,Sqoop,Azkaban,以及 Scala 函数式编程语言的教程 ,可谓是非常的系统全面

我们再借助谷歌插件 Octotree 观察项目的结构,可以看到该项目主要分为 code,notes,pictures,resources 四个目录

其中 code 目录主要用来存放各个组件使用相关的代码,正如统计的结果一样,这个项目中 Java 代码占了 94.8%,Scala 占了 5.2%,所以对于喜欢用 Java 编写代码的小伙伴们来说,这是一个不容错过的宝藏学习机会。

notes 部分主要存放相关组件的介绍和使用文档,其中 installation 子目录主要存放了相关组件编译,以及在Linux环境下各个组件的安装,单机/集群环境搭建的教程,我看过了内容,介绍的非常清晰详细。

另外两个目录 pictures resources 就不做过多介绍了,一个是存放相关的图片教程,另一个是存放编写的代码中所需要用到的文本文件。

这个项目同样给力,是由 BAT 高级大数据架构师 王知无 创建的,该项目目前也已经斩获高达 5.2k star,是为数不多, 集基础学习和进阶实战 于一体的优质项目。

该项目按照大数据不同阶段的学习,所列举不同的文章干货

大数据开发基础篇

大数据框架学习篇

大数据开发实战进阶篇

大数据开发面试篇

从不同的分类足以见 王老师 的用心。同时,王知无前辈也是 51CTO 上的认证讲师,来看看官方的介绍 。

相信很多同学在学习大数据的过程中,不清楚 Java 需要学习哪些内容,掌握到什么程度,这个时候完全可以借鉴王老师的这个仓库内容。

同时,学习这个仓库的内容,可以学习到作者作为架构师本身对于 JVM,分布式理论和基础,大数据框架基石之网路通信Netty,以及各个框架的源码学习,可谓“ 真.宝藏仓库

除了基础的理论学习以外,还有大量实战性的内容可以借鉴参考

以及大量的面试题,还有自己从零到大数据专家一路走来的心路历程,学习路径指南,和自己对于技术学习的一些深入思考,相信大家拜读过后一定能收获满满,

这个项目比较特殊,是一个国外开发者开源的项目,英文翻译过来的意思是“很棒的大数据”,实际上呢~他列举的是很多很棒的大数据框架、资源和其他很棒的精选列表。灵感来自 awesome-php awesome-python awesome-ruby hadoopecosystemtable big-data 。目前也已经斩获 10.2K 的 star,非常强势。

为了方便阅读,我将其全部翻译成中文进行展示。

我们跳转到 分布式编程,可以看到很多我们熟悉的技术,例如 Flink,Spark,Pig,MapRece 等等 ....

亦或者“分布式文件系统”,我们所熟知的 HDFS,Ku,GFS ...

点击对应的链接,可以跳转到对应的官方介绍页,方便我们减少搜索成本,快速了解不同领域大数据常用的技术组件,为我们之后做技术调研省了很多的时间。

让我厚颜无耻的夹带一下“私货”。这是我在今年年初的时候,创建的一个仓库,目前也已经有了快 200 的star 。从资历和star的数量显然不能跟前面几个大佬相比,但却是我第一次花费了大量精力,将一个项目像孩子一样进行“培养”。

为了设计一个好看的图标,还花了不少的精力。设置不同媒体平台的徽标设计,还参考了像 JavaGuide 这样的头部项目,也算是在亲力亲为的这个过程中,学到了不少东西。


可以放点内容给大家show一下

另外,我还开设了“福利”专栏,将自己学习过程中收集到的学习干货毫无保留地分享给大家,方便大家获取。


显而易见,这个是专注于 flink 学习的开源项目,其中的内容包含Flink 入门、概念、原理、实战、性能调优、源码解析等等,目前已经斩获了 10.5k 的 star,非常强势。

其维护的开发人员也是非常用心负责,一路跟随 flink 的版本,不停的在维护更新 。

同时,主要维护者 zisheng 还将 flink 的研究做到了极致,不仅有 flink 成体系的博客链接,还有对应的源码系列。

还自己创建了专栏《从1到100深入学习Flink》,并将大家学习过程中有疑惑的地方解决过程统一记录下来,方便有需要的同学查看。虽然是付费的星球专享,但我觉得是真的值!感兴趣的话大家可以自行去了解。

D. 怎样使用Java 开发大数据

未来10年将是大数据,人工智能爆发的时代,到时将会有大量的企业需要借助大数据,而Java最大的优势就是它在大数据领域的地位,目前很多的大数据架构都是通过Java来完成的。
在这个Android、iOS相继没落,PHP相继饱和的时候,只有Java大数据保持着旺盛的需求。那么,Java大数据需要学习什么技术呢?
首先我们要学习Java语言和Linux操作系统。很多人入门编程语言就是Java,你或许还不知道Java的方向有JavaSE、JavaEE、JavaME,学习Java大数据需要学习JavaSE、JavaEE。了解Java怎么连接数据库,掌握JDBC,学习Hibernate/Mybatis的原理,以及API,这样可以增加你对Java操作数据库的理解,因为这两个技术的核心就是Java的反射加上JDBC的各种使用。
接下来就需要学习Linux操作系统,因为大数据相关软件都是在Linux上运行的,学好Linux对你快速掌握大数据相关技术有很大的帮助,能让你更好的理解hadoop、hive、hbase、spark等大数据软件的运行环境和网络环境配置,能少踩很多坑,学会shell就能看懂脚本,这样能更容易理解和配置大数据集群。还能让你对以后新出的大数据技术学习起来更快。
最后当然是Hadoop的学习,这几乎已经成为大数据的代名词,Hadoop里面包括组件HDFS、MapRece和YARN,HDFS是存储数据的地方,就像电脑的硬盘一样,文件都存储在这个上面,MapRece是对数据进行处理计算的,它有个特点就是不管多大的数据只要给它时间它就能把数据跑完,但是时间可能不是很快,所以它叫数据的批处理。YARN是体现Hadoop平台概念的重要组件,有了它大数据生态体系的其它软件就能在hadoop上运行了,这样就能更好的利用HDFS大存储的优势和节省更多的资源,比如我们就不用再单独建一个spark的集群了,让它直接跑在现有的hadoop yarn上面就可以了。
学了这些,可以胜任初级Java工程师了,当然还是有很有可以提高的地方,比如学习下python,可以用它来编写网络爬虫。这样我们就可以自己造数据了,网络上的各种数据你高兴都可以下载到你的集群上去处理。

阅读全文

与大数据开发源码相关的资料

热点内容
op手机微信加密如何解除 浏览:380
如何在王牌战争找到高爆率服务器 浏览:7
江浙小学语文辅导课用什么APP 浏览:95
新梦幻大陆服务器地址 浏览:239
网吧服务器怎么更换壁纸 浏览:528
linux命令方法 浏览:330
linux下载freetype 浏览:121
程序员入驻平台 浏览:327
程序员大战外挂 浏览:743
html实例教程pdf 浏览:155
linux命令开放所有权限 浏览:573
30岁能学会编程 浏览:735
小火箭的服务器是什么 浏览:967
cad查信息命令 浏览:402
XP禁止新建文件夹 浏览:394
程序员的悲惨生活 浏览:207
什么找房app比较好用 浏览:202
手机视频剪辑压缩 浏览:320
中华软件库源码资源共享 浏览:69
极云普惠没有合适的前端服务器 浏览:173