1、熟练掌握 Java、Scala 等编程语言,熟悉程序设计和架构的基本思想,具有良好的面向对象的思维和编码 开发规范; 2、熟悉在 Linux 环境进行项目的开发,熟悉 Linux 系统的基本操作命令和基础服务配置,熟练掌握 Shell 脚本 开发; 3、熟悉 Hadoop 生态圈相关技术,能够独立设计并且搭建高可用的 Hadoop 集群,熟悉 HDFS 的基本架构以 及数据流原理,熟悉 MapReduce 的工作流程和 Yarn 的资源调度并能在工作中对其进行优化; 4、熟悉 Hive 分析框架,熟练掌握 HQL 语句,能结合窗口函数和自定义函数进行日常业务的开发,并对其进 行优化; 5、熟悉 Flume 分布式流式框架,熟悉 Flume 拦截器和选择器,熟悉 Flume 的组成并且能够在日常工作中进 行相关的优化; 6、熟悉 Kafka 分布式消息队列系统,熟练使用 Kafka 高、低阶 API,熟悉 Kafka 的分区分配策略; 7、 熟练使用 Spark Core、Spark SQL 进行日常业务的开发,熟练使用 Spark Streaming 进行流式处理,熟悉 Spark 内核原理,熟悉 Spark 调优; 8、熟练使用 Elasticsearch 全文检索工具进行日常业务的开发以及 Kibana 的使用; 9、熟悉日常开发中基于 Zookeeper 的模块之间的调度,理解 Zookeeper 的内部原理以及调度机制; 10、熟练使用 Sqoop 进行传统数据库和 Hadoop 之间的传输,熟练使用 Azkaban 进行定时任务调度; 11、熟练掌握 MySQL 数据库的日常操作,了解 InnoDB 和 MyIsam 存储引擎,了解 MySQL 的常用 SQL 优化以 及主从复制; 12、熟练使用 Git、Maven 等项目版本控制和构建工具; 13、了解 Redis,了解 Redis 的五大数据结构常用操作命令、持久化 RDB 和 AOF、事务控制以及 Jedis 的客户 端使用; 14、了解 HBase 分布式存储系统及其基本架构,了解 HBase 中 RowKey 的设计和二级索引; 15、了解 Canal,能够使用 Canal 对 mysql 中的数据进行实时监控; 16、熟悉Flink 流式计算框架,了解 Kylin 分析引擎,了解 Data
项目一:花生日记数据仓库 开发环境:Centos7、IntelliJ IEDA 、JDK1.8 软件架构:Nginx+Springboot+Zookeeper+Flume+Kafka+Hadoop+Hive+MySQL+Sqoop+Azkaban 项目描述: 该项目旨在为公司搭建数据仓库,用来将公司所有的业务数据、用户行为数据等集中到一起,对数据进
行清洗、分类、重组、合并、拆分、统计等等,从而为不同的业务部门提供统一的数据出口,进行报表分析,
为企业决策制定过程,提供系统数据支持的战略集合,帮助企业改进业务流程、控制成本、提高产品质量等 等。 责任描述: 1、参与数据仓库的搭建以及表结构的设计和维度建模的设计; 2、负责数据仓库不同层多个指标的分析; 3、负责数据仓库的数据采集以及数据导入。 技术描述: 1、采用 Hive 作为数据仓库的载体,分 4 层进行建模,分别为 ODS 层(直接加载原始数据,不做处理) 、 DWD 层(对 ODS 层数据进行清洗等,去除空值、脏数据等)、DWS 层(对 DWD 层进行轻度汇总) 、ADS 层(针 对不同的主题组成各种统计报表); 2、日志数据使用 Flume 进行采集进入 Kafka 再用 Flume 进行消费保存到 HDFS 上,Hive 通过建立外部表 读取到数据,业务数据通过 Sqoop 从 MySQL 导入到 Hive; 3、在 Hive 中使用 Tez 引擎达到比 MR 更高的性能; 4、合理使用星型模型、雪花模型以及星座模型进行维度建模; 5、使用自定义 UDF 和 UDTF 函数来解析和调试复杂字段; 6、将表划分为实体表、维度表、事务型事实表和周期型事实表; 7、对实体表和维度表进行全量同步,对事务型事实表进行增量同步,对周期性事实表使用拉链表进行 同步; 8、在 Hive 中使用多种日期函数来处理不同的需求; 9、从不同角度对 Hive 进行优化; 10、使用 Snappy 方式进行压缩,orc 格式进行存储,从而优化空间。 项目二:花生日记APP 实时统计分析项目 开发环境:Centos7、IntelliJ IEDA、JDK1.8 软件架构:Nginx+SpringBoot+Kafka+Spark+Hive+Elasticsearch+Redis+MySQL+canal 项目描述: 该项目主要通过对用户当天行为的分析,来实时统计相应的指标并进行可视化展示,同时还构建了一个 实时交互平台可以根据条件分析用户的行为,对用户购买明细进行灵活分析。 责任描述: 1、参与实时系统的架构、搭建与优化; 2、参与数据的采集以及清洗; 3、对当日活跃用户、新增用户、交易额、订单数等指标进行统计和分时分析。 技术描述:
1、通过 SpringBoot 整合 Kafka 在日志服务器进行分流; 2、使用 Redis 来对当日已经计入的设备进行去重,key 为日期,value 为设备 id; 3、采用 ElasticSearch 来作为实时交互的数据库; 4、使用 canal 来实时监控 MySQL 中的业务数据并发送到 Kafka,SparkStreaming 消费 Kafka 中的数据保存 到 ElasticSearch 中然后发布; 5、SparkStreaming 使用 Direct 方式来对 Kafka 进行消费,同时采用 CheckPoint 机制来对 offset 进行保存, 可以保证数据消费一次并且仅消费一次; 6、使用 Kryo 序列化方式来进行序列化以便于提升性能。 项目三:花生日记电商分析平台 开发环境:Centos7、IntelliJ IEDA、JDK1.8 软件架构:Flume+Kafka+Spark+Hive+MySQL+Sqoop+Azkaban 项目描述: 本项目以 Spark 框架为核心,来对电商网站的日志进行离线和实时分析。通过对各种用户行为进行分析, 根据统计结果来辅助分析现有产品的情况,同时根据用户行为分析结果来改进产品设计以及调整公司的战略 和业务,从而达到利用大数据技术帮助公司提升业绩、营业额以及市场占有率的目标。 责任描述: 1、参与实时系统与离线系统的架构、搭建与优化; 2、参与数据的采集、清洗以及存储; 3、参与实时和离线模块的部分需求统计。 技术描述: 1、统计实时和离线部分需求指标,沉默用户统计、新鲜度分析、页面单跳转化率、各区域 Top20 商品统 计、最近一小时广告点击量实时统计等,离线部分涉及Spark Core的RDD算子的转化和行动以及使用Spark SQL 来进行查询,完成指标后将数据存入 MySQL 中,实时部分使用 SparkStreaming 对接 Kafka,采用 DirectDStream 低阶 API
按照小时粒度对登录app的账号分别进行各种指标的统计 对活跃人数进行各种指标的分析以及报表展示 对活跃用户的转化率进行漏斗统计
对各个指标进行监控并设置告警事件 对首登人数进行各种指标的分析以及报表展示 对购买用户进行各项指标分析
对各个指标进行监控并设置告警事件 对首登人数进行各种指标的分析以及报表展示 对购买用户进行各项指标的分析