oceanbase和tidb有以下区别:
1. 架构不同:OceanBase采用分布式共享架构(Distributed Shared Architecture,DSA),而TiDB采用分布式事务架构(Distributed Transaction Architecture,DTA)。DSA将数据分片存储在不同的节点上,每个节点可以读取和修改整个数据集,而DTA则采用分布式事务来保证数据的一致性和完整性。
2. 存储引擎不同:OceanBase使用自研的分布式存储引擎OceanBase Storage,而TiDB使用TiKV作为分布式存储引擎。OceanBase Storage支持多种存储模式,包括行存储、列存储、内存存储等,而TiKV则使用了基于RocksDB的分布式事务存储引擎。
3. 开发语言不同:OceanBase使用C++语言进行开发,而TiDB使用Go语言进行开发。C++语言的优势在于性能和内存管理,而Go语言则更适合于构建分布式应用和网络服务。
4. 社区规模不同:TiDB的社区在国内和国际上都非常活跃,拥有很多用户和开发者,而OceanBase则相对较小。这意味着TiDB社区能够提供更多的技术支持和资源,吸引更多的用户和开发者,但是也可能会导致开发进度较慢和缺乏特定的功能。