TiDB Architecture Team:挑战数据库的本质难题 | PingCAP 招聘季「终于解决」

TiDB Architecture Team:挑战数据库的本质难题 | PingCAP 招聘季「终于解决」互联网时代,从衣食住行到社交娱乐,几乎所有的业务都离不开数据库服务的支撑,可以说关系数据库是信息社会中最无可替代的基础设施。作为一个基石组件,数据库系统之所以有重要的价值,其本质的原因在于数据库系统…

TiDB Architecture Team:挑战数据库的本质难题 | PingCAP 招聘季

互联网时代,从衣食住行到社交娱乐,几乎所有的业务都离不开数据库服务的支撑,可以说关系数据库是信息社会中最无可替代的基础设施。作为一个基石组件,数据库系统之所以有重要的价值,其本质的原因在于数据库系统提供事务支持。

数据库的本质其实就是做三件事:转账,记账,订票。但是天下没有免费的午餐,数据库系统实现之难,也在于实现可靠而高性能的事务引擎。

实现数据库的事务系统,也就意味着郑重承诺,我们系统能够支持:

原子性:转账不能部分成功部分失败; 一致性:系统约束必须保持; 隔离性:并发事务需要保证正确处理; 持久性:数据不能丢。 另外,系统的处理能力、吞吐量,或者说系统的运行成本,都直接决定于事务引擎处理速度和能力。

简而言之,数据库系统需要提供事务保证,而且要高效地处理并发事务。更大的挑战在于,如何在基于不可靠硬件的分布式环境下,实现可靠而高效的分布式事务,提供更强高效的 OLTP 处理能力。

我们在做什么?

TiDB 从一开始就定位于分布式的关系数据库,TiDB 架构组一直致力于 TiDB 事务引擎的架构设计和研发工作,不断解决分布式事务的各种挑战和难题,提升 TiDB 稳定性和 OLTP 处理能力,其中包括但不限于:

  1. 实现完整的基于 Percolator 论文的分布式事务引擎,确保分布式语境下事务原子性和一致性。将 TiDB、PD、TiKV 等分布式组件有效整合,实现基本的分布式事务原语,即两阶段提交的各个基本组成部分,对上层提供完整的事务语义接口;

  2. 并发事务的协调和处理,确保快照读取(Snapshot Isolation)的事务隔离级别。支持数据多版本(MVCC),实现数据历史版本的控制和清理;

  3. 协调事务处理资源使用,提升系统吞吐量和资源利用率,支持量级更大的事务处理能力(GB 级别)和并发控制,提供更佳的资源调度策略;

  4. 提供不同的加锁模型适配不同的业务场景,同时支持乐观锁和悲观锁的加锁模型,实现高效的优先级评估,等待唤醒,分布式死锁检测等机制;

  5. 尝试不同的提交策略,获取更好的事务处理性能,实现组提交、并行提交、一阶段提交等优化策略,提升系统响应能力和吞吐量,降低延迟;

  6. 处理分布式环境的各种异常(操作系统,磁盘,网络等),保障事务引擎的正确性和性能,实现分布式的容灾测试和异常测试,覆盖分布式环境下所有可能的异常分支,确保在各种异常情况下,分布式事务的正确推进和执行。

除此之外,架构组致力于探索新的事务和存储技术,包括但不限于:

  1. 更强大的日志模块,在实现分布式一致性协议,提供持久化保证的基础上,实现更好的性能和吞吐能力;

  2. 更强大 TiDB OLTP 处理能力,更好的复用执行计划,支持编译、向量化等执行方式,更友好的 cache 使用和更佳的指令执行效率等;

  3. 更前沿的存储技术,新的 lsm 存储引擎,新的索引结构、缓存策略和算法、新的冻结和合并处理机制等,提供更好的读写性能,以及更优的内存,磁盘空间利用率。

期待你的加入!

如果你对下面描述的任何一项,心有戚戚焉——

  • 对分布式技术充满热情,对于 CAP 理论、一致性协议有独到的理解,热衷于解决相关的挑战和难题;

  • 对于事务处理有较深的认识,对于传统数据库的事务、存储引擎实现有深入探究,对于事务异常,并发控制,隔离级别等有独到的理解;

  • 有存储引擎工作的相关经验,对于索引结构,缓存策略,文件系统等有实践经历;

  • 对于分布式执行,有创新的想法,深谙 OLTP 性能调优之道;

  • 对于操作系统,数据库有浓厚的兴趣,期待加入 NewSQL 的浪潮。

**那么, 欢迎加入 TiDB Architecture Team!和我们一起挑战在不可靠的硬件环境下实现可靠的数据库服务的终极难题,打造新一代的海量数据存储系统,实现更低成本更高性能的分布式关系数据库服务。**这里是一个数据库技术和分布式技术的爱好者聚集地,高效快乐的工作的同时,你可以收获满满的个人成长,在基础核心技术领域遨游,尽情放飞想象力。

加入我们吧!

我们认为优秀的工程师或多或少有以下共同特质:

· A Quick Learner
· A- n Earnest Curiosity
· Faith in Open Source
· Self-driven
· Get Things Done

如果你符合以上特质,欢迎进入招聘页面查看目前开放的工作机会:

https://www.pingcap.com/recruit-cn/join/#positions

简历投递通道:hire@pingcap.com

实习生:公司的各项福利和学习资源对实习生全面开放,更重要的是实习生还未毕业就有机会接触工业级项目,而且实习期间表现优异者将有机会获得校招绿色通道特权。针对实习时间并不充裕的小伙伴,你可以先通过 Talent Plan 丰富基础知识(https://university.pingcap.com/talent-plan/),也可以通过参与 TiDB 开源社区获得更多实践机会!

伯乐推荐:如果你身边有符合以上要求的小伙伴,也可以找我们聊一聊,推荐成功就有机会获得伯乐推荐奖励。伯乐推荐邮件格式:[伯乐推荐] 候选人姓名-职位名称-推荐人姓名-推荐人手机号。 TiDB Architecture Team:挑战数据库的本质难题 | PingCAP 招聘季「终于解决」

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/9827.html

(0)
上一篇 2023-01-31
下一篇 2023-01-31

相关推荐

  • Python概述:一门强大的编程语言

    Python概述:一门强大的编程语言Python是一种高级编程语言,由Guido van Rossum于1989年底发明。Python是目前最流行的编程语言之一,因为它易学易用,同时也非常强大。Python应用广泛,涵盖了数据分析、人工智能、网络开发、科学计算、自动化测试、游戏开发等领域。

    2024-04-05
    23
  • Bigkey问题的解决思路与方式探索

    Bigkey问题的解决思路与方式探索在Redis运维过程中,由于bigkey的存在,会影响业务程序的响应速度,严重的还会造成可用性损失,DBA也一直和业务开发方强调bigkey的规避方法以及危害

    2023-06-16
    92
  • plsql字段约束[通俗易懂]

    plsql字段约束[通俗易懂]第五章 字段约束 初识约束 约束是数据库用来确保数据满足业务规则的手段,对数据做的条件限制。 约束的类型 1. 主键约束(PRIMARY KEY) 2. 唯一性约束(UNIQUE) 3. 非空约束(N

    2023-02-05
    111
  • DataX 离线跨网场景的实施配置「终于解决」

    DataX 离线跨网场景的实施配置「终于解决」配置仅限于跨不同网情况,网络互通情况方案和配置会更简单一点 内网A:MySql数据转换成Csv { "job": { "setting": { "sp

    2023-02-04
    108
  • hw华为p40_华为旗舰手机

    hw华为p40_华为旗舰手机华为P40系列搭载HMS的应用好用吗?想买P40手机,但是不太懂手机这方面,有没有用过P40系列搭载HMS应用的?体验怎么样?有没有什么比较亮点的功能?另外华为应用市场安全不,我之前用的手机在市场下…

    2023-03-06
    108
  • flink sql实时计算_flink 编程

    flink sql实时计算_flink 编程一、理想与现实 Apache Flink 是一个分布式流批一体化的开源平台。Flink 的核心是一个提供数据分发、通信以及自动容错的流计算引擎。Flink 在流计算之上构建批处理,并且原生的支持迭代计

    2023-01-31
    114
  • 数据库连接池的原理?连接池使用什么数据结构实现?实现连接池?

    数据库连接池的原理?连接池使用什么数据结构实现?实现连接池?早期我们怎么进行数据库操作呢? 1、原理:一般来说,Java应用程序访问数据库的过程是: 加载数据库驱动程序; 通过jdbc建立数据库连接; 访问数据库,执行SQL语句; 断开数据库连接。 2、代码

    2023-02-11
    100
  • 快速整明白Redis中的整数集合到底是个啥「建议收藏」

    快速整明白Redis中的整数集合到底是个啥「建议收藏」整数集合简介 整数集合(intset)是Redis集合数据类型的内部编码之一,当集合数据类型中的元素都是整数并且元素数量较少的时候,Redis就使用整数集合作为内部编码。 整数集合(intset)中可

    2023-05-09
    96

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注