向蟑螂生命力致敬的关联数据库,CockroachDB2.0效能大跃进

CockroachDB
标榜极强健的关联式数据库 CockroachDB来到了2.0版本,更新重点放在效能提升。官方表示,CockroachDB 2.0比起1.1,在三节点完全复制的CockroachDB丛集交易吞吐量提升了62%来到16,150 tpmC,且延迟降低了82%,整体回应时间提升了544%。
CockroachDB的三位创办人皆来自Google,在创立CockroachDB前,Spencer Kimball以及Peter Mattis是Google档案系统团队的关键成员,而Ben Darnell则是Google阅读器团队的核心成员。Spencer Kimball在2014年写了初版的CockroachDB并在GitHub上开源,2015年正式成立公司,并获得包括Google创投在内的多家创投公司625万美元投资。
CockroachDB是依照Google Spanner数据库白皮书打造的开源数据库,因此常被拿来互相比较,CockroachDB具备弹性极大的可扩展性,可以在笔记型电脑上运作,也可以扩展到数千节点服务器上运作。其名称的由来,与数据库特性有关,CockroachDB被设计来在云端跨区运作并拥有极高的容错能力,被形容为几乎不可能失效的数据库服务,即使数台数据库服务器或是某个资料中心离线,CockroachDB也能维持服务。
官方表示,他们耗费了极多的资源在保证数据库的正确性以及稳定性,但在过去6个月中,他们把焦点放在效能上,并以数据证明,数据库服务除了具备正确性以及稳定性还能同时具备效能。CockroachDB优先将效能改进重点放在线上交易处理(Online Transaction Processing,OLTP)。
在CockroachDB的全复制三个节点上执行TPC-C效能量测,2.0版本在1,300个仓储时,达到最大吞吐量16,150tpmC,与1.1版本的850个仓储的9,983tpmC最大吞吐量相比,提升了62%。
在延迟方面,CockroachDB比较三个节点在相同工作负载的p50、p95以及p99延迟,由于1.1版本在多于850个仓储时,延迟会戏剧性的飙高,因此2.0与1.1版本的延迟比较,以850个仓储作为比较基础。在平均延迟p50时,1.1版本的延迟为201ms而2.0为67ms,p95的情况1.1为671ms而2.0为151ms,在线上服务受关注的长尾延迟指标p99,1.1为1,140ms,2.0版本只有210ms。
以相同负载来比较,CockroachDB 2.0比起1.1,最佳情况的延迟降低了82%,而在p99的情况下,回应时间提升了544%。官方表示,CockroachDB 2.0将在几周内释出GA版,届时将还会有更进一步的测试。
