如何开始学习大数据?

2024-12-25 18:57:35
推荐回答(5个)
回答1:

首先我们要了解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的。

回答2:

人们想开始学习大数据的时候,最常问我的问题是,“我应该学Hadoop(hadoop是一款开源软件,主要用于分布式存储和计算,他由HDFS和MapReduce计算框架组成的,他们分别是Google的GFS和MapReduce的开源实现。由于hadoop的易用性和可扩展性,因此成为最近流行的海量数据处理框架。), 分布式计算,Kafka(Kafka是由LinkedIn开发的一个分布式基于发布/订阅的消息系统),NoSQL(泛指非关系型的数据库)还是Spark(Spark 是一种与 Hadoop 相似的开源集群计算环境,但是两者之间还存在一些不同之处)?”而我通常只有一个答案:“这取决于你究竟想做什么。”与大数据相关的工作?
(1)大数据系统研发工程师:负责大数据系统研发工作,包括大规模非结构化数据业务模型构建、大数据存储、数据库架构设计以及数据库详细设计、优化数据库构架、解决数据库中心建设设计问题。他们还负责集群的日常运作、系统的监测和配置、Hadoop与其他系统的集成。(2)大数据应用开发工程师:负责搭建大数据应用平台、开发分析应用程序。他们熟悉工具或算法、编程、包装、优化或者部署不同的MapReduce事务。他们以大数据技术为核心,研发各种基于大数据技术的应用程序及行业解决方案。(3)大数据分析师:运用算法来解决分析问题,并且从事数据挖掘工作。他们最大的本事就是能够让数据道出真相;此外,他们还拥有某个领域的专长,帮助开发数据产品,推动数据解决方案的不断更新。(4)数据可视化工程师:具备良好的沟通能力与团队精神,责任心强,拥有优秀的解决问题的能力。他们负责在收集到的高质量数据中,利用图形化的工具及手段的应用,一目了然地揭示数据中的复杂信息,帮助企业更好的进行大数据应用开发,发现大数据背后的巨大财富。
你适合大数据什么方向呢?现在我们已经了解了行业中可供选择的职业种类,让我们想办法来确定哪个领域适合你。这样,我们才能确定你在这个行业中的位置。通常来说,基于你的教育背景和行业经验可以进行分类。例1:“我是一名计算机科学毕业生,不过没有坚实的数学技巧。”你对计算机科学或者数学有兴趣,但是之前没有相关经验,你将被定义为一个新人。例2:“我是一个计算机科学毕业生,目前正从事数据库开发工作。”你的兴趣在计算机科学方向,你适合计算机工程师(数据相关工程)的角色。
大数据学习之路核心是,大部分大数据技术都是用Java或Scala编写的。但是别担心,如果你不想用这些语言编写代码,那么你可以选择Python或者R,因为大部分的大数据技术现在都支持Python和R。因此,你可以从上述任何一种语言开始。 我建议选择Python或Java。接下来,你需要熟悉云端工作。 这是因为如果你没有在云端处理大数据,没有人会认真对待。 请尝试在AWS,softlayer或任何其他云端供应商上练习小型数据集。 他们大多数都有一个免费的层次,让学生练习。如果你想的话,你可以暂时跳过此步骤,但请务必在进行任何面试之前在云端工作。接下来,你需要了解一个分布式文件系统。最流行的分布式文件系统就是Hadoop分布式文件系统。在这个阶段你还可以学习一些你发现与你所在领域相关的NoSQL数据库。
大数据学习之路核心是,大部分大数据技术都是用Java或Scala编写的。但是别担心,如果你不想用这些语言编写代码,那么你可以选择Python或者R,因为大部分的大数据技术现在都支持Python和R。因此,你可以从上述任何一种语言开始。 我建议选择Python或Java。接下来,你需要熟悉云端工作。 这是因为如果你没有在云端处理大数据,没有人会认真对待。 请尝试在AWS,softlayer或任何其他云端供应商上练习小型数据集。 他们大多数都有一个免费的层次,让学生练习。如果你想的话,你可以暂时跳过此步骤,但请务必在进行任何面试之前在云端工作。接下来,你需要了解一个分布式文件系统。最流行的分布式文件系统就是Hadoop分布式文件系统。在这个阶段你还可以学习一些你发现与你所在领域相关的NoSQL数据库。

回答3:

那么大数据从0开始需要学习些什么内容呢?可以先从这里开始:

1、0基础学习大数据需要Java基础

可以说是大数据最基础的编程语言,一是大数据的本质是海量数据的计算,查询与存储,后台开发很容易接触到大数据量存取的应用场景;二是Java天然的优势,大数据的组件很多是用Java开发的。

零基础小白想学习大数据,需要从Java基础开始学起,可以把Java语言作为第一个入门语言。一般来说,学会JavaSE就可以了,但能掌握JavaEE的话会更好。

2、学习Linux系统管理、Shell编程设计、Maven

大数据技术往往运行在Linux环境下,大数据的分布式集群(Hadoop,Spark)都是搭建在多台Linux系统上,对集群的执行命令都是在Linux终端窗口输入......想从事大数据相关工作,需要掌握Linux系统操作方法和相关命令。

回答4:

学习大数据开发的第一个阶段:了解大数据的理论知识
学习一门课程,首先你对这门课程要有简单的了解,比如说要先学习这门课程的一些专业术语,学习一些入门的概念,知道这门课程是做什么的,主要学习的有那些知识。学习大数据开发也是一样,你要知道什么是大数据,一般大数据主要运用在那些领域。避免自己在对大数据一无所知的情况下就开始盲目学习。

学习大数据开发的第二个阶段:计算机编程语言的学习
对于零基础的学员来说,开始入门可能不是那么容易,需要学习大量的理论知识,阅读枯燥的教材。因为要掌握一门计算机编程语言,大家都知道计算机编程语言有很多,比如:R,C++,JAVA等等。
学习大数据开发的第三阶段:大数据相关课程的学习
经过一段时间的基础学习之后,我们对编程语言也已经基本掌握了,接下来就可以进行大数据部分的课程学习了。在这里大数据开发学习要特别提醒大家:行业真正大数据,82%主讲都是hadoop、spark生态体系、storm实时开发等课程。而所谓“大数据”机构85%基本讲的都是JAVA/PHP数据或数据库学习(大数据课程含量不超过15%),初学者请务必认清你要学的是不是真正大数据!
学习大数据开发的第四个阶段:项目实战阶段
实战训练可以帮助我们更好的理解所学的内容,同时对相关知识加强记忆。在以后的实际运用中,可以更快的上手,对于相关知识该怎么用也有了经验。
学会这四个阶段在也不用担心零基础学不好大数据了。再说了学习嘛,只要你用心肯定能学会的,只要你付出就一定会有回报的!

回答5:

大数据是很不错的,像大数据这样的专业还是一线城市比较好,师资力量跟得上、就业的薪资也是可观的,学习大数据可以按照路线图的顺序,