如果说,人类进化动力源于挑战:

想突破速度,于是从太空飞行追逐到量子世界;

想追求稳定,于是在万变之中,求不变之道;

想打破繁复,于是用 1 台智能手机集成 N 种必需品,大道至简……

那么,挑战充满不确定性的未来,就是 TiDB 这款开源产品的不断进化的内在基因——如何做到更好的性能、更强的稳定性、更惊人的易用性?这也是 Geek 聚集的 TiDB 社区不断前进的指引。

无挑战,不 Geek。相信在上周举办 TiDB Hackathon 2019 上,大家已经在短短两天里领略了 TiDB 社区伙伴们的 Geek 精神,促成了很多优秀项目的诞生。为了进一步激发社区的创造性,我们将开启 TiDB Challenge Program,这是一场从 Easy 到 Hard 的升级“打怪”竞赛,第一赛季将持续 3 个月,比赛过程中获得积分还可以兑换丰厚的礼品。万事俱备,就等各位来战!

TiDB Challenge Program 由 PingCAP 发起,旨在激发社区创造性,使选手可以通过完成一系列的任务提升 TiDB 产品的稳定性、性能和易用性。第一赛季主题为 Performance Improvement,将于 2019 年 11 月 4 日正式开启,赛事持续 3 个月。选手可选择个人或团队名义参赛完成任务并获得相应积分。积分可在赛季结束后进行奖项兑换。

欢迎大家加入 TiDB Community Slack Workspace 和 tikv-wg Slack Workspace,参赛过程中遇到任何问题都可以直接通过 #performance-challenge-program channel 与我们取得联系。

Highlights

从 Easy 到 Hard

本次大赛项目采用分级制度,充分照顾入门选手的「Easy」模式降低了参赛门槛,让 TiDB 小白也能快速上手。每个项目对应一定的积分,当选手累计到一定积分后可解锁「Medium」与「Hard」模式,犹如升级打怪般攻克重重障碍,成就感爆棚!

大咖导师

针对「Medium」和「Hard」 类型的任务,我们设有专门的导师。参赛者可通过 Slack Channel 就代码实现过程中遇到的问题进行沟通,保证选手的参赛体验。

丰厚奖品

我们为大家准备了丰富的奖品,使用完赛项目的积分即可兑换**(数量有限,先到先得哦)**~

赛前准备

  • 参考 Join GitHub 完成 GitHub 账号的创建。
  • 参考 Installing Git 在本地环境中安装 Git。
  • 通过 Set up Git 配置 Git 访问 GitHub。

报名

  • 报名方式: 发起 Issue 至 tidb-perf-challege/pcp repo
  • 格式要求:
    • 标题:PCP/Sign Up
    • 内容:
      • 个人参赛:请对你自己进行简要介绍,并留下可以与你取得联系的邮箱地址。
      • 团队参赛:请对你的团队进行简要介绍,写明团队名称,每个团队成员的 GitHub ID,并留下可以与你们取得联系的邮箱地址。可参考 示例。

注意事项:

  • 以团队形式参赛,每队成员最多三人。
  • 有 PingCAP 内部员工参与的队伍,将作为打星队伍,不参与积分总排名,所获积分仍具有兑换权益

参赛流程

TiDB Performance Challenge Program 全流程包括:查看任务->领取任务->实现任务->提交任务->评估任务->获得积分->积分兑换,其中“获得积分”之前的步骤都将在 GitHub 上实现。

第一步:查看 / 提出 Issue

当前开放的 Issue 列表可分别在 TiDB-Performance Challenge Program Project、TiKV-Performance Challenge Program Project、PD-Performance Challenge Program Project 中的 TODO Columns 查看。

其中 TODO Columns 按照题目难易程度划分了 3 列,分别是:TODO/Easy、TODO/Medium、TODO/Hard。每一个 Issue 还设置了一些标签,为方便大家理解,现将 TiDB Performance Challenge 相关标签所代表含义做如下说明:

  • “difficulty/easy”、“difficulty/medium”、“difficulty/hard”:Issue 难度级别。
  • “Component/XX”:Issue 所涉及的模块。

除了当前开放的 Issue,如果你有其他关于 Performance Improvement 的想法想要实现,可通过发起 Issue 的方式提出 Proposal。发起 Issue 之前请确保你已经了解了 Contribution Guide 和 Contributor Covenant Code of Conduct。

  • TiDB 相关 Proposal 可通过 TiDB Issue 发起通道 提交至 TiDB Repo;
  • TiKV 相关 Proposal 可通过 TiKV Issue 发起通道 提交至 TiKV Repo;
  • PD 相关 Proposal 可通过 PD Issue 发起通道 提交至 PD Repo。

格式要求:Issue 标题前需添加“REQ-PCP”标记,例如:REQ-PCP: Further extract tidb_query into different workspaces。

第二步:领取任务

如果你决定认领某一个 Issue,请先在这个 Issue 中回复 “/pick-up-challenge”, 后台将自动判断你所拥有的积分是否具备挑战此 Issue 的资格,积分满足要求即可开始挑战,积分不满足要求,需按照系统提示获得满足挑战要求的积分。

需要特别提醒的是:

  • 每个参赛主体(含个人及团队)参与 TiDB 性能挑战赛的初始积分为 0,需要先完成 “Easy” 的 Issue 将积分积累至 400 分以上(含 400 分),才有资格挑战难度为“Medium”和“Hard”的题目。
  • 每个参赛主体一次只能领取一个任务。

第三步:实现代码

在实现代码的过程中如果遇到问题,可以通过 #performance-challenge-program channel 与我们进行探讨,Issue 指定的 Mentor 会尽可能在 24h 内予以回复。不过,在提出问题之前一定要确保你已经仔细阅读过题目内容并且已经完成了参考资料的学习哦~

第四步:提交代码

如果你觉得你的方案已经达到了题目的要求,可在相关 Repo(例如 tidb)的 master 分支上实现你的方案,并将代码以 GitHub Pull Request(简称 PR)的形式提交到相应的 GitHub Repo 上。当 PR 提交后,可在 PR 的评论中 at 该题目的 Mentor 进行代码评审,Mentor 会尽可能在方案提交后的 48h 内完成评估。

注:提交的 PR 需要满足 Commit Message and Pull Request Style 中定义的规范。

提交方式:代码完成后,参赛者需提交 GitHub Pull Request(PR) 到相应 Repo,如何提交 PR 可参考 GitHub Workflow,这里也有一些 SRE-BOT Command Help 供大家参考。

格式要求:PR 的第一行需要指定任务 Issue 的编号,再写每个 repo 要求的格式,示例:

PCP #12345<!-- The following description -->

第五步:代码评估及积分授予

评估规则:PR Reviewer 会对 PR 进行代码格式、代码功能和性能的 Review,获得 2 个以上 Reviewer 认可(即在 PR 中评论 “LGTM”)的 PR 将会被 merge 到对应 repo 的主干。

如果你的 PR 被 Merge 到主干,那么就意味着该题目被你挑战成功,你将获得该题目对应的积分;其他参赛选手将失去对该题目的挑战资格,已经提交的 PR 也会被 Close。

否则,你需要继续和 PR 的 Reviewer 探讨实现方案和细节,合理的接受或者拒绝 Reviewer 对 PR 的评审建议。

第六步:积分兑换

积分获得情况将会在 TiDB 性能挑战赛官方网站 呈现。所获积分可兑换礼品或奖金,礼品包括但不限于:TiDB 限量版帽衫、The North Face 定制电脑双肩包等。

兑换时间:每个赛季结束后至下一赛季结束前可进行积分兑换,下一个赛季结束时,前一赛季的可兑换积分将直接清零,不可再进行社区礼品兑换。

兑换方式:本赛季结束后填写礼品兑换表(届时将开放填写权限)。

学习资料

这里有 TiDB 精选技术讲解文章,帮助大家轻松掌握 TiDB 各核心组件的原理及功能;还有 PingCAP University 在线视频课程,帮助大家快速熟悉 TiDB 原理、架构及最佳实践,点击以上链接即可轻松获取。

这将是一次集体智慧的碰撞,我们期待着与社区小伙伴一起创造无限可能!

无挑战,不 Geek!TiDB 性能挑战赛等你来战相关推荐

  1. 重构世界的真实,6万奖金的超分辨率图像性能挑战赛邀你来战!

    "看得更清楚"是人类基本需求之一,致力于"看清"的超分辨率算法应用场景广泛.比如,将低清的珍贵老纪录片或受损的经典影片修复,让老游戏告别马赛克迎来"第 ...

  2. 如何快速获得高并发编程经验?PCC性能挑战赛作品简介及源代码

    PCC 是 Performance Challenge Championship (性能挑战杯)的缩写,是高可用架构后花园会员在线上组织的一个活动,由于反响热烈,考虑到线下进行可以更好的加深对高并发编 ...

  3. 阿里中间件性能挑战赛启动,“开源”赛题独家剖析!

    4月26日,在2018云栖大会南京峰会上,阿里巴巴研究员林昊正式发布了第四届阿里中间件性能挑战赛.挑战赛以开源项目为背景,核心技术为Dubbo和RocketMQ,目的是通过大赛向技术爱好者们传达开源精 ...

  4. 华为云数据库TaurusDB性能挑战赛,50万奖金等你来拿!

    [摘要] 奔跑吧数据库!华为云TaurusDB性能挑战赛正式开始报名啦!50万大奖等你拿!不管你是大牛还是新手,华为云数据库都欢迎你来挑战,来这里,一决高下,大显身手,感受最火热的数据库技术氛围,开启 ...

  5. 决赛评委阵容重磅公布!6万大奖,超分辨率图像性能挑战赛最后召集令!

    由声网Agora.RTC开发者社区主办的超分辨率图像性能挑战赛,自7月28日在DataCastle数据城堡开放报名通道以来,受到了社会各界的广泛关注! 开赛一个多月以来,不少国内外高等院校.科研院所. ...

  6. 【TUG 话题探讨003】TUG 专家们如何做 TiDB 性能调优

    作者:luzizhuo 原文来源: https://tidb.net/blog/e25c02b8 9 月 16 日晚上 8 点,第三期技术话题探讨会在 TUG 群里如期而至,本次探讨会主要围绕 系统经 ...

  7. 2022第二届低代码极客挑战赛邀你来战!

    随着数字经济的加速深化,80%+的企业与机构对业务需求的敏捷响应.高效低成本的开发与运维有着强烈的需求,而在这其中,越来越多企业与机构的领导者在IT建设以及数字化转型探索中,会考虑利用低代码/零代码产 ...

  8. CVPR 2022|MLP才是无监督学习比监督学习迁移性能好的关键因素

    ©作者 | 王逸舟 单位 | 浙江大学 研究方向 | 计算机视觉,无监督学习 在这里和大家分享一下我们被 CVPR 2022 录用的工作"Revisiting the Transferabi ...

  9. 【冲刺冬奥速度】掌握这两个调优技巧,让TiDB性能提速千倍

    北京冬奥会上,运动健儿们激战正酣,他们正在用速度.力量.韧性诠释更快.更高.更强的奥林匹克精神,向他们致敬!其实,在0和1的计算机世界里,开发者和程序员们为了提升系统运行速度.最大化释放服务器性能,也 ...

最新文章

  1. TCP通过滑动窗口和拥塞窗口实现限流,能抵御ddos攻击吗
  2. 快照设计 电商系统_电商系统设计之购物车
  3. JavaScript取出字符串中括号里的内容
  4. python manage.py startapp app 时候报错No module named _sqlite3
  5. 无法连接到WMI提供程序。你没有权限或者该服务器无访问
  6. blender怎么移动骨骼_宝宝偏头怎么办?千万别错过这个矫正“黄金期”!
  7. springmvc+ueditor上传路径(个人备忘)
  8. 如何保证MQ消息队列的高可用
  9. 目前使用SAP的公司列表
  10. 【计算机视觉】图像检索
  11. 电商平台接入手机支付宝支付(服务商授权模式,可直接付款给卖家)
  12. Ciprian Manolescu 解决了三角解剖猜想
  13. 宽带连接错误 651
  14. 当大数据遇到保险:传统精算模型将被颠覆
  15. 删除在计算机的没用东西,怎么删除电脑中没用的东西?
  16. 电线线缆铜芯和铝芯有什么区别?哪个更好呢?
  17. 用java在正方体上贴图片_THREE.js为正方体的6个面贴上图片
  18. electron打开文件的几种实现方式
  19. matlab画三维图和等高线,matlab画三维等高线图
  20. 如何在个人微信中免费接入ChatGPT

热门文章

  1. 读万卷书不如行万里路?
  2. 如何向Vive Port中上传htc vive应用
  3. 5-10 列车调度 (25分) set OR 最长上升子序列
  4. 看电影的计算机配置,主要用来看电影,应该选什么配置的电脑?有人清楚吗?...
  5. matlab loadlibrary 没有头文件,Matlab调用Loadlibrary问题
  6. 网站专题页必做的10个策划技巧与方法
  7. LabVIEW CompactRIO 开发指南 3 选择CompactRIO编程模式
  8. ubuntu将知网中的CAJ文件格式转换成文字形式的PDF
  9. pandas python2.3版本_应该学习最新版本的 Python 3 还是旧版本的 Python 2?
  10. 摸鱼技巧:PanicButton一键隐藏页面