该如何学习大数据知识?


谢谢邀请!
大数据是我的主要研究方向之一 。同时也在带大数据方向的研究生 。所以我来回答一下这个问题 。

该如何学习大数据知识?

文章插图
虽然不同的学习方向往往需要学习不同的内容 。但是对于零基础的学习者来说 。以下三方面基础知识是都需要学习的:
第一:编程语言 。不论是选择大数据分析方向还是大数据应用开发方向 。掌握编程语言都是学习大数据的重要基础 。目前在大数据领域应用比较广泛的语言包括Java、Python、Scala、R和Go等 。其中Java在Hadoop平台应用比较多 。而Scala在Spark平台应用比较普遍 。从目前的应用趋势来看 。学习Python则是不错的选择 。既可以从事大数据开发 。也可以从事大数据分析 。
第二:大数据平台 。学习大数据知识绕不过大数据平台 。大数据平台承载了分布式存储和分布式计算的核心任务 。所以大数据平台研发也是目前大数据领域的重要岗位 。目前Hadoop和Spark是比较适合初学者学习的大数据平台 。一方面是其开源的属性 。另一方面Hadoop对于硬件的要求也比较低 。
该如何学习大数据知识?

文章插图
我从事互联网行业多年 。目前也在带计算机专业的研究生 。主要的研究方向集中在大数据和人工智能领域 。我会陆续写一些关于互联网技术方面的文章 。感兴趣的朋友可以关注我 。相信一定会有所收获 。
如果有互联网、大数据、人工智能等方面的问题 。或者是考研方面的问题 。都可以在评论区留言!
其他观点:
本人从事大数据以及相关行业 。算是一个业内人士 。说说我的看法 。仅供参考 。
首先大数据这几年特别热门 。同时也带来了很多的就业 。大数据的价值也越来越明显 。尤其是人工智能的发展和即将到来5G 。都离不开大数据这个基础!所以选择学习大数据对未来的发展还是挺不错的 。但同时也要清楚一些问题!
首先是确定学习的方向:大数据是一个大概念 。必须知道他都有那些部分 。自己将来就业要选择那个方向 。下面就说一下大数据就业的方向和技能需求以及岗位需求!仅供参考!!
一 。大数据开发
从事大数据开发工程师
岗位职责
1、利用Hadoop、Spark等技术在分布式系统上对海量历史数据进行预处理 。挖掘用户信
息;
2、参与大数据基础平台的搭建和维护;
3、负责广告投放项目管理平台研发;
4、负责大数据计算处理平台项目研发 。
技术要求
1、熟练掌握c++/Java开发 。具备扎实的程序设计基本功和学习能力
2、熟悉 Linux 。熟悉 shell/perl/python/php 等脚本语言的一种或多种 。
3、熟悉传统数据库MySQL 。
4、熟悉MapReduce、Storm、Spark、Spark Streaming等大数据开发工具 。对源代码
有一定研究者优先;
5、熟悉linux环境 。熟悉shell等脚本编程;
6、有大规模数据处理和日志处理经验的优先 。
7、有较强的人际沟通、协调能力 。具备与技术人员沟通数据需求的能力;
8、具备良好的逻辑分析能力和解决实际问题的能力 。
二 。大数据运维
从事大数据运维工程师
岗位职责
1、负责大数据平台整体软硬件的日常运维;
2、分析平台运行状态 。进行性能优化;
3、负责大数据平台运行故障的分析、定位和解决;
4、负责新技术、新组件的技术探索、测试和应用;
5、支撑运维自动化系统的设计和开发 。
岗位要求:
1、 熟悉hadoop生态圈主要开源技术组件及其工作原理 。能阅读相关源代码 。能顺利阅读英文文档;
2、熟悉软硬件设备、网络原理 。有丰富的大数据平台部署、性能优化和运维经验;
3、熟悉Linux 。熟悉cacti、ganglia、zabbix等运维软件 。熟悉SaltStack、Ansible等自动化软件 。有python、java、shell编程基础;
4、工作认真负责 。有较强的学习能力、动手能力和分析解决问题的能力;
补充:
熟悉Hadoop/Hbase/Hive/Presto/Yarn/Spark/Storm/Kafka/Elasticsearch/Flume等开源项目 。有运维优化经验者优先;
熟悉Linux操作系统的配置、管理及优化;
熟悉Python、Linux、shell,有ETL维护经验、电信行业大数据维护经验者优先
三 。数据挖掘
从事数据挖掘工程师
岗位职责
1、对海量数据进行分析 。建立数据挖掘算法 。利用大数据对产品进行研究和建模 。为用户提供评估和预测等功能;

推荐阅读