实现网
康炜

昵称登录后显示

1400/8小时
8年工作经验

美团网
后端工程师

Python
Go
React
Android

1

被预约次数

2

被收藏次数

0

被评价次数

擅长技能

编程语言:Python、Java、Golang、JS
前端框架: React
Web框架:Django、Flask、Gin、Beego
通信中间件: RabbitMQ
常用IDE:PyCharm、Sublime、Android Studio
存储相关:MySQL、Redis、ElasticSearch、 MongoDB
版本管理与发布:Git、Ansible、Fabric
常用系统:Mac OS

项目经验

项目经验:数据平台ETL调度系统

公司发展到一定规模后,会对数据有强烈的需求,包括对决策做数据支撑,机器学习,推荐算法等等,所以就需要一个数据平台来提供支持。
我所在的就是数据平台,基础底层组件有Hadoop、Hive、Spark、Hbase等等一系列底层组件,而上层需要有一个入口,让公司RD方便的进行数据生产。
我所做的ETL调度系统,就是为公司RD提供 数据接入、生产、运维一系列操作,旨在为公司RD形成数据生产闭环。目前上线脚本有1500+, 每日执行的任务数为2000+。对公司其他业务部门带来很好的技术支持。

系统框架及工具: Ubuntu14.04, Django, Celery,RabbitMQ,supervisor, Ansible, Nginx, git,leangoo, guardian

主要模块如下:

* auth模块:

1. 接入公司SSO

* 审批与权限模块:

1. 任务的新建,编写,提交审批,审批通过,上线调度,等控制起来

2. 基于第三方模块guardian实现object perm

3. 变更内容提醒

* etl模块解析模块:

1. mysql->mysql, mysql->hive, hive->hive, hive->mysql

2. 数据源管理

3. 网页端脚本测试

* 报警模块。 在任务超时或者失败时会进行异步报警,三种模式自由选择:

1. 短信

2. 钉钉

3. 邮件

* 调度模块:

1. 基于任务模板生成真实任务DAG, 并根据DAG依赖关系顺序执行任务

2. 多种调度模式,如"按天调度, cron(0 0 * * *)", "按小时调度 cron(0 * * * *)"等等

3. 在补数据,修数据时手动创建任务DAG

4. 调度任务分为2种, 本地命令任务与远程ssh命令任务,均支持手动结束

5. 由APschedule框架替换成croniter手动调度

6. 根据haddop集群资源动态调度MapReduce任务

* 其他:

1. 基于vis.js进行任务运行状态动态更新展示

2. 手动选择任务重跑等等

负责了90%的代码及wiki文档。日常开发、部署、监控。

0条评论 雇主评价

暂无评论~

可兼职时间

周六全天
周日全天
工作日下班后
周六半天
周日半天

可兼职地点

朝阳
望京

被预约

1

被收藏

2

被评价

0

立即预约

可兼职时间

周六全天
周日全天
工作日下班后
周六半天
周日半天

可兼职地点

朝阳
望京

已通过身份认证