热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

大数据技术修炼清单自我成长

你怎么理解大数据开发岗位?现在公司大数据开发岗主要二个方向,一个方向是应用方向,如大数据平台搭建,存储,查询

你怎么理解大数据开发岗位?

现在公司大数据开发岗主要二个方向,一个方向是应用方向,如大数据平台搭建,存储,查询,分析等,主要测重开源hadoop技术的应用。另外,一个方向是开源系统改造和开发,主要大公司适用公司业务发展需要。不管哪个方向,在进入大数据开发这个领域,首先需要具备一些通用的基础技术能力以及经典开源项目运用能力。以下清单(不断更新)

一、大数据技术基础 
1.linux操作基础

linux系统简介与安装
linux常用命令–文件操作
linux常用命令–用户管理与权限
linux常用命令–系统管理
linux常用命令–免密登陆配置与网络管理
linux上常用软件安装
linux本地yum源配置及yum软件安装
linux防火墙配置
linux高级文本处理命令cut、sed、awk
linux定时任务crontab


2.shell编程

shell编程–基本语法
shell编程–流程控制
shell编程–函数
shell编程–综合案例–自动化部署脚本
3.内存数据库redis

redis和nosql简介
redis客户端连接
redis的string类型数据结构操作及应用-对象缓存
redis的list类型数据结构操作及应用案例-任务调度队列
redis的hash及set数据结构操作及应用案例-购物车
redis的sortedset数据结构操作及应用案例-排行榜
4.布式协调服务zookeeper

zookeeper简介及应用场景
zookeeper集群安装部署
zookeeper的数据节点与命令行操作
zookeeper的java客户端基本操作及事件监听
zookeeper核心机制及数据节点
zookeeper应用案例–分布式共享资源锁
zookeeper应用案例–服务器上下线动态感知
zookeeper的数据一致性原理及leader选举机制
5.java高级特性增强

Java多线程基本知识
Java同步关键词详解
java并发包线程池及在开源软件中的应用
Java并发包消息队里及在开源软件中的应用
Java JMS技术
Java动态代理反射
6.轻量级RPC框架开发

RPC原理学习
Nio原理学习
Netty常用API学习
轻量级RPC框架需求分析及原理分析
轻量级RPC框架开发
二、离线计算系统 
1.hadoop快速入门

hadoop背景介绍
分布式系统概述
离线数据分析流程介绍
集群搭建
集群使用初步
2.HDFS增强

HDFS的概念和特性
HDFS的shell(命令行客户端)操作
HDFS的工作机制
NAMENODE的工作机制
java的api操作
案例1:开发shell采集脚本
3.MAPREDUCE详解

自定义hadoop的RPC框架
Mapreduce编程规范及示例编写
Mapreduce程序运行模式及debug方法
mapreduce程序运行模式的内在机理
mapreduce运算框架的主体工作流程
自定义对象的序列化方法
MapReduce编程案例
4.MAPREDUCE增强

Mapreduce排序
自定义partitioner
Mapreduce的combiner
mapreduce工作机制详解
5.MAPREDUCE实战

maptask并行度机制-文件切片
maptask并行度设置
倒排索引
共同好友
6.federation介绍和hive使用

Hadoop的HA机制
HA集群的安装部署
集群运维测试之Datanode动态上下线
集群运维测试之Namenode状态切换管理
集群运维测试之数据块的balance
HA下HDFS-API变化
hive简介
hive架构
hive安装部署
hvie初使用
7.hive增强和flume介绍

HQL-DDL基本语法
HQL-DML基本语法
HIVE 的join
HIVE 参数配置
HIVE 自定义函数和Transform
HIVE 执行HQL的实例分析
HIVE最佳实践注意点
HIVE优化策略
HIVE实战案例
Flume介绍
Flume的安装部署
案例:采集目录到HDFS
案例:采集文件到HDFS
三、流式计算 
1.Flink从入门到精通

Streaming Processing Concepts(common concepts for stream processing)
Architecture
State Management
DataStream
Libraries
Table API & SQL
Deployment and Operations
Debugging and Monitoring
Ecosystem
Use Cases

2.实时计算Flink上下游及架构集成

消息队列是什么
Kakfa核心组件
Kafka集群部署实战及常用命令
Kafka配置文件梳理
Kakfa JavaApi学习
Kafka文件存储机制分析
Redis基础及单机环境部署
Redis数据结构及典型案例
Flume快速入门
Flume+Kafka+Storm+Redis整合
四、内存计算体系Spark 
1、scala编程

scala编程介绍
scala相关软件安装
scala基础语法
scala方法和函数
scala函数式编程特点
scala数组和集合
scala编程练习(单机版WordCount)
scala面向对象
scala模式匹配
actor编程介绍
option和偏函数
实战:actor的并发WordCount
柯里化
隐式转换
2.AKKA与RPC

Akka并发编程框架
实战:RPC编程实战
3.Spark快速入门

spark介绍
spark环境搭建
RDD简介
RDD的转换和动作
实战:RDD综合练习
RDD高级算子
自定义Partitioner
实战:网站访问次数
广播变量
实战:根据IP计算归属地
自定义排序
利用JDBC RDD实现数据导入导出
WorldCount执行流程详解
4.RDD详解

RDD依赖关系
RDD缓存机制
RDD的Checkpoint检查点机制
Spark任务执行过程分析
RDD的Stage划分
5.Spark-Sql应用

Spark-SQL
Spark结合Hive
DataFrame
实战:Spark-SQL和DataFrame案例
6.SparkStreaming应用实战

Spark-Streaming简介
Spark-Streaming编程
实战:StageFulWordCount
Flume结合Spark Streaming
Kafka结合Spark Streaming
窗口函数
ELK技术栈介绍
ElasticSearch安装和使用
Storm架构分析
Storm编程模型、Tuple源码、并发度分析
Storm WordCount案例及常用Api分析
7.Spark核心源码解析

Spark源码编译
Spark远程debug
Spark任务提交行流程源码分析
Spark通信流程源码分析
SparkContext创建过程源码分析
DriverActor和ClientActor通信过程源码分析
Worker启动Executor过程源码分析
Executor向DriverActor注册过程源码分析
Executor向Driver注册过程源码分析
DAGScheduler和TaskScheduler源码分析
Shuffle过程源码分析
Task执行过程源码分析

 

相关学习资料:


Flink学习资料


  • 官方文档 https://flink.apache.org/
  • 官方视频课程 https://github.com/flink-china/flink-training-course/blob/master/%E8%AF%BE%E7%A8%8B%E8%A1%A8%EF%BC%88%E6%8C%81%E7%BB%AD%E6%9B%B4%E6%96%B0%EF%BC%89.md
  • 社区 https://zh.ververica.com/
  • Flink commiter 的博客 http://wuchong.me/
  • ververica 教程 https://training.ververica.com/
  • 源码 https://github.com/apache/flink
  • 加入Flink 钉钉技术大群
  • 参与Flink线下meetup
  • 观看Flink线上meetup视频(bilibili有Flink专题)
  • infoQ了解Flink业界最新动态 https://www.infoq.cn/article/YACES4b5svX5MdQA*76t

推荐阅读
  • Java工程师书单(初级,中级,高级)
    简介怎样学习才能从一名Java初级程序员成长为一名合格的架构师,或者说一名合格的架构师应该有怎样的技术知识体系,这是不仅一个刚刚踏入职场的初级程序员也是工作一两年之后开始迷茫的程序 ... [详细]
  • 一面自我介绍对象相等的判断,equals方法实现。可以简单描述挫折,并说明自己如何克服,最终有哪些收获。职业规划表明自己决心,首先自己不准备继续求学了,必须招工作了。希望去哪 ... [详细]
  • Android工程师面试准备及设计模式使用场景
    本文介绍了Android工程师面试准备的经验,包括面试流程和重点准备内容。同时,还介绍了建造者模式的使用场景,以及在Android开发中的具体应用。 ... [详细]
  • 2021最新总结网易/腾讯/CVTE/字节面经分享(附答案解析)
    本文分享作者在2021年面试网易、腾讯、CVTE和字节等大型互联网企业的经历和问题,包括稳定性设计、数据库优化、分布式锁的设计等内容。同时提供了大厂最新面试真题笔记,并附带答案解析。 ... [详细]
  • 本文介绍了Redis的基础数据结构string的应用场景,并以面试的形式进行问答讲解,帮助读者更好地理解和应用Redis。同时,描述了一位面试者的心理状态和面试官的行为。 ... [详细]
  • Java容器中的compareto方法排序原理解析
    本文从源码解析Java容器中的compareto方法的排序原理,讲解了在使用数组存储数据时的限制以及存储效率的问题。同时提到了Redis的五大数据结构和list、set等知识点,回忆了作者大学时代的Java学习经历。文章以作者做的思维导图作为目录,展示了整个讲解过程。 ... [详细]
  • 006_Redis的List数据类型
    1.List类型是一个链表结构的集合,主要功能有push,pop,获取元素等。List类型是一个双端链表的结构,我们可以通过相关操作进行集合的头部或者尾部添加删除元素,List的设 ... [详细]
  • 本文介绍了Python爬虫技术基础篇面向对象高级编程(中)中的多重继承概念。通过继承,子类可以扩展父类的功能。文章以动物类层次的设计为例,讨论了按照不同分类方式设计类层次的复杂性和多重继承的优势。最后给出了哺乳动物和鸟类的设计示例,以及能跑、能飞、宠物类和非宠物类的增加对类数量的影响。 ... [详细]
  • Java和JavaScript是什么关系?java跟javaScript都是编程语言,只是java跟javaScript没有什么太大关系,一个是脚本语言(前端语言),一个是面向对象 ... [详细]
  • 一次上线事故,30岁+的程序员踩坑经验之谈
    本文主要介绍了一位30岁+的程序员在一次上线事故中踩坑的经验之谈。文章提到了在双十一活动期间,作为一个在线医疗项目,他们进行了优惠折扣活动的升级改造。然而,在上线前的最后一天,由于大量数据请求,导致部分接口出现问题。作者通过部署两台opentsdb来解决问题,但读数据的opentsdb仍然经常假死。作者只能查询最近24小时的数据。这次事故给他带来了很多教训和经验。 ... [详细]
  • 本文整理了Java中java.lang.NoSuchMethodError.getMessage()方法的一些代码示例,展示了NoSuchMethodErr ... [详细]
  • ejava,刘聪dejava
    本文目录一览:1、什么是Java?2、java ... [详细]
  • 广度优先遍历(BFS)算法的概述、代码实现和应用
    本文介绍了广度优先遍历(BFS)算法的概述、邻接矩阵和邻接表的代码实现,并讨论了BFS在求解最短路径或最短步数问题上的应用。以LeetCode中的934.最短的桥为例,详细阐述了BFS的具体思路和代码实现。最后,推荐了一些相关的BFS算法题目供大家练习。 ... [详细]
  • 基于分布式锁的防止重复请求解决方案
    一、前言关于重复请求,指的是我们服务端接收到很短的时间内的多个相同内容的重复请求。而这样的重复请求如果是幂等的(每次请求的结果都相同,如查 ... [详细]
  • 玩转直播系列之消息模块演进(3)
    一、背景即时消息(IM)系统是直播系统重要的组成部分,一个稳定的,有容错的,灵活的,支持高并发的消息模块是影响直播系统用户体验的重要因素。IM长连接服务在直播系统有发挥着举足轻重的 ... [详细]
author-avatar
用户v6poho0s7u
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有