Go和TiDB创造另一个mongodb-李霞
1.32 MB
24 页
0 评论
语言 | 格式 | 评分 |
---|---|---|
中文(简体) | .pdf | 3 |
摘要 | ||
文档介绍了MongoDB的优缺点,并探讨了如何利用Go和TiDB创建另一个类似MongoDB的系统。MongoDB具有非结构化存储、灵活的schemaless设计、高可用性和可扩展性,但在事务支持和SQL支持方面存在不足。TiDB作为PingCAP公司的一款开源数据库,支持MySQL协议、异步schema变更和多种join算法。Gonzo项目尝试模仿MongoDB的功能,分别使用内存引擎和TiKV引擎实现基本操作,并利用TiDB的事务接口进行数据处理。 | ||
AI总结 | ||
以下是文档内容的简要总结:
本文档介绍了PingCAP团队如何利用Go语言和TiDB数据库构建一个类似于MongoDB的系统,其中TiDB与TiKV结合,以弥补MongoDB在ACID事务、SQL支持和集群同步方面的不足。
### MongoDB特点:
- **优点**:支持非结构化存储(Schema-less);灵活性高,查询速度快;支持高可用性(Replica Set)、扩展性和容错能力。
- **缺点**:不全面支持ACID事务;不支持SQL;集群同步占用带宽较大。
### TiDB和TiKV:
- **TiDB**:兼容MySQL协议,适合从MySQL迁移。支持异步Schema变更,灵活性好;支持Hash Join技术,小表存储在内存,大表分批处理;计划支持Merge Sort Join等算法。
- **TiKV**:TiDB的存储引擎,支持事务接口,数据直接从TiKV获取,和TiDB协同工作。
### 演讲者介绍:
- **李霞**:现任PingCAP TiDB开发与审核负责人,前京东云存储和弹性块存储项目开发成员。
- 联系方式:微博 @紫沐夏_go,邮箱:lixia@pingcap.com。
### 总结:
TiDB结合TiKV,通过兼容MySQL协议和支持高级事务处理,解决了MongoDB在事务和SQL支持上的不足,是一种高效的替代方案。 |
P1
P2
P3
P4
P5
P6
P7
P8
P9
P10
P11
P12
下载文档到本地,方便使用
- 可预览页数已用完,剩余
12 页请下载阅读 -
文档评分