当前位置: 首页 > news >正文

数据库选型参考

嵌入式数据库

SQLite、Berkeley DB、Derby、H2、HSQL DB

  • SQLite: SQLite是一种非常流行的文件型数据库,它是一款轻量级、高性能、开源的嵌入式数据库引擎。SQLite采用C语言编写,可以在各种操作系统上运行,并且支持大多数标准SQL语法。
    SQLite 是 D.RichardHipp 用一个小型的C库开发的一种强有力的嵌入式关系数据库,虽然功能较 Berkeley DB(商业数据库)稍显逊色,但它简单易学、速度较快,同时提供了丰富的数据库接口,提供了对 SQL92 的大多数支持:支持多表和索引、事务、视图、触发和一系列的用户接口及驱动。
    SQLite则不得不依赖文件系统锁。它无法支持同时访问数据库的多个进程。 因此,SQLite并不是写密集型部署的首选。而且完全没有用户认证。然而,对于简单的查询,几乎没有什么并发性的查询,SQLite的性能是很高的,这得益于它的设计思想避免了将数据传递给其他进程的开销。

  • Berkeley DB是由美国Sleepycat Software公司开发的一套开放源代码的嵌入式数据库管理系统(已被Oracle收购),它为应用程序提供可伸缩的、高性能的、有事务保护功能的数据管理服务。
    Berkeley DB(BDB)是一个高效的嵌入式数据库编程库,C语言、C++、Java、Perl、Python、Tcl以及 其他很多语言都有其对应的API。Berkeley DB可以保存任意类型的键/值对(Key/Value Pair),而且可以为一个键保存多个数据。Berkeley DB支持让数千的并发线程同时操作数据库,支持最大256TB的数据,广泛用于各种操作系统,其中包括大多数类Unix操作系统、Windows操作系统 以及实时操作系统。

  • Apache Derby 可以说是 100% 由 Java 编写的一款数据库,以前名称为IBM Cloudscape, 是Apache软件基金会开发的关系型数据库管理系统(RDBMS),它的特点是可以嵌入到Java程序中,用于在线事务处理。它的磁盘空间占用率非常小: 3.5M左右。而且是开源免费的,非常小巧,核心部分derby.jar只有 2M!很多人可能觉得 Derby 不是很热门,但 Derby 已经开发了将近二十年!

  • H2 是一款纯java编写的另一款嵌入式数据库,它本身只是一个类库,即只有一个 jar 文件,可以直接嵌入到应用项目中,同时还提供了非常友好的基于 web 的数据库管理界面。
    它可以嵌入到Java应用程序中,也可以在客户端-服务器模式下运行。
    h2 作为嵌入式数据库的新秀,主要优势:超轻量级,可以支持内存模式,高效高速,能支持基本的全文搜索,同时与 mysql 数据库兼容性最强,一般使用场景最多的就是在开发环境上进行回归测试使用。
    网上有很多开发者拿它与 derby 做对比,称它与 mysql 数据库兼容性强,口碑较好。

在这里插入图片描述

  • HSQLDB(HyperSQL DataBase)是一个使用 Java 语言编写的开源关系型数据库,遵循自由的 BSD 协议。纯 Java 实现,jar 文件只有 1.5 MB 左右,支持 JRE 6 以上环境。基于对数据库理论和 SQL 标准的深入研究创建的原创产品;广泛支持 SQL: 2016 标准语法,包括大多数可选功能;很多开源和商业产品都内置了一个 HSQLDB 数据库,包括 Apache ManifoldCF、OpenOffice、LibreOffice、Kepler、JBoss、Volt DB、Mathematica、Jira、Confluence、TeamCity 等。HSQLDB 拥有 20 多年的开发历史,最初由 Thomas Mueller 创建,他也是另一个嵌入式数据库 H2 的创始人。

  • UnQLite是由 Symisc Systems公司出品的一个嵌入式C语言软件库,它实现了一个自包含、无服务器、零配置、事务化的NoSQL数据库引擎。UnQLite是一个文档存储数据库,类似于MongoDB、Redis、CouchDB等。同时,也是一个标准的Key/Value存储,与BerkeleyDB和LevelDB等类似。UnQLite是一个嵌入式NoSQL(键/值存储和文档存储)数据库引擎。不同于其他绝大多数NoSQL数据库,UnQLite没有一个独立的服务器进程。UnQLite直接读/写普通的磁盘文件。包含多个数据集的一个完整的数据库,存储在单一的磁盘文件中。数据库文件格式是跨平台的,可以在32位和64位系统或大端和小端架构之间,自由拷贝一个数据库。

  • esProc SPL:如果要为 Java 小微型应用提供数据处理和计算能力,还有一个更好的选择:esProc SPL。esProc SPL 一个开源的数据处理引擎,架构简单,集成方便,可持久化存储数据,有足够的计算能力,这些特点与 SQLite 类似。SPL 架构简单,不用配置服务、节点、集群,只要引入 SPL 的 Jar 包,就可以部署在 Java 环境中。SPL 提供了 JDBC 接口,可以方便地集成到 Java 应用中,简单的查询类似 SQL。

数据库服务器

PostgreSQL和MySQL的对比

MySQL是一个纯粹的关系型数据库,但PostgreSQL是一个对象关系型数据库或ORDBMS,具有表继承和函数重载等功能。SQL,即结构化查询语言,是PostgreSQL和MySQL中与关系型数据库管理系统交互的通用语言。

MySQL是用C/C++编写的,而Postgres是用C编写的。 MySQL不支持级联,而Postgres支持。
MySQL允许的索引类型是二进制搜索树,而Postgres支持许多这种索引类型,包括GIN和Hash。MySQL使用传输层安全(TLS)协议来保证安全,而Postgres使用SSL协议。
MySQL数据库不支持高级数据类型,但Postgres允许高级数据类型,包括用户定义的数据类型。
PostgreSQL的point-in-time recovery(PITR)是非常棒的特性,这是个灵活的高可用特性,提供了诸如针对失败恢复创建热备份以及快照与恢复的能力。

华为GaussDb

华为自研的数据库gaussdb的优势有:1、高性能;2、分布式架构;3、多模型支持;4、高可靠性;5、安全性;6、弹性计算能力;7、全球化支持;8、生态系统整合。

GaussDB和鲲鹏芯片,欧拉操作系统拥有更加紧密的合作关系,能够基于更底层的芯片架构,组网形态,系统兼容来进行性能,可靠性方面的优化。是其他友商的数据库系统难以具备的强大底座优势。

它同时也是华为研发资源投入最多,研究最深入的全自研数据库系统,在全球范围内拥有50+以上的博士天团,以及300+的内核研发人员,为打造业务最高标准的分布式数据库产品提供了持续动力。

GaussDB在华为云上拥有两种部署形态:集中式和分布式。其中集中式版本拥有开源生态,用户可以通过开源网站直接下载,该版本华为以完全开放的态度,支持跟业内更多伙伴合作,促成更加广阔的商务模式。作为国内唯一开源数据库,也是华为开源、开放、不LOCKIN单一厂商的最佳证明。

NoSQL

MongoDB: MongoDB是一种文档型数据库,它采用BSON(Binary JSON)格式存储数据,并且支持类似SQL的查询语言。MongoDB适用于数据量较大、需要高性能读写操作的场景,比如Web应用程序、日志管理等。

Redis: Redis是一种基于内存的数据存储系统,支持多种数据结构(包括字符串、哈希表、列表、集合等),并且具有高性能和可扩展性。Redis可以作为缓存、消息队列等多种用途。

CouchDB: CouchDB是一种基于文档的数据库,它以JSON格式存储数据,并且支持类似MapReduce的查询方式。CouchDB具有分布式特性,支持数据同步和复制,适用于需要数据可靠性和高可用性的场景。

LevelDB: LevelDB是Google开发的一种键值对存储数据库,采用C++语言编写,支持多种操作系统。LevelDB具有高性能和可靠性,适用于需要快速读写数据的场景,比如网络爬虫、日志分析等。

相关文章:

  • 数据分享|R语言生态学种群空间点格局分析:聚类泊松点过程对植物、蚂蚁巢穴分布数据可视化...
  • 【Linux】Linux环境基础开发工具使用
  • 多线程带来的的风险-线程安全
  • MySQL集群高可用架构之MMM
  • 设计模式-代理模式
  • 【python爬虫】—星巴克产品
  • 【C语言】指针经典笔试题(上)
  • [Linux入门]---git命令行的基本使用
  • pytorch生成CAM热力图-单张图像
  • Python实现简单的爬虫功能
  • CListCtrl设置只显示单列
  • RabbitMQ配置文件_修改RabbitMQ MQTT的1883端口
  • OJ练习第180题——颠倒二进制位
  • 我的创作纪念日
  • 多维时序 | MATLAB实现WOA-CNN-GRU-Attention多变量时间序列预测(SE注意力机制)
  • 怎么实现一个登录时需要输入验证码的功能
  • 【【萌新的FPGA学习之初识ZYNQ】】
  • 小程序从无到有教学教程-- 01.重置华为云服务器Huawei Cloud EulerOS 2.0版本并且设置安全组
  • MySQL数据库
  • 如何搭建专属的物联网私有云?需要考虑哪些因素?
  • 蔚来第三品牌萤火虫上市:对标宝马MINI,预期贡献10%销量
  • 著名电化学家、我国工业电化学奠基人之一郭鹤桐逝世
  • 【社论】地铁读书人也是一道城市风景
  • 南方将迎三轮降雨,两广旱区的“解渴雨”也要来了
  • 云南昆明市副市长戴惠明已任市委常委、秘书长
  • 女子伸腿阻止高铁关门等待同行人员,相关部门已介入调查