个人信息

  • 吴奕民 | 男 | 2002
  • 本科 | 沈阳工业大学
  • Github: http://github.com/kosthi
  • 期望职位: C++ 研发工程师
  • 期望城市: 北京/杭州

联系方式

竞赛获奖

  • 2024年全国大学生计算机系统能力大赛-数据库管理系统设计赛 国家一等奖(2/325)
  • 2023年美国大学生数学建模竞赛 国际一等奖(Meritorious Winner)
  • 第十五届蓝桥杯全国软件和信息技术专业人才大赛(C/C++程序设计)省赛一等奖

专业技能

  • 熟练使用 C/C++ 语言,熟练掌握封装继承多态特性,STL常用容器。了解 RAII **与智能指针技术,熟悉哈希表、红黑树、B+树、LSM、跳表等常用数据结构。
  • 熟悉性能调优的基本原理,以及 tracing、perf、valgrind 等工具。
  • 了解操作系统的基本知识,包括进程通信、网络编程、I0 多路复用、调度算法、TCP/IP 协议栈等。
  • 了解 Golang、Python、Java等多门语言,能用以辅助开发工作。
  • 工作流: Linux、Shell、Vim、Markdown、Git、Github

项目经历

  • DataDance:基于C++17实现的关系型行式存储数据库 [独立开发] [2024.05—2024.08]

    • 基于 LRU-K 页面置换算法实现了数据库缓冲池,利用 Partition 的思路进行优化,提高缓冲池的并行度,并利用 channel 实现 非阻塞异步IO 的设计减少缓冲池的延迟。
    • 基于 B+树 实现了支持 最左前缀匹配原则 的唯一联合索引,并利用 Crabbing Protocol 提高索引并行度。
    • 基于 火山模型 实现了数据库的计算流水线,除了基本的增删改查算子外,实现了聚合函数与分组统计、不相关子查询,并在 优化器 上添加了将 Nested Loop Join 优化为 Sort Merge Join 算法的策略,连接时间从 268.69 s 缩短到 1.83s
    • 基于 SS2PL 算法实现了集中式锁管理器,支持 SQL-92 标准定义的四个隔离级别,并实现细粒度的 间隙锁 解决幻读和缓解表锁性能劣势与 Wait-Die 的死锁预防算法。
    • 基于 WAL 机制实现了故障恢复系统,支持后台日志定期刷盘,系统启动时通过 REDO/UNDO日志 进行故障恢复,并通过支持 静态检查点 来缩短故障恢复时间。
    • 基于 多生产者多消费者 模型,利用 std::async 支持 csv 数据 异步多线程 批量载入数据库,并实现 BulkLoading 算法 自底向上 构造 B+ 树索引,对于千万条数据载入仅需 1s
    • 在决赛阶段对项目进行整体优化,最终 TPC-C 压测结果为 tpmC: 81679.143785txns/min,在性能榜 排名(1/13)
  • TinyTCP:基于C++实现的可与真实网络环境通信的简易TCP协议 [独立开发] [2024.02—2024.03]

    • 实现基于内存的可靠字节流,使用 std::deque 容器作为缓冲区,利用流量限制来控制内存占用,使用 std::string_view 减少字符串操作开销,性能达到 33.34 Gbit/s
    • 实现字节流重组器,使用合并区间的**解决字符流连接和去重难题,性能达到 14.78 Gbit/s
    • 实现 TCP 接收器,支持接收并解析 TCP 报文段,通过字节流重组器将数据重组到正确的位置,并返回确认号和滑动窗口大小。
    • 实现 TCP 发送器,根据返回的确认号和滑动窗口大小,将字节流数据包装成 TCP 报文段,跟踪每个报文段的接收情况,并支持 RTO 倍增 的超时重传策略。
    • 在网络接口层支持 ARP 协议路由机制
    • 在真实网络环境进行 Ping 测试,表现出 81.55% 的总体交付率,最小/最大 RTT 分别为 100ms/430ms。

荣誉证书

  • CET-4
  • 计算机技术与软件专业技术资格证书 软件设计师
  • 沈阳工业大学创新创业奖学金 & 创新创业先进个人

自我评价

  • 具有较强的自学能力,积极学习各种新技术并参与开源项目建设。
  • 具有团队合作和沟通协调能力,参与多次项目的协同开发并担任组长。
  • 具有认真求索、一丝不苟的精神,严格要求自己编写规范性的代码,有效提高了debug效率。
  • 具有较强信息检索能力,擅长解决疑难杂症,通过Google、Github、StackOverflow等论坛和文档解决技术问题。

致谢

感谢您花时间阅读我的简历,期待能有机会和您共事。