admin管理员组文章数量:1794759
主流数据库/国产数据库有哪些 如何适配国产数据库
主流数据库介绍 Relational DBMS
基于关系模型的数据库,关系模型折射现实世界中的实体关系,将现实世界中各种实体及实体之间的关系通过关系模型表达出来,最大特点就是事务的一致性。
Key-value Stores一种非关系数据库,它使用简单的键值方法来存储数据,具有极高的并发读写性能。
Document Stores一种非关系数据库,可以在海量的数据中快速的查询数据。通常数据表示为 JSON 文档,因为开发人员将其数据模型视为文档更为直观。
Time Series DBMS一种非关系数据库,主要用于指处理带时间标签(按照时间的顺序变化,即时间序列化)的数据,带时间标签的数据也称为时间序列数据。常用于分布式系统监控、物联网等。
Graph DBMS一种非关系数据库,是一个使用图结构进行语义查询的数据库,它使用节点、边和属性来表示和存储数据,主要处理现实世界复杂的关系网。
Search Engines是一类专门用于数据内容搜索的非关系数据库。
RDF Stores Wide Column Stores一种非关系数据库,它能很好地用于存储可收集的巨量数据。 它的架构使用持久的、稀疏的矩阵、多维度的映射(行值、列值和时间戳),采用表格式,意在实现大规模的可扩展性(超过PB规模)。
Multivalue DBMS是一种灵活的数据库,具有NoSQL和多维数据库的混合功能,支持和鼓励使用可以采用值列表的属性的功能,而不是所有属性都是单值的。
Spatial DBMS用于GIS数据库的存储。
The top 5 open source systems 国产数据库介绍 主流数据库汇总 关系型适配方案基于 Mybatis 框架的多数据库类型的支持:
-
不同的 statementId
导致接口 Mapper 的方法大量增加,接口庞大而臃肿
-
不同的 mapper 文件
导致需要维护多份通用的sql,因为每份 mapper 文件都需要实现所有statement
-
每个 statement 添加属性 databaseId
mybatis 启动的时候,会侦测当前使用的数据库,如果是 Oracle(name=“Oracle”) 的话,对于拥有相同 statementId的语句,则会选择执行带有 databaseId=“oracle” 的语句
同一套方案适配不同的数据库时,存在各种兼容性问题。为了更好的适配国产数据库,需要做如下处理:
-
禁用特性
外键约束、触发器、存储过程、视图、自定义函数、全文索引、空间索引、非 UTF8 字符集等
-
编码兼容性
针对特殊的SQL语法,采用类继承 or databaseId 的方案进行适配解决
-
系统初始化
由于数据库的兼容性问题,系统初始化的 SQL 脚本需要针对不同数据库提供相应的初始化脚本
版权声明:本文标题:主流数据库国产数据库有哪些 如何适配国产数据库 内容由林淑君副主任自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.xiehuijuan.com/baike/1686745931a97687.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论