项目的野心还是比较大的,希望实现一个分布式的 SQL 数据库,目前开源了 SQL Layer ,大部分兼容 MySQL 的语法。
TiDB is a distributed SQL database. Inspired by the design of Google F1, TiDB supports the best features of both traditional RDBMS and NoSQL.
Written in Go.
欢迎 Star 和 Fork :)
1
Comdex 2015-09-06 12:38:31 +08:00
用 go 写的数据库不少哇
|
2
zhicheng 2015-09-06 12:40:02 +08:00
|
3
unique 2015-09-06 12:43:55 +08:00 via Android
star~
|
4
1000copy 2015-09-06 13:17:00 +08:00
good . stared .
|
5
shenfeng 2015-09-06 13:17:20 +08:00 1
持续关注
|
6
1000copy 2015-09-06 13:17:56 +08:00
非常高兴看到这样基础的工作的重新创造。鼓掌支持。
|
7
archxm 2015-09-06 13:40:05 +08:00
你老板知道么?
|
8
alsotang 2015-09-06 13:43:20 +08:00
这个。。好屌的感觉。。
|
11
Andiry 2015-09-06 14:28:01 +08:00
这个项目比起现有的其他分布式 DB 优势在哪里? performance ? scalability ?
|
12
c4pt0r OP @Andiry 目前的分布式 DB ,一是没有跨行事务,二是几乎没有 SQL 的支持。而 TiDB 的目标就是这两点。至少目前没有一个开源的分布式数据库搞定了,所以就决定自己搞了。
至于 scalability 大家解决的思路都差不多; replication 通过 Paxos / Raft 搞定。 |
13
IwfWcf 2015-09-06 14:38:22 +08:00
有更详细的架构文档吗?和 Google 出来的员工模仿 Spanner 搞的 CockroachDB 相比怎么样?
|
14
c4pt0r OP @IwfWcf 我们会持续的更新的,包括文档,其实思路和 CockroachDB 比较接近,但是我们会花更多精力实现 Google 的 F1 论文的内容(也就是 SQL layer )目前我们底层的分布式事务 KV 第一阶段会基于 Google 的 Percolator 来做。 CDB 更偏向 Spanner 的设计。
[1] F1: http://research.google.com/pubs/pub41344.html [2] Percolator: http://research.google.com/pubs/pub36726.html |
15
ahjdzx 2015-09-06 15:46:05 +08:00
发布挺快的。
|
16
husinhu 2015-09-06 16:22:21 +08:00
之前看到一个牛人的开源 NewSQL : https://github.com/codefollower/Lealone 楼主如何评价
|
17
loading 2015-09-06 16:42:30 +08:00 via iPhone
好牛~
|
21
c4pt0r OP @husinhu 很牛逼啊, zhh 的作品。
代码我还没有自习读过,但是看 zhh 平时的风格,应该是比较偏向 Cassandra 然后加上了自己的分布式事务支持,听说打算发论文,希望有机会能读一下。 我们的数据库希望是严格的实现 Google F1 和 Spanner 的论文。 |
24
c4pt0r OP @Comdex 其实在一个大型的分布式系统上, java gc 对于整个系统的吞吐影响不大。而且现代 jvm 的 gc 已经还算比较牛逼了。
|
25
IwfWcf 2015-09-06 17:20:39 +08:00
@c4pt0r Percolator 的事务实现简单很多,但感觉性能上会差很多,毕竟 Percolator 主要是用于批处理,对延时不是那么敏感。你们的实现会有这个问题吗?
|
26
janxin 2015-09-06 17:22:56 +08:00
点个赞,已 star
|
28
husinhu 2015-09-06 20:27:34 +08:00
@c4pt0r
@Comdex 很巧,那位作者的微博也作出了评价 回复 @netroby: 每隔 3 年就有一个语言会得到追捧,咱这类码农圈的老人早就熟悉和厌倦这种玩法了,留给年轻人玩吧。想想我还能做几年技术?少则 5 年,多则 15 年,时间有限,找点有意思的未解的问题去做做,说不定还能拉近跟图灵奖的距离,俺是有追求的人。:) @zhh-2015 我有考虑过用 Rust 、 Golang 这些新语言去重新实现一个数据库的,这些新语言还没有形成一个生态,很多还是空白,新语言的开发者和追随者都会希望多一些这类语言的杀手级应用,所以相对 Java/C++这类成熟语言会更容易受到关注。但是我认为数据库已经是个老领域了,专注解决一些新问题或难题会更有意义一些。 |
30
qq12365411 2015-09-07 09:54:33 +08:00
给你点个赞
|
31
c4pt0r OP @IwfWcf Percolator 其实事务模型很简单,就是一个 2PC 加上了一个二级锁的优化,同时通过中心授时服务器来分配全局递增的事务 ID 。这个模型的优点就是实现简单,在单个机房内部性能尚可,作为一个阶段性的目标还算可以,而且我认为分布式事务基本都是 2PC 的变种。加上现在 TiDB 的 SQL 层和存储层是彻底分离的,所以未来我有计划尝试新的模型,比如 CockroachDB 的 HLC ,或者其他的什么好玩的东西。
|
33
smalldirector 2015-09-07 12:32:49 +08:00
已 start ,最近公司也再搞分布式事物的东西,我们是基于 cassandra 搞的
|
34
morefreeze 2015-09-07 12:42:48 +08:00
膜拜老大
|
35
everxu 2015-09-07 13:29:30 +08:00
写数据库的都好牛逼
|
37
comzyh 2016-09-06 23:33:10 +08:00
听楼主讲了,感觉很有前途~
|
38
shaoyikai 2017-06-29 09:35:08 +08:00
这个东西要是做出来了就太棒了!帮助了整个行业提升了效率,划时代的产品。
|
40
tedcon 2018-04-11 15:34:21 +08:00
无意间翻到,PingCap 真的是风生水起啊
|
43
c4pt0r OP 一转眼四年过去了
|
44
anjiannian 2019-09-09 14:51:38 +08:00
@c4pt0r 今天你们员工来我们工作讲产品,想起来你们之前在 V2EX 发过帖,四年,变得这么牛逼了,顺祝商祺
|
45
c4pt0r OP @anjiannian 谢谢
|