1.介绍
在处理大数据上,Hadoop 已经成为事实上的标准 ,但是 hadoop 生态组件很多 面临的问题也很多
在本地系统上独立安装 Apache Hadoop 是非常容易的(只需解压缩并设置某些环境变量,然后就可以开始使用了)。但是这只合适于入门和做一些基本的教程学习。
如果你想在一个或多个“真正的节点”上安装 Apache Hadoop,那就复杂多了。 需要考虑到
- 复杂的集群设置
- 组件的兼容性
- 运维管理⼯具(配置、部署、管理、监控、告警)
2.基础架构选型依据
选择大数据套件时,应考虑几个方面
- 简单性:操作简单 易上手
- 广泛性:是否该大数据套件支持广泛使用的开源标准
- 特性:是否满足我们实际业务需求上的特性需求
- 陷阱:某些大数据套件采用数据驱动的付费方式,或者部分开源,核心不开源
- 运维:
为啥要选择套件
框架 vs. 发行版本 vs. 套件
- Hadoop生态十余款软件,兼容性管控
- 组件 配置、部署、管理、监控、告警
- 由于公司没有专门的运维人员
主流发行版对比
- CDH 6.3 的⽀持结束⽇期为 2022 年 3 ⽉ , HDP 3.1的⽀持结束⽇期为 2021 年 12 ⽉
也就是说,在这个⽇期之前,这些最后的“免费午餐”依然是主流的版本。但过了这个⽇期之后呢?我也没办法提供实现⽅法,只能提供思路,如果我有实现⽅法我就发财了,中国版的CDP就出现了。
-
回到Apache 原⽣版本 (其实很多公司⼀直就是这么做的,但⾮常具有挑战性(后续成本⽐买个商业版可能还要⾼⼀些),没有⼀定实⼒的公司还真不敢玩,除⾮公司做不⼤)
-
使⽤ Cloudera 的"社区版" CM虽然收费了,但是CDH发⾏版的源码⼀直都是在 GitHub 上公开的 ,但是最重要的组件是
Cloudera Manager
是假开源 源代码只会向具有许可证的客户开放, 正是 Cloudera Manager 降低了集群的安装、部署、运维的难度,没有了Cloudera Manager
只能 源码编译和部署组件,然后在繁琐的命令⾏下进⾏操作 那就和 Apache 社区版 没啥区别了 -
Apache Ambari +Apache BigTop Stack 使⽤Ambari 降低集群的安装、部署、运维的难度,且可以扩展Ambari去⽀持更多的组件, Hadoop 生态圈的项目众多,各种编译依赖又特别复杂,并且不同组件版本之间还有乱作一团麻的版本兼容性问题 ,Apache BigTop 是由 Cloudera 贡献给社区的。它的功能就是对 Hadoop 生态圈的开源项目进行集成、打包、虚拟化、部署和测试 它本身是实现了自己的 Stack(实际上就是一组预定义好的组件服务和命令脚本的集合,你可以理解为是一种“公版”发行版方案)
总结 大公司 用商业版套件,或者 自研,小公司 用 Apache Ambari +Apache BigTop Stack
方案 国内也有 很多基于 Apache Ambari +Apache BigTop Stack
再二次开源的 公司 例如
3.岗位
-
数据运维工程师 (协调机器资源,集群组件的维护、升级)
-
数据平台开发工程师 (开发面向数据开发使用的工具,比如元数据系统、数据质量、数据采集、数据计算平台、任务调度平等。自研或者基于开源的项目进行二次开发。例如 数据报表平台、数据分析平台、数据查询平台)
-
数据仓库工程师 (离线数仓的开发,比如数仓建模、数据清洗) ( 实时数仓:实时指标的开发,使用Spark Streaing 、Flink) 主要是写 SQL(离线、实时开发平台)、需要理解业务,开发业务报表 根据业务数据进行建模。
-
数据测试工程师 (测试数仓开发的指标逻辑、数据的准确性。)
-
数据分析师 (运营活动等数据查询分析,日报、周报、月报、季报、年报、报表等,专题分析,比如用户画像分析、ROI分析、风控分析,市场分析,比如要做竞品分析、渠道分析、行业分析)
-
数据挖掘师 (用户基础研究,用户生命周期刻画(进入、成长、成熟、衰退、流失),个性化推荐算法:基于协同过滤(USERBASE/ITEMBASE)的推荐,基于内容推荐,基于关联规则Apriot算法推荐 ,风控模型:恶意注册模型、异地识别模型、欺诈识别模型、高危会员模型)
-
算法工程师 ( 推荐系统、用户画像。语音、图像、自然语言处理、深度学习等机器学习算法)
-
数据产品经理 (协助公司各业务⽅向⼤数据应⽤产品调研、规划、执⾏。)
总结 由于公司 大数据平台 才起步
- 大数据套件 选取开源 套件 自运维
- 数据平台 选取 开源 wedatasphere,或者各组件内操作类似 Dinky
- 数据分析 与数据挖掘
- 用户画像与 协同推荐 二期
- 数据仓库
组⻓ 1 ⼈,离线 3~5 ⼈左右(离线处理、数仓),实时 2 ⼈ 左右,组⻓或技术⼤⽜兼顾、JavaEE、前端。
服务器规划
节点/服务 | 最低配置 | USDP Server | MySQL | NTP | Hadoop Cluster | 大数据集群内各服务部署规划 |
---|---|---|---|---|---|---|
节点1 (host01) | 8C 32G sys 60GB data 600GB | Y | Y | Y | Cluster1-节点1 | 自行规划 |
节点2 (host02) | 4C 16G sys 60GB data 500GB | - | - | - | Cluster1-节点2 | 自行规划 |
节点3 (host03) | 4C 16G sys 60GB data 500GB | - | - | - | Cluster1-节点3 | 自行规划 |