1. 熟悉Java/Python/Scala开发语言,有扎实的面向对象和函数式编程功底
2. 熟悉Linux开发环境,熟悉常用Linux操作命令,能完成简单的Shell脚本的编写
3. 熟悉Hadoop生态圈,能独立完成Hadoop集群的搭建,熟悉HDFS的分布式读写流程
4. 熟悉MapReduce任务的工作原理和切片机制、Shuffle机制及其调节优化,熟悉Yarn资源调度机制
5. 熟悉Flume的组件(Source、Channel、Sink)及工作原理,能够自定义拦截器,使用监控器,掌握日志采集框架相关配置及常见性能调优
6. 熟悉Zookeeper的选举机制、监听器原理,熟悉Zookeeper常用命令
7. 熟悉Kafka架构和工作原理,熟悉集群部署和常见的性能优化,以及与SparkStreaming的对接
8. 熟悉Hive架构和原理,熟悉Hive中常用函数、窗口函数以及自定义UDF函数、UDTF函数,能熟练使用HQL对数据进行分析,了解Hive调优
9. 熟悉Sqoop在HDFS和关系型数据库之间的导入导出,熟悉Azkaban对批量任务的调度
10. 熟悉Spark的Scala编程,能够熟练使用SparkCore和SparkStreaming,熟悉Spark部署模式、了解Spark通讯架构
11. 熟悉Spark常见的性能调优,如数据倾斜、Shuffle优化
12. 了解Flink运行时架构,了解DataStreamAPI、FlinkTableAPI、FlinkSQLAPI,了解watermark机制,布隆过滤器原理,了解复杂事件处理Flink CEP
13 .熟悉Redis缓存数据库的使用,理解Redis持久化机制,熟悉Redis事务控制,了解redis三种特殊类型数据
14. 熟悉Hbase基本架构、以及RowKey设计原则,熟悉Hbase读写流程,了解HbaseAPI的使用以及结合Phoneix建立索引
15. 熟悉分布式搜索引擎Elasticsearch,了解倒排索引机制,了解Kibana可视化平台的使用
16. 熟悉Nginx国密和非国密版本,了解Nginx基本配置及常见调优,如http代理,负载均衡
项目一:政务大数据协同BM监管(BM局项目)
1. 开发环境:Linux+Python3.7.4
2. 软件架构:Zookeeper3.6.1、Kafka2.5、KafkaEagleRedis6.0.5、Nginx(国密)、Mysql、Elasticsearch7.3
3.项目介绍:
在保密监管一体化的指导思路下,为了实现国家、省、和地级市各级保密监管平台之间的互联互通,各级保密机关的协同保密等需求,建设各级保密监管系统,制定覆盖全国的三级指挥调度机制。
4. 责任描述:
参与平台架构选择,并落实各个核心模块
完成业务功性能指标以及性能指标
4.技术要点
1)配置国密nginx,使用nginx配置https并实现反向代理和负载均衡
2)将上传或下发的指令等数据接收汇聚,封装后放入Kafka缓存队列中,使用kafkaeagle监控kafka
3)将一些结构复杂的数据先放入redis后再进行处理,将处理后的数据写入mysql
4)对于一些对搜索要求高并且数据量很大的数据,存入elasticsearch,通过scroll滚动查询的方式读取数据
5)使用Docker打包集群环境,实现一键部署
项目二:目标关系分析系统(BM局项目)
1. 开发环境:Linux+JDK1.8+Scala2.11
2. 软件架构:Flume,Kafka,SparkStreaming,Redis,ES,Hbase,phoenix ,Mysql,Maxwall,Flink
3. 责任描述:
参与平台的技术选型,版本选型及搭建
用户模块:分析各邮件系统用户数量,用户年龄段,性别等指标
预警模块:恶意登录分析
4. 技术要点
1)搭建信息采集通道并自定义Flume拦截器对数据信息ETL和分类,将数据发送到Kafka不同Topic
2)使用Maxwall对Mysql中数据进行监控,并拉取到Kafka中,并使用bootstrap拉取历史数据
3)SparkStreaming消费Kafka数据,并手动维护偏移量实现精准一次性消费
4)使用Redis保存SparkStreaming中间状态,利用Redis中Set结构进行去重,对于邮件关系等需要长期保存的状态,放到hbase中保存,方便后续需求实现(判断是否为首次)
5)针对Spark出现的各类性能问题如数据倾斜等进行调优
6)使用ES对特定数据进行存储
7)根据业务需求引入Flink的Watermark,设置合理延迟时间加侧输出流处理迟到数据
8)使用Flink对恶意登录指标进行分析并与Spark进行对比,使用Azkaban进行任务调度
项目三:三佳商城离线数据仓库
1. 开发环境:Linux+JDK1.8
2. 软件架构:Tomcat,Nginx,Flume,Ganglia,Zookeeper,Kafka,KafkaManager,Hadoop,MySQL,Hive,Sqoop, Azkaban,Zabbix
3. 项目介绍:
随着企业的数据量越来越大,需要搭建一个统一的数据采集通道采集数据,将这些数据集中的放在一个统一的数据仓库中管理,通过对业务数据和行为数据的汇总分析,可以为企业所有决策制定过程,提供所有系统数据的支持。帮助企业改进业务流程、控制成本、提高产品质量等。
4. 责任描述:
部署配置Flume,同时使用监视器Ganglia监控Flume
部署配置Kafka,同时使用监视器KafkaManager监控Kafka
搭建Hadoop集群HA,通过Zookeeper实现NameNode的热备份
参与数据仓库的搭建及分层
参与数据建模,确立维度表、事实表及拉链表
用户模块:新增用户,活跃用户,沉默用户,忠诚用户,周回流用户等指标
商品模块:差评率,退货率,收藏、销量等各类TopN
订单模块:下单笔数,交易成功单数,复购率,GMV等
5. 技术要点
1)安装Zookeeper,通过Zookeeper搭建Hadoop-HA高可用集群,并对集群进行基准测试和参数调优,安装LZO压缩格式,并配置HDFS多目录
2)部署Flume,使用TailDirSource采集服务器数据,使用KafkaChannel与Kafka对接,并自定义拦截器进行简单的数据清洗,使用Multiplexing选择器将不同的Event发往不同的Channel,以便将不同的数据发送到Kafka不同的topic上
3) 部署Kafka集群,并对Kafka集群进行压测以确定集群上限,配置Kafka常用参数,使用KafkaManager实现对Kafka集群运行状态的监控
4) 将Mysql业务数据通过S
羲和数据可视化系统,是一种用于将数据转换为信息的工具,它能够将大量的数据、信息和指标转换成具有意义的图表、表格、仪表板等形式。数据可视化系统通常支持多种数据源,并提供各种交互方式来探索数据。数据保密细节不便展示。
早在2016年,阿里巴巴就提出了数据中台建设的核心理念:One Data, One Service。用一句话定义:所有数据只加工一次,数据即服务。例如,功率预测场景,数据中台就是要在整个功率预测业务形成一个公共数据层,协同跨部门的小数仓,实现数据的复用,不会因为不同的应用场景,不