首先我们要了解Java语言和Linux操作系统,这两个是学习大数据的基础,学习的顺序不分前后。
Java :只要了解一些基础即可,做大数据不需要很深的Java 技术,学java SE 就相当于有学习大数据基础。
Linux:因为大数据相关软件都是在Linux上运行的,所以Linux要学习的扎实一些,学好Linux对你快速掌握大数据相关技术会有很大的帮助,能让你更好的理解hadoop、hive、hbase、spark等大数据软件的运行环境和网络环境配置,能少踩很多坑,学会shell就能看懂脚本这样能更容易理解和配置大数据集群。还能让你对以后新出的大数据技术学习起来更快。
Hadoop:这是现在流行的大数据处理平台几乎已经成为大数据的代名词,所以这个是必学的。Hadoop里面包括几个组件HDFS、MapReduce和YARN,HDFS是存储数据的地方就像我们电脑的硬盘一样文件都存储在这个上面,MapReduce是对数据进行处理计算的,它有个特点就是不管多大的数据只要给它时间它就能把数据跑完,但是时间可能不是很快所以它叫数据的批处理。
Zookeeper:这是个万金油,安装Hadoop的HA的时候就会用到它,以后的Hbase也会用到它。它一般用来存放一些相互协作的信息,这些信息比较小一般不会超过1M,都是使用它的软件对它有依赖,对于我们个人来讲只需要把它安装正确,让它正常的run起来就可以了。
Mysql:我们学习完大数据的处理了,接下来学习学习小数据的处理工具mysql数据库,因为一会装hive的时候要用到,mysql需要掌握到什么层度那?你能在Linux上把它安装好,运行起来,会配置简单的权限,修改root的密码,创建数据库。这里主要的是学习SQL的语法,因为hive的语法和这个非常相似。
Sqoop:这个是用于把Mysql里的数据导入到Hadoop里的。当然你也可以不用这个,直接把Mysql数据表导出成文件再放到HDFS上也是一样的,当然生产环境中使用要注意Mysql的压力。
Hive:这个东西对于会SQL语法的来说就是神器,它能让你处理大数据变的很简单,不会再费劲的编写MapReduce程序。有的人说Pig那?它和Pig差不多掌握一个就可以了。
Oozie:既然学会Hive了,我相信你一定需要这个东西,它可以帮你管理你的Hive或者MapReduce、Spark脚本,还能检查你的程序是否执行正确,出错了给你发报警并能帮你重试程序,最重要的是还能帮你配置任务的依赖关系。我相信你一定会喜欢上它的,不然你看着那一大堆脚本,和密密麻麻的crond是不是有种想屎的感觉。
Hbase:这是Hadoop生态体系中的NOSQL数据库,他的数据是按照key和value的形式存储的并且key是唯一的,所以它能用来做数据的排重,它与MYSQL相比能存储的数据量大很多。所以他常被用于大数据处理完成之后的存储目的地。
Kafka:这是个比较好用的队列工具,队列是干吗的?排队买票你知道不?数据多了同样也需要排队处理,这样与你协作的其它同学不会叫起来,你干吗给我这么多的数据(比如好几百G的文件)我怎么处理得过来,你别怪他因为他不是搞大数据的,你可以跟他讲我把数据放在队列里你使用的时候一个个拿,这样他就不在抱怨了马上灰流流的去优化他的程序去了,因为处理不过来就是他的事情。而不是你给的问题。当然我们也可以利用这个工具来做线上实时数据的入库或入HDFS,这时你可以与一个叫Flume的工具配合使用,它是专门用来提供对数据进行简单处理,并写到各种数据接受方(比如Kafka)的。
Spark:它是用来弥补基于MapReduce处理数据速度上的缺点,它的特点是把数据装载到内存中计算而不是去读慢的要死进化还特别慢的硬盘。特别适合做迭代运算,所以算法流们特别稀饭它。它是用scala编写的。Java语言或者Scala都可以操作它,因为它们都是用JVM的。
首先我们要了解Java语言和Linux操作系统,这两个是学习大数据的基础,学习的顺序不分前后。
Java :只要了解一些基础即可,做大数据不需要很深的Java 技术,学java SE 就相当于有学习大数据基础。
Linux:因为大数据相关软件都是在Linux上运行的,所以Linux要学习的扎实一些,学好Linux对你快速掌握大数据相关技术会有很大的帮助,能让你更好的理解hadoop、hive、hbase、spark等大数据软件的运行环境和网络环境配置,能少踩很多坑,学会shell就能看懂脚本这样能更容易理解和配置大数据集群。还能让你对以后新出的大数据技术学习起来更快。
Hadoop:这是现在流行的大数据处理平台几乎已经成为大数据的代名词,所以这个是必学的。Hadoop里面包括几个组件HDFS、MapReduce和YARN,HDFS是存储数据的地方就像我们电脑的硬盘一样文件都存储在这个上面,MapReduce是对数据进行处理计算的,它有个特点就是不管多大的数据只要给它时间它就能把数据跑完,但是时间可能不是很快所以它叫数据的批处理。
Zookeeper:这是个万金油,安装Hadoop的HA的时候就会用到它,以后的Hbase也会用到它。它一般用来存放一些相互协作的信息,这些信息比较小一般不会超过1M,都是使用它的软件对它有依赖,对于我们个人来讲只需要把它安装正确,让它正常的run起来就可以了。
Mysql:我们学习完大数据的处理了,接下来学习学习小数据的处理工具mysql数据库,因为一会装hive的时候要用到,mysql需要掌握到什么层度那?你能在Linux上把它安装好,运行起来,会配置简单的权限,修改root的密码,创建数据库。这里主要的是学习SQL的语法,因为hive的语法和这个非常相似。
Sqoop:这个是用于把Mysql里的数据导入到Hadoop里的。当然你也可以不用这个,直接把Mysql数据表导出成文件再放到HDFS上也是一样的,当然生产环境中使用要注意Mysql的压力。
Hive:这个东西对于会SQL语法的来说就是神器,它能让你处理大数据变的很简单,不会再费劲的编写MapReduce程序。有的人说Pig那?它和Pig差不多掌握一个就可以了。
Oozie:既然学会Hive了,我相信你一定需要这个东西,它可以帮你管理你的Hive或者MapReduce、Spark脚本,还能检查你的程序是否执行正确,出错了给你发报警并能帮你重试程序,最重要的是还能帮你配置任务的依赖关系。我相信你一定会喜欢上它的,不然你看着那一大堆脚本,和密密麻麻的crond是不是有种想屎的感觉。
Hbase:这是Hadoop生态体系中的NOSQL数据库,他的数据是按照key和value的形式存储的并且key是唯一的,所以它能用来做数据的排重,它与MYSQL相比能存储的数据量大很多。所以他常被用于大数据处理完成之后的存储目的地。
Kafka:这是个比较好用的队列工具,队列是干吗的?排队买票你知道不?数据多了同样也需要排队处理,这样与你协作的其它同学不会叫起来,你干吗给我这么多的数据(比如好几百G的文件)我怎么处理得过来,你别怪他因为他不是搞大数据的,你可以跟他讲我把数据放在队列里你使用的时候一个个拿,这样他就不在抱怨了马上灰流流的去优化他的程序去了,因为处理不过来就是他的事情。而不是你给的问题。当然我们也可以利用这个工具来做线上实时数据的入库或入HDFS,这时你可以与一个叫Flume的工具配合使用,它是专门用来提供对数据进行简单处理,并写到各种数据接受方(比如Kafka)的。
Spark:它是用来弥补基于MapReduce处理数据速度上的缺点,它的特点是把数据装载到内存中计算而不是去读慢的要死进化还特别慢的硬盘。特别适合做迭代运算,所以算法流们特别稀饭它。它是用scala编写的。Java语言或者Scala都可以操作它,因为它们都是用JVM的。
已赞过已踩过<你对这个回答的评价是?评论收起用人单位对于大数据开发人才的技能要求:
1. 精通Java技术知识,熟悉Spark、kafka、Hive、HBase、zookeeper、HDFS、MR等应用设计及开发;
2. 了解python/shell等脚本语言;。
3. 熟悉大数据平台架构,对ETL、数据仓库等有一定了解;。
4. 有数据可视化、数据分析、数学模型建立相关经验者优先考虑。
5. 有爬虫系统开发经验者优先。
大数据开发工程师需要具备哪些技能?
大数据开发工程师需要具备三方面的知识结构,包括大数据基础知识、大数据平台知识和大数据场景知识。那么其每一个方面又都需要具备哪一些技能呢?且看小编细细分解。大数据基础知识包括三个主要方面的内容,分别是数学基础、统计学基础和计算机基础。数学基础是大数据从业者重要的基础,因为大数据的核心是算法设计,...
小白成为大数据工程师 需掌握哪些知识技能
1、学大数据,在前期主要是打基础,包括java基础和Linux基础,而后才会正式进入大数据技术的阶段性学习。2、Linux学习主要是为了搭建大数据集群环境做准备,所以以Linux系统命令和shell编程为主要需要掌握的内容。3、而Java,主要是Java SE,涉及到比较多需要掌握的内容,包括掌握java语言中变量,控制结构,循环...
大数据工程师需要要掌握哪些技能
大数据工程师需具备以下技能:1、 一年以上开发经验且三年以上测试经验,有大数据测试或报表测试经验。2. 精通SQL,能熟练进行测试数据的增删改查及关联逻辑的SQL设计。3. 具备较高的质量意识,有分析问题和处理问题能力,能独立完成项目测试。4.熟悉常见软件测试流程、方法、Linux命令行和脚本使用,有Seleniu...
大数据开发工程师需要具备哪些技能
3、数据仓库和ETL工具 数据仓库和ETL能力对于大数据工程师至关重要。像Redshift或Panoply这样的数据仓库解决方案,以及ETL工具,比如StitchData或Segment都非常有用。4、基于Hadoop的分析(HBase,Hive,MapReduce等)对基于Apache Hadoop的数据处理框架,需要有深入的了解,至少HBase,Hive和MapReduce的知识存储...
大数据工程师需要掌握哪些技术?
1. Java编程技术 Java编程技术是大数据学习的基础,Java是一种强类型语言,拥有极高的跨平台能力,可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等,是大数据工程师最喜欢的编程工具。2.Linux命令 对于大数据开发通常是在Linux环境下进行的,相比Linux操作系统,Windows操作系统是封闭的...
优秀的大数据工程师需要具备哪些实际能力?
1、从专业能力上来分析 首要大数据工程师是需求有计算机编码才能的,因为面对海量的非结构化数据,你要从中发掘出有价值的东西,需求规划算法与编写程序去实现,而程序员最牛的才能就是编写简练高效的代码,去实现人们对未来天马行空的梦想,编码才能越强的程序员越有可能成为优异的大数据工程师。2、大数据...
大数据工程师需要学什么
一、编程技能 Python:Python是大数据领域中最常用的编程语言之一。大数据工程师需要掌握Python的基本语法和数据处理库,如NumPy和Pandas,以便对数据进行清洗和预处理。Java:Java是Hadoop等大数据处理框架的主要编程语言,熟练掌握Java编程对于构建大规模分布式系统至关重要。SQL:SQL是结构化查询语言,用于处理和...
大数据开发工程师需要掌握哪些技能
1、大数据开发工程师在Linux和Java方面要熟练掌握,这是最基本的,需要同时掌握。学习顺序不分先后。2、掌握与大数据处理相关的技术,包括但不限于Hadoop,Hbase,Hive等。3、有强大的开发能力,需要精通相关开发语言的使用,精通MapReduce设计方法或Spark计算框架。4、根据项目或产品涉及的具体业务场景,对...
成为一名大数据开发工程师,需要具备哪些技能?
专注于大数据平台的自研与应用开发。要求熟悉Web后端语言、大数据开源组件,精通至少一种语言如golang、php、java,了解开发框架原理与源码。四、大数据前端开发工程师 负责界面设计与实现,与交互、视觉设计师协作,基于编程语言构建用户界面。技能重点在于界面设计实现与用户体验优化。二、大数据技术架构 大数据...
大数据测试工程师需要具备哪些技能?
编程语言:编码与开发能力是大数据工程师的必备技能,要熟悉Python,C\/C++,Java,Perl,Golang或其它语言。编码与开发能力是作为大数据工程师的重要要求,主要掌握Java、Scala、Python三门语言,这在大数据当中非常关键。对于大数据工程师而言,您至少要掌握以下技能:一门JVM系语言:当前大数据生态JVM系语言类...