当前位置:首页 > 科技  > 知识百科

微信全平台终端数据库 WCDB 全新版本开源,新增支持 C++ 和 Kotlin

来源: 责编: 时间:2024-04-09 17:17:40 156观看
导读 4 月 9 日消息,WCDB 是微信团队开源的一款基于 SQLite 的终端数据库。自 2017 年 6 月开源以来,已经推出了十多个版本。然而,作为国内乃至全球范围内使用数据库最频繁的 App,微信内部涉及上百种不同业务的数据库,

4 月 9 日消息,WCDB 是微信团队开源的一款基于 SQLite 的终端数据库。自 2017 年 6 月开源以来,已经推出了十多个版本。cne28资讯网——每日最新资讯28at.com

然而,作为国内乃至全球范围内使用数据库最频繁的 App,微信内部涉及上百种不同业务的数据库,存储的消息条数可达百万乃至千万级别。这种庞大的数据量和日益丰富的应用场景,给 WCDB 带来了不断更新的需求和挑战,原有的代码框架逐渐难以应对。cne28资讯网——每日最新资讯28at.com

因此,自 2019 年起,微信决定放弃接口的向后兼容性,全力打造一个更加强大的新版 WCDB。经过多次迭代,WCDB 的接口层和核心逻辑层已经得到了全面改进,同时也积累了许多新功能。cne28资讯网——每日最新资讯28at.com

如今,微信宣布将该重大升级的新版本 WCDB 进行开源,主要变化及更新包括:cne28资讯网——每日最新资讯28at.com

更丰富的开发语言支持:新增支持了 C++,完整支持了 Java 和 Kotlin 语言的 ORM,覆盖更多终端平台;cne28资讯网——每日最新资讯28at.com

更强大的 SQL 表达能力:对 Winq 进行了重写、强化等;cne28资讯网——每日最新资讯28at.com

更安全的数据存储能力:全新的数据备份方案、修复方案等;cne28资讯网——每日最新资讯28at.com

更灵活的数据扩展能力:数据迁移、数据压缩等;cne28资讯网——每日最新资讯28at.com

更细致的性能优化能力:FTS5 优化、可中断事务等。cne28资讯网——每日最新资讯28at.com

据介绍,WCDB 1.0 版本支持 Objective-C、Swift、Java 三种开发语言,但是三种语言的 WCDB 除了共用同一个版本的 SQLite 和共用同一套备份修复逻辑,其他代码都是独立开发的。cne28资讯网——每日最新资讯28at.com

随着 WCDB 不断迭代,WCDB 的很多新能力都是在 ObjC 版本上开发完成和上线验证,Swift 和 Java 版本基本处于停止迭代的状态,他们之间的差异也越来越大。在理想的状态下,不同语言版本的 WCDB 应该拥有同样的能力,但是如果把 ObjC 版本的新逻辑重新在 Swift 和 Java 上实现一遍,不仅工作量大,还容易出错,需要再次上线验证,不太现实。cne28资讯网——每日最新资讯28at.com

幸运的是,ObjC 版本的 WCDB 的核心逻辑都是用 C++ 实现的,ObjC 只是用来实现接口层的逻辑。很多支持多种开发语言的库都是使用 C++ 语言来实现核心逻辑,其他语言只是用来实现接口层,比如很热门的客户端 NoSQL 数据库组件 realmDB 就是如此。WCDB 也可以按照这个思路来设计,这样 ObjC 版本的 WCDB 只需小幅调整,将核心逻辑完全改用 C++ 来实现,Swift 和 Java 通过桥接方法来接入 C++ 核心逻辑。cne28资讯网——每日最新资讯28at.com

此外,为了充分支持微信各端不同场景的数据库开发需求,WCDB 还扩展支持了 C++ 和 Kotlin,这样就完整覆盖了现在终端开发的主流语言。cne28资讯网——每日最新资讯28at.com

cne28资讯网——每日最新资讯28at.com

在接口层面,新版 WCDB 全面支持了 C++、Java、Kotlin、Swift 和 ObjC 这五种主要的终端开发语言,覆盖了 Android、iOS、Windows 和 Linux 这四大终端平台。同时,微信还对 Winq 进行了重写和强化,使开发者能够在各种语言中使用原生语法编写任意 SQL。cne28资讯网——每日最新资讯28at.com

在功能层面,新版 WCDB 推出了全新的数据备份和修复方案,提升了数据修复率,同时将数据备份的性能消耗降至可忽略不计。cne28资讯网——每日最新资讯28at.com

此外,微信还重点推出了数据迁移和数据压缩这两个新功能,让开发者通过简单的配置,就能处理复杂业务中的数据过度聚集和数据过度膨胀这两大难题。新版 WCDB 还推出了 FTS5 优化和可中断事务等新特性,使开发者在特定场景下可以实现更极致的性能优化。cne28资讯网——每日最新资讯28at.com

新版 WCDB 已在 Github 开源,附项目地址:cne28资讯网——每日最新资讯28at.com

https://github.com/Tencent/wcdbcne28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-119-82193-0.html微信全平台终端数据库 WCDB 全新版本开源,新增支持 C++ 和 Kotlin

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: 微软承诺 Win10 Win11 未来版本支持用户定制锁屏小部件内容

下一篇: 无需任何修改,不符合升级条件设备安装微软 Win11 LTSC 的“小技巧”

标签:
  • 热门焦点
Top