个人介绍
工作经历
2018-05-01 -2022-02-01北京创锐文化传媒有限公司高级后端工程师
1、参与项目需求分析,建立关系、行为、功能模型; 2、完成软件系统的设计,按照文档模板和规范编写项目技术文档和代码注释; 3、按照软件开发规范编写代码,进行代码的单元测试; 4、随时测试和检查代码,修复bug; 5、配合项目经理完成项目协调和管理工作 项目:为了服务聚美电子商务公共平台,建立更加完善的电商服务体系,开发平台。其最鲜明的特点为销售当地特产,网上超市购物送货上门,方便用户的购买。主要模块有:后台管理系统,门户系统,单点登录系统。
教育经历
2015-09-01 - 2018-03-01北京航空航天大学材料科学与工程硕士
本科是重庆大学,985院校。硕士是北京航空航天大学,985院校。
技能
Nginx+MySql+kafka+Flink+HBase+Pheonix+MaxWell+FlinkCDC+Redis+ClickHouse+Prometheus+Gran ada+Sugar 项目描述:本项目基于Flink技术开发的大数据统计分析平台,目的是通过对聚美购物网站以及APP的各种用户行为数据 进行统计分析,用分析的数据辅助产品经理、数据分析师以及管理人员分析现有产品的情况,并根据用户行为分析结果 持续改进产品的设计,以及调整公司的战略和业务。最终达到用大数据技术来帮助提升公司的业绩、营业额以及市场 占有率的目标。 xxcen9du202201112001 个人职责: 主要负责对业务交互数据和用户行为数据进行分析。主要实现的指标包括: 1. 最近一个小时的交易金额 2. 统计一天内的浏览下单转化率 3. 统计用户跳出率 4. 统计分时访问流量显示 5. 关键词热度排行 技术描述: 1. 通过MaxWell从MySql中抓取对应的数据表的实时新增变化数据推送到kafka 2. 通过Nginx日志采集将用户行为数据推送到kafka 3. 利用Flink侧输出流将日志数据进行分流,分为启动,事件,曝光,页面,错误五个主题 4. 利用FlinkCDC读取MySql配置表(制定了哪些表要去哪里的规则),转化为广播流并与业务流进行connect,进 行动态分流 5. 利用Phoenix在HBase中建立维度数据表,并创建二级索引,提升查询效率 6. 通过Flink的intervalJoin将事实数据进行双流join形成宽表,事实数据与维度数据进行关联时,通过Redis来实现 旁路缓存机制,并通过实现异步IO提升查询维表的效率 7. 根据EventTime合理设置WaterMark实时展示登陆、订单和支付数据明细 8. 使用FlinkCEP编程实现对用户跳出明细的过滤 9. 确保缓存数据一致性,更新HBase时主动将Redis中的对应数据删除,并且Redis设置过期时间,避免冷数据长期占 用缓存,开启Flink检查点Exactly-Once,配合Flink Kafka Producer两阶段提交以及Phoenix事务机制,确保数据 不丢失不重复。 10. 通过union拉宽表,分组开窗聚合,关联维度表补充维度数据,将结果写入ClickHouse中 11. 从ClickHouse读取数据发布接口,对接可视化模块
一、聚美大数据离线指标分析系统 大数据开发工程师 2018年04月 - 2022年01月 北京 2018年07月 - 2022年01月 北京 软件架构:Nginx+Flume+Kafka+Hadoop+Hive+Sqoop+MySql+Kylin+Azkaban+Spark+Superset+睿像云 项目描述:为配合公司的战略要求,拟建设一个大数据平台,统一收集和存储各个业务的原始运行数据,通过数仓分 层对用户日志数据及业务数据进行整合并统计分析,提取有价值的信息帮助公司提高产品质量及上级领导的分析决策 个人职责: 主要负责模块包括: 1. 实现用户行为数据仓库以及业务数据仓库的分层搭建 2. 对数据进行ETL,脱敏,维度退化以及制作宽表 3. 负责数仓平台的数据维护,确保仓库模型数据的准确性和一致性 4. 针对数据仓库中的数据进行用户新增、流失、回流、留存、沉默、TopN、在线时长、转化率、连续一周登陆、最 近连续三周活跃用户、评价等报表分析 技术描述: 1. 数据仓库的分层架构:ODS+DWD+DIM+DWS+DWT+ADS 2. 使用Flume采集日志文件并发送到Kafka集群 3. Flume配置kafkaSource从Kafka集群收集日志数据,并保存到HDFS 4. 在 Hive 中使用Snappy压缩, 减少 IO 读写, 并将 Hive 的元数据从默认的derby 中转入到 Mysql 中存储以支 持多客户端访问 5. 使用Hive对数据进行多维分析,主要计算客户的留存率,日活跃,月活跃等一些指标。并且存储到MySql里,对空 值和数据一致性问题进行处理 6. 在 Kafka 中通过调整日志保存时间、副本数和内存等参数来提升性能 7. 对于小文件问题优化: 1在MR 任务中手动开启 merge 对不足 16M 的小文件合并至256M。 2CombineHiveInputformat 提前对数据进行合并, 减少生成的 MapTask。3开启JVM 重用, 但是不宜过大 8. 对于不同类型的任务, 采用不同的计算引擎: MR(基于磁盘, 一定跑完, 适用于任务量大, 时效性要求不高的 数据)、 Spark( 基于内存和磁盘, 跑日常任务) 9. 对日常任务进行Kylin即席查询 10. 使用Aazkaban定时调度任务,并集成睿像云实现邮件*报警