加入收藏 | 设为首页 | 会员中心 | 我要投稿 武陵站长网 (https://www.50888.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

八千里路云和月 | 从零到大数据专家学习路径指南

发布时间:2022-12-12 22:32:23 所属栏目:大数据 来源:未知
导读: 在2019年9月份的时候,我写过一篇文章。站在2019年的视角来看,应该成为了2019年我写的在各个平台最受欢迎的文章之一。目前该篇文章在公众号阅读3300+。在当时来看,几乎每个读者都主动打开

在2019年9月份的时候,我写过一篇文章。站在2019年的视角来看,应该成为了2019年我写的在各个平台最受欢迎的文章之一。目前该篇文章在公众号阅读3300+。在当时来看,几乎每个读者都主动打开并阅读了该文章。

又过了两年,站在一个新的起点上。疫情突袭,反全球化浪潮迭起加之国内流量见顶,各大公司之间开启了白热化竞争。加之国家十四五规划出台,国家把信息科技作为了未来5-10年的核心发展方向,对我们传统的数据人提出了新的要求。

就像我在一文中所说,大数据方向秉持了10年前时候的姿态一直在向前发展,未来可能有些方向会慢慢消亡,或者从传统的定义进化。

2010年-2020年这10年是大数据从台后走到台前的10年,也是野蛮生长的10年,各位也可以看到这个细分方向从业人员的专业,基本涵盖了各种各样的专业。

「风口上的猪」终究有落地的一天。各大公司流量见顶,外部受到反全球化影响,内部反垄断+国家大棒追杀。除了核心的搜索、推荐、广告业务和各个公司核心的地盘业务,严控成本也已经是各家共识。

数据组和算法组最受影响,人员成本叠加设备成本过高,ROI过低。

所以,2020年开始至未来10年是这个行业规范化的时代。不在是写写SQL,跑跑脚本就能拿到可观的薪水的时代了。

基于此,我写了这个基于 的升级版,希望每一个进入这个细分领域的人得到的不在是一个阉割版、未来天花板较低的学习大纲。

大数据学习_大数据金融和金融大数据_大数据学习

以下是文章的主要内容:

第一部分:学习路径概览篇第二部分:学习路径拆分篇第三部分:视频&书籍推荐篇第四部分:面试篇第五部分:建议篇第一部分:学习路径概览篇

1. 编程语言

计算机专业的同学的第一门语言大都是C语言,然后是面向对象的Java。除此之外,可以学习Scala和Python。

Java是大数据领域的屠龙刀,适合集团化大规模作战。对Java的要求没有上限,越熟悉越好。Python更像一把锋利的匕首,更适用于短兵相接和贴身肉搏,用来写各种脚本。

2.Linux基础

需要掌握基于Linux系统下的常用命令和常见问题诊断。

3.数据库入门

基于MySQL了解常见的SQL语法,大数据领域SQL化是未来的发展方向。

4.计算机基础

计算机网络,操作系统,数据结构和算法,计算机组成原理。

四门专业课,也是校招面试时的重点。

5.语言基础篇

6.分布式理论篇

7.网络通信篇

8.离线计算篇

MapReduce HDFS YARN Hive Hbase

9.消息队列篇

10.实时计算篇

十分了解实时计算方向领域内的实时数据仓库、实时计算等的技术选型、架构设计、疑难杂症的排查。

11.数据仓库&数据湖

12.算法篇

12.不可缺少的后端技能

以及后端常见的一些接口抽象、分层设计和架构设计(DDD领域驱动,MVC等)

13.业务理解

基于当前业务的技术选型、成本控制、ROI投入产出比

第二部分:学习路径拆分篇

1. 语言基础篇

语言基础

多线程

并发容器(J.U.C)

以及Java并发包下的其他内容。

JVM

NIO

RPC

2. Linux基础

3.分布式理论篇

4.网络通信Netty

Netty 是当前最流行的 NIO 框架,Netty 在互联网领域、大数据分布式计算领域、游戏行业、通信行业等获得了广泛的应用,业界著名的开源组件只要涉及到网络通信,Netty 是最佳的选择之一。

关于 Netty 我们要掌握:

Netty 的 Buffer
Netty 的 Reactor
Netty 的 Pipeline
Netty 的 Handler
Netty 的 ChannelHandler
Netty 的 LoggingHandler
Netty 的 TimeoutHandler
Netty 的 CodecHandler
Netty 的 MessageToByteEncoder

4.离线计算

Hadoop 体系是我们学习大数据框架的基石,尤其是 MapReduce、HDFS、Yarn 三驾马车基本垫定了整个数据方向的发展道路。也是后面我们学习其他框架的基础,关于 Hadoop 本身我们应该掌握哪些呢?

MapReduce

HDFS

Yarn

Hive

Hive 是一个数据仓库基础工具,在 Hadoop 中用来处理结构化数据。它架构在 Hadoop 之上,总归为大数据,并使得查询和分析方便。Hive 是应用最广泛的 OLAP 框架。Hive SQL 也是我们进行 SQL 开发用的最多的框架。

关于 Hive 你必须掌握的知识点如下:

列式数据库 Hbase

我们在提到列式数据库这个概念的时候,第一反应就是 Hbase。

HBase 本质上是一个数据模型,类似于谷歌的大表设计,可以提供快速随机访问海量结构化数据。它利用了 Hadoop 的文件系统(HDFS)提供的容错能力。它是 Hadoop 的生态系统,提供对数据的随机实时读/写访问,是 Hadoop 文件系统的一部分。

我们可以直接或通过 HBase 的存储 HDFS 数据。使用 HBase 在 HDFS 读取消费/随机访问数据。HBase 在 Hadoop 的文件系统之上,并提供了读写访问。

HBase 是一个面向列的数据库,在表中它由行排序。表模式定义只能列族,也就是键值对。一个表有多个列族以及每一个列族可以有任意数量的列。后续列的值连续地存储在磁盘上。

表中的每个单元格值都具有时间戳。总之,在一个 HBase:表是行的集合、行是列族的集合、列族是列的集合、列是键值对的集合。

关于 Hbase 你需要掌握:

5.消息队列篇

Kafka 是最初由 Linkedin 公司开发,是一个分布式、支持分区的(partition)、多副本的(replica)的分布式消息系统,它的最大的特性就是可以实时的处理大量数据以满足各种需求场景:比如基于 Hadoop 的批处理系统、低延迟的实时系统、Spark 流式处理引擎,Nginx 日志、访问日志,消息服务等等,用 Scala 语言编写,Linkedin 于 2010 年贡献给了 Apache 基金会并成为顶级开源项目。

Kafka 或者类似 Kafka 各个公司自己造的消息'轮子'已经是大数据领域消息中间件的事实标准。Kafka 不满足单纯的消息中间件,也正朝着平台化的方向演进。

关于 Kafka 我们需要掌握:

6.实时计算篇

你可以参考:

Spark 是专门为大数据处理设计的通用计算引擎,是一个实现快速通用的集群计算平台。它是由加州大学伯克利分校 AMP 实验室开发的通用内存并行计算框架,用来构建大型的、低延迟的数据分析应用程序。它扩展了广泛使用的 MapReduce 计算模型。高效的支撑更多计算模式,包括交互式查询和流处理。Spark 的一个主要特点是能够在内存中进行计算,即使依赖磁盘进行复杂的运算,Spark 依然比 MapReduce 更加高效。

Spark 生态包含了:Spark Core、Spark Streaming、Spark SQL、Structured Streming 和机器学习相关的库等。

学习 Spark 我们应该掌握:

Spark 从 2.3.0 版本开始支持 Structured Streaming大数据学习,它是一个建立在 Spark SQL 引擎之上可扩展且容错的流处理引擎,统一了批处理和流处理。正是 Structured Streaming 的加入使得 Spark 在统一流、批处理方面能和 Flink 分庭抗礼。

我们需要掌握:

本部分是 Spark 对机器学习支持的部分,我们学有余力的同学可以了解一下 Spark 对常用的分类、回归、聚类、协同过滤、降维以及底层的优化原语等算法和工具。可以尝试自己使用 Spark Mlib 做一些简单的算法应用。

Flink

你可以参考:

文中缺少两张图,可以在我的朋友圈找到。

Apache Flink(以下简称 Flink)项目是大数据处理领域最近冉冉升起的一颗新星,其不同于其他大数据项目的诸多特性吸引了越来越多人的关注。尤其是 2019 年初 Blink 开源将 Flink 的关注度提升到了前所未有的程度。

那么关于 Flink 这个框架我们应该掌握哪些核心知识点?

7.其他

数据仓库&数据湖

算法

第三部分:视频&书籍推荐篇

(编辑:武陵站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!