网站首页 > 技术文章 正文
不是每一款数据库都能全面兼容Oracle,就像不是所有数据库都可以被称之为K-DB。
一般数据库能做到的SQL标准和函数上兼容Oracle,而K-DB则能实现更多,在数据库体系架构、集群方式、数据库对象、函数与存储过程、数据库运维工具、管理与调优方法以及OCI 等方面都全面兼容Oracle。
限于文章篇幅,本文先从体系架构、逻辑结构等八个方面详细阐述K-DB是如何实现对Oracle(以Oracle 11g为主)的全面兼容。如需了解更多详情,请点击“阅读原文”浏览《K-DB全面兼容Oracle技术白皮书》。
体系架构
从下图体系架构对比可以看出,K-DB在数据库进程的管理模式、内存管理模式、REDO/UNDO/ARCHIVE日志管理模式、备份恢复方式、基于共享存储的Active-Active集群等方面,有着跟Oracle类似的实现方式,同时具备了Oracle数据库提供的诸如RAC、ASM、严格行级锁、MVCC等企业级复杂功能。
逻辑结构
K-DB提供了典型的数据库(Database)、表空间(Tablespace)、段(Segment)、区(Extent)、数据块(DB Block)的逻辑结构,以及逻辑结构与物理数据文件的对应关系,也都跟Oracle类似。
数据对象
K-DB支持的数据库对象(Object)主要包括:表(Table)、索引(Index)、视图(View)、Sequence、Synonym、触发器(Trigger)、存储过程、权限管理、函数(Function)、Package等,不仅如此在用户需要的情况下,K-DB还支持基于用户创建的函数和组件。
数据类型
K-DB支持Oracle的字符串类型、数字类型、日期类型、LOB等所有类型,也支持ANSI标准类型。
SQL支持
K-DB不仅支持 ANSI标准 SQL语法,还支持 Oracle非标准语法,从而实现了对于原有应用的方便迁移,提升了用户的便利性。
函数
K-DB支持 200多个内建函数,并与 Oracle函数名称保持一致,包括:Math Function、String Function、DATE Function、Compare Function、Convert Function、Encode/Decode Function、Large Object Function、Analyze Function等,从而提升了用户的使用便利性。
这里只对Math Function做展示,更多详情可下载完整白皮书了解。
数据库工具
K-DB提供全面的数据库自动化工具,包括管理工具kdAdmin、导出/导入工具kdExport/kdImport、迁移工具kdMigrator、快速装载工具kdLoader、调优工具等,极大方便了开发人员和管理员进行数据库开发和运维管理。
备份与恢复
K-DB支持多种备份与恢复功能,包括表空间级别的在线备份与恢复功能、基于“RMGR”工具的增量备份功能等。从而保证了 DBMS的稳定运行。
相同中的不同
除了以上说的,K-DB在架构用语、权限控制、Schema管理、JOB Scheduler、优化器、集群方式等也能全面兼容Oracle。
如需了解更多详情,请点击“阅读原文”浏览《K-DB全面兼容Oracle技术白皮书》。
说了这么多相同,其实,K-DB全面兼容Oracle数据库的同时,也有其自身的特性,比如:
采用Multi-Process、Multi-Thread架构,同时进程数量轻量化处理,整合集成管理进程,最终实现比Multi-Process更高效的资源利用;
多节点并行恢复机制,实现在因维护或故障需要而暂时关闭节点再重启时,K-DB支持在多个节点中同时执行恢复操作,大幅缩短恢复大量数据的时间;
新增异步I/O(AIO)功能,在Thread Level中将收集Dirty(已修改的)Block的操作和写入磁盘的操作区分为Gather Thread和异步 I/O Thread,从而有效的执行异步I/O。
K-DB数据库和Oracle的全面兼容,能够最小限度降低迁移过程中程序的修改量,通过系统化工具主动地识别与诊断,解决数据库各层面兼容性问题。而且,K-DB的操作命令和界面使用上与Oracle相近, DBA在Oracle上积累的技术经验仍然可以应用于K-DB,操作不需要做出太大改变。
其实,K-DB的特点还有很多,将在后续的文章中继续讨论KRAC功能如何实现故障下业务的快速恢复、如何做到全自动一键迁移等,敬请期待。
来源:浪潮HPC官方微信(公众号:浪潮HPC)更多精彩,敬请关注!
猜你喜欢
- 2024-11-05 GUI(图形界面)技术选型 gui界面画图
- 2024-11-05 带gui界面的mybatis代码生成工具-spring boot 手脚架
- 2024-11-05 使用xmanager工具进行oracle安装时,界面内部无法使用鼠标的问题
- 2024-11-05 VirtualBox 7.1 Beta发布 刷新图形用户界面 支持 Wayland 剪贴板共享
- 2024-11-05 周日福利!如何一步一步构建Oracle高可用环境
- 2024-11-05 Oracle OAC系列:快速构建可视化的方法
- 2024-11-05 甲骨文推出自治操作系统Oracle Autonomous Linux
- 2024-11-05 Oracle为企业提供个性化数字化助手
- 2024-11-05 swingbench压测Oracle小记 oracle数据库压测工具
- 2024-11-05 工具-一个数据库网页可视化开源的代码
你 发表评论:
欢迎- 620℃几个Oracle空值处理函数 oracle处理null值的函数
- 612℃Oracle分析函数之Lag和Lead()使用
- 601℃0497-如何将Kerberos的CDH6.1从Oracle JDK 1.8迁移至OpenJDK 1.8
- 597℃Oracle数据库的单、多行函数 oracle执行多个sql语句
- 593℃Oracle 12c PDB迁移(一) oracle迁移到oceanbase
- 584℃【数据统计分析】详解Oracle分组函数之CUBE
- 574℃最佳实践 | 提效 47 倍,制造业生产 Oracle 迁移替换
- 563℃Oracle有哪些常见的函数? oracle中常用的函数
- 最近发表
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端路由 (61)
- 前端数组 (73)
- 前端js面试题 (50)
- 前端定时器 (59)
- 前端获取当前时间 (50)
- Oracle RAC (76)
- oracle恢复 (77)
- oracle 删除表 (52)
- oracle 用户名 (80)
- oracle 工具 (55)
- oracle 内存 (55)
- oracle 导出表 (62)
- oracle约束 (54)
- oracle 中文 (51)
- oracle链接 (54)
- oracle的函数 (58)
- 前端调试 (52)
本文暂时没有评论,来添加一个吧(●'◡'●)