基本信息

赵军旺 echo KCs4NikxMzI2OTk2NTgyNwo= | base64 -D
zhjwpku zhjwpku AT gmail DOT com

教育背景

北京大学2013年9月 - 2016年7月

硕士 系统结构

南京理工大学2009年9月 - 2013年7月

学士 计算机科学与技术

工作经历

星环科技基础架构产品部

资深数据库内核研发2023年7月至今

阿里巴巴阿里云数据库产品事业部 OLAP 产品部

技术专家2021年5月 - 2023年6月

华为FusionStorage 项目群 & CloudBU GaussDB for MySQL

高级工程师2018年4月 - 2021年5月

四达时代研究院

研发工程师2016年7月 - 2018年3月

项目经历

Spacture 时空库2023年7月-至今

Spacture 时空库产品化及项目POC。

  • 工作1: HA、备份工具及插件的选型
  • 工作2: 探索如何通过 Operator 支持 RDS 及基于 PG 的 MPP 分布式数据库的统一部署
  • 工作3: POC 测案编写及实施
AnalyticDB PostgreSQL 高可用及同城容灾2023年3月-2023年6月

同城容灾是专有云项目常见的企业级特性,针对 GPDB 只支持单副本和两副本的架构进行扩展。

  • 主要工作: 修改 FTS 逻辑适配多副本架构,其中一个备升主之后其它备要去和新主建立 replication
  • 适用场景: 需要高可用的部署场景,常见于同城容灾专有云局点
  • 其它: 差异化修复(基于 rsync 进行主备数据同步)
AnalyticDB PostgreSQL Iceberg table2022年9月-2023年3月

Apache Iceberg 是一个开源的大数据表格式,旨在为数据湖提供一个高效的元数据管理系统。ADB PG 希望借助 Iceberg 的通用表格式来更好地融入大数据生态。

  • 主要工作: 实现 iceberg-c sdk 及 iceberg_fdw
  • 适用场景: 查询由其它大数据工具生成的数据,将 gpdb 接入大数据生态
  • 未来规划: 像 snowflake 一样将 iceberg 视为本地表进行查询写入
AnalyticDB PostgreSQL 差异化存储2022年6月-2022年9月

AnalyticDB PostgreSQL 云原生 Serverless 版支持秒级付费、按需启停、存算分离、分时弹性等能力,数据存储在 OSS 上,实例运行环境部署 Dadi 缓存系统,增加了存储成本。差异化存储企业级特性充分利用 OSS 不同存储类型的价格为用户进一步节省成本。

  • 工作1: 提供转冷语法,利用 background worker 异步将 oss 对象转为对应的低频访问存储类型
  • 工作2: 提供建冷表语法,创建表时指定对应的 oss 存储类型,写入链路直接将文件存储为相应的类型
  • 工作3: 计费,读写低频访问存储的数据量写入 log,管控采集日志完成计费收集
ADB Pipeline Service2021年12月-2022年5月

APS 在 DTS 之外提供了一种低成本数据同步链路,同时提供将 Kafka/SLS 等消息队列中的数据写入 hudi table 的能力,供 ADB 查询分析。

  • 选型 Flink CDC connectors 开发 datastream job,从 RDS 向 ADB 同步数据
  • 从 SLS 中并行读取数据并写入 hudi table,作为 ADB 湖仓数据入口
  • 向 Flink CDC 社区贡献动态增删表特性: add new tables to existing cdc job
AnalyticDB MySQL 存储引擎2021年5月-2021年11月

AnalyticDB MySQL 是阿里巴巴自主研发的海量数据实时高并发在线分析云计算服务,可以在毫秒级针对千亿级数据进行即时的多维分析透视和业务探索。

  • 分析 POC 过程中遇到的性能瓶颈并优化
  • 开发 Z-order 索引特性,加速多维查询分析
TaurusDB 内核研发2020年5月-2021年5月

TaurusDB for MySQL 是华为的一款分布式 MySQL 数据库解决方案,SCN (System Change Number) 用于确保数据库中的数据一致性。

  • 使用 mmap 优化 binlog 性能,Use mmap for binlog
  • SCN 项目相关工作: 适配 purge 流程
FusionStorage OBS Index Layer 网络适配 RDMA2019年9月-2020年5月

OBS Index Layer 用于存储对象存储的元数据,基于 MongoDB,存储引擎使用 mongo-rocks,并通过实现 plog ENV 来对接持久层。

  • 主要工作: MongoDB transport layer 适配 xnet 库 (RoCE),提高吞吐减少延时 (bypass kernel)
  • 适用场景: 当返回大量数据到客户端时对性能提升效果明显,例如 OBS 用户查看一个 bucket 中的所有文件名时
FusionStorage Persistence Layer 保电内存缓存方案2018年4月-2019年8月

FusionStorage 是华为推出的一款分布式存储系统,支持文件、块、对象等多种存储访问协议。其中 Persistence Layer——存储系统的持久化层——作为存储系统的底层引擎,负责将数据持久化到存储介质中,同时提供数据保护和数据管理等功能,向上提供 plog 接口。

  • 主要工作: 增加了一种新的缓存类型,基于原有的缓存方案适配保电内存介质
  • 模块功能: Battery Backup Unit 空间的管理,包括 chunk 的申请、释放,掉电恢复等
  • 适用场景: 存储数据量较小的元数据

技能栈

  • 编程语言: C/C++ > Java > Python > Rust > Lua
  • 并发: 熟悉事件驱动模型及网络编程
  • 常用工具: GDB/Perf&FlameGraph/tmux

其它