oracle与DM物理与逻辑架构

Oracle与DM逻辑架构分别:

Oracle数据库的逻辑架构主要包括以下几个部分:

表空间(Tablespace)

  • 一个数据库被分成一个个的逻辑单元,这些逻辑单元就叫做“表空间”。
  • 表空间由一个或多个数据文件组成,用于存放数据库对象,如表、索引等。
  • 数据库从逻辑上由一个或多个表空间组成。
  • 存在默认的表空间,如系统表空间(SYSTEM)、辅助表空间(SYSAUX)、用户表空间(USERS)等。

段(Segment)

  • 数据库中的表在表空间中都由一块单独的磁盘空间区域,称之为段。
  • 一个段有一系列的区(Extent)组成,是存放数据的逻辑存储单元。
  • 段的分类包括:数据段、索引段、临时段和回滚段。

区(Extent)

  • 由多个连续的数据块组成。
  • 当段使用完对应的空间时,另一个单独的区域(即下一区)将被启用。

数据块(Data Block)

  • 块组成区,区组成段,段组成表空间,最终组成数据库。

达梦数据库的逻辑架构主要包括以下几个部分:

表空间

  • 由一个或者多个数据文件组成。
  • 所有的数据文件组合在一起被划分到一个或者多个表空间中。
  • 所有的数据库内部对象都存放在这些表空间中。
  • 存在普通表空间和混合表空间,后者可以同时存储普通表和HUGE表。

  • 是簇的上级逻辑单元,一个段可以跨多个数据文件。
  • 类似于Oracle的segment。

  • 由磁盘上连续的页组成,一个簇总是在一个数据文件中。
  • 类似于Oracle的extent。

页(也称块)

  • 是数据库中最小的分配单元,也是数据库中使用的最小的IO单元。
  • 页的大小从4K到32K,默认的页大小是8K。

默认表空间

  • 包括SYSTEM表空间、ROLL表空间、MAIN表空间和TEMP表空间。
  • SYSTEM表空间存放关键的数据字典以及数据库的一些系统信息。
  • ROLL表空间是回滚表空间,存储回滚段。类似于Oracle的UNDO表空间。
  • TEMP表空间存储临时表、临时段等。
  • MAIN表空间是一个默认数据存储的表空间。

总结来说,Oracle和达梦数据库在逻辑架构上有很多相似之处,都采用了表空间、段、区(或簇)、数据块(或页)这样的层次结构来组织和管理数据。但在具体的实现和命名上,两者又有所不同。

Oracle与DM物理架构分别:

Oracle数据库的物理架构主要包括以下几个部分:

数据文件(Data Files) 

  • 每个数据文件对应一个表空间,以操作系统文件的形式存在。它们负责存储表空间内所有对象的数据,如表、索引和视图。数据文件可以动态增长,但需要合理管理以避免碎片化和空间不足。
  • 一个数据库可以包含多个表空间,一个表空间只能属于一个数据库。
  • 一个表空间包含多个数据文件,一个数据文件只能属于一个表空间。
  • 表空间分为系统表空间(system 表空间、sysaux 表空间)和非系统表空间(undo 表空间,temp 表空间,users 表空间,自定义表空间)

控制文件(Control Files) 

  • 控制文件记录了Oracle数据库的结构和状态信息,如数据库的结构、日志文件信息、表空间信息等。它是数据库的关键恢复组件,通常是少数几个不容许损坏的文件之一。
  • 控制文件是一个二进制文件,一个控制文件只属于一个数据库。当数据库的物理结构发生改变时,Oracle会自动更新控制文件。当增加、重命名、删除一个数据文件或者一个重做日志文件时,Oracle 服务器进程会立即更新控制文件以反映数据库结构的变化。
  • 用户不能手工编辑控制文件,控制文件的修改由 Oracle 自动完成。

日志文件(Redo Log Files) 

  • 日志文件记录数据库中发生的所有变更操作,如数据更新、插入、删除。
  • 有两种类型:在线重做日志文件和归档重做日志文件,用于数据库的恢复和故障保护。

重做日志(Redo Log):

  • 重做日志记录了对数据库所做的所有更改操作,包括插入、更新、删除等。这是确保数据持久性和事务一致性的重要组成部分。
  • 重做日志是由LGWR(Log Writer)进程从内存中的重做日志缓冲区(redo log buffer)定期写入到磁盘上的重做日志文件中。
  • 重做日志文件是循环使用的,一旦一个日志文件组写满,LGWR会开始写入下一个日志文件组。在非归档模式下(Oracle数据库安装后默认是“非归档模式”),当一个重做日志文件循环使用时,其中的信息会被覆盖;而在归档模式下,则会被归档。

归档日志(Archivelog):

  • 当数据库运行在归档模式(Archive Mode)下,重做日志文件在被重用前,其内容会被复制到归档日志文件中。这一过程称为归档。
  • 归档日志就是重做日志的副本,开启了归档日志,就提供了历史数据变化的完整记录,是进行数据库恢复和实现点-in-time恢复的基础。
  • 归档过程由ARCn(Archiver)进程自动完成,确保即使原始重做日志被覆盖,也能通过归档日志找回所有更改历史。
  • 数据库管理员需要配置归档目标路径,并确保足够的存储空间来保存归档日志。
  • 归档日志的管理对于维护数据库的可恢复性至关重要,尤其是在发生介质失败时,能够帮助数据库恢复到故障点的状态。

参数文件(Parameter File) 

  • 参数文件包含了数据库的配置参数信息,如内存分配、日志文件大小、并发连接数等。在数据库启动时读取,用于初始化数据库实例的运行时参数。
  • 控制文件分为两种:pfile和spfile。

pfile :(parameter file)静态参数文件。

  • 文本文件,可以使用vi,vim等编辑器修改参数。
  • 修改参数下次重启实例才生效。
  • pfile 参数文件可以不在 database server 上。
  • 命名方式:init+SID.ora 。

spfile :(system parameter file) 动态参数文件。

  • 二进制文件,不可以通过编辑器修改,可以使用 EM 或指令来修改(alter system|session set parameter_name = values <>)。
  • Linux 下 strings 可以查看。
  • 必须在 database server 端的指定路径($Oracle_HOME/dbs)下。
  • 支持RMAN备份。
  • 命名方式: spfile+SID.ora 。

达梦数据库的物理架构主要包括以下几个部分:

1、配置文件:

  • 配置文件是 DM 数据库用来设置功能选项的一些文本文件的集合。
  • 配置文件以 ini 为扩展名,并具有固定的格式。
  • 用户可以通过修改其中的某些参数取值来达成启用/禁用特定功能项和针对当前系统运行环境设置更优的参数值以提升系统性能。
  • 主要的配置文件有DM.ini,dmmal.ini,dmarch.ini,sqllog.ini,dmthrd.ini

dm.ini 是 DM 数据库启动所必须的配置文件,通过配置该文件可以设置 DM 数据库服务器的各种功能和性能选项,主要的配置模块包括:控制文件相关、实例名、内存相关、线程相关等。

dmmal是mal系统的配置文件。

dmarch.ini 用于配置归档。

sqllog.ini 用于 SQL 日志的配置。

dmthrd.ini 用于为线程类型绑定 CPU 核心。

2、控制文件:

  • 控制文件是一个二进制文件,它记录了数据库必要的初始信息,
  • 其中主要包含以下内容:数据库名称,据库服务器模式,OGUID 唯一标识等初始信息与表空间信息,其中包括表空间名,表空间物理文件路径等,记录了所有数据库中使用的表空间,并以数组的方式保存起来;
  • 在服务器运行期间,执行表空间的 DDL 等操作后,服务器内部需要同步修改控制文件内容。

3、数据文件:

  • 数据文件以 dbf 为扩展名,它是数据库中最重要的文件类型。
  • 一个 DM 数据文件对应磁盘上的一个物理文件或者达梦分布式数据库中的一个逻辑文件,数据文件是真实数据存储的地方,每个数据库至少有一个与之相关的数据文件。
  • 在实际应用中,通常有多个数据文件。
  • 当 DM 的数据文件空间用完时,它可以自动扩展。可以在创建数据文件时通过 MAXSIZE参数限制其扩展量,当然,也可以不限制。但是,数据文件的大小最终会受物理磁盘大小的限制。
  • 在实际使用中,一般不建议使用单个巨大的数据文件,为一个表空间创建多个较小的数据文件是更好的选择。

4、日志文件:

  • 日志文件分为联机日志文件和归档日志文件。

重做日志(即 REDO 日志)

  • 重做日志指在 DM 数据库中添加、删除、修改对象,或者改变数据,DM 都会按照特定的格式,将这些操作执行的结果写入到当前的重做日志文件中。
  • 每个 DM 数据库实例必须至少有 2 个重做日志文件,默认两个日志文件为 DAMENG01.log、DAMENG02.log,这两个文件循环使用。
  • 重做日志文件因为是数据库正在使用的日志文件,因此被称为联机日志文件。

归档日志

  • 归档日志文件就是在归档模式下,重做日志被连续写入到归档日志后,所生成了归档日志文件。
  • 归档日志文件以归档时间命名,扩展名默认与初始化数据库时指定的参数 RLOG_POSTFIX_NAME 一致,也可通过 INI 参数 LOG_FILE_POSTFIX_NAME 指定归档日志文件的扩展名。
  • 只有在归档模式下运行时,DM 数据库才会将重做日志写入到归档日志文件中。

总结:Oracle和达梦数据库在物理架构上有很多相似之处,相比于Oracle数据库,达梦数据库更加简单且高效,通过修改配置文件中的指定参数可以达到修改数据库诸多参数来实现与所处操作系统的适配性。

免责声明:本文撰写时间为2024年,以下信息适用于Oracle19c至以前与达梦数据库8,如有版本大更新,请谨慎使用本文观点。如需更加详细的资料请前往官网自行查看:Oracle官方文档:Oracle Help Center,达梦数据库官方文档:快速上手 | 达梦技术文档

附达梦社区地址:https://eco.dameng.com

  • 5
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值