首页 > 编程知识 正文

sqlite创建数据库,mysql和sqlite区别

时间:2023-05-06 20:37:47 阅读:44883 作者:3713

介绍一个叫PoloDB的个人作品。 一个非常轻量级的NoSQL数据库,具有类似于MongoDB的API,它以一些特性为中心:

轻量级

没有像MySQL这样的独立过程。 可以编译为静态库或动态库,并将其集成到APP应用程序中,就像SQLite一样。

可以用很少的资源启动。 需要功能强大的计算机,以便分发到用户的设备,如MongoDB。 一般来说,用户的设备不如服务器强大。 例如,尝试在普通用户的PC或手机上运行重量级数据库几乎是不可能的。 如果客户端需要数据库,则需要这样轻量级的数据库。

磁盘上只有一个文件,易于传输、分发和备份。 不需要重新包装、导出。

可移植性

PoloDB是用Rust编写的,可以在大多数平台上运行。 目前,我正在支持X86上的macOS、Linux和Windows。 此后,还计划支持移动平台(iOS/Android )。 像草莓馅饼、龙芯、M1,我觉得没问题。

PoloDB还支持非常丰富的语言绑定。 C/C和Rust可以直接使用。 Python和Node.js现在可以使用PoloDB,并开发了匹配层。 今后可以用越来越多的语言访问。

柔软性

NoSQL数据库可以像MongoDB一样使用,而且很灵活。 所有数据的读写都是通过JSON进行的。 不需要创建架构,打开数据库即可直接插入数据。

如果当前的APP应用程序需要一个迭代非常快、非常灵活、能够快速响应各种需求的数据库,则NoSQL (如PoloDB )就更好了。

功能齐全

虽说是轻量级数据库,但一个数据库中应该有的功能,PoloDB也不会掉下来。 例如,目前支持原子提交(事务)。 它还将逐渐提供数据库中应该存在的功能,如数据索引。 随后,API的扩展增加了越来越多的功能,包括数据加密、数据备份和数据处理,值得想象。 当然,为了保持数据库本身重量轻,这些扩展是可选的。

虽然现在看到很多人,但是很多APP喜欢将数据存储在JSON文件中。 如果有PoloDB的话,可能会更优雅。 不仅可以访问数据库,还可以防止将大量数据一口气读取到内存中。 PoloDB在性能方面有很大的优势,因为它可以在自己的结构中只读取部分必需的数据。 书写也是一样的。

开源

现在这是我业余的个人项目,我都是在下班时间写的。 代码是开源的,在Github上面。 如果大家喜欢,可以自己下载,查看review中的实现细节。 我觉得PoloDB还是一个相当有趣的项目,所以我也会和大家分享源代码。 最重要的是,我还是想和大家交流。

当然,这是我几个月前开始开发的项目,现在还处于初期阶段,但已经几乎可以跑了。 这个项目看起来合理轻便,但里面实现的细节并不简单。 今后有非常多的工作。 例如,编写说明其工作原理的文档,写很多严格的单元测试,适合各种平台和语言。 欢迎大家尝试。 列举issue和MR。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。