- SAP HANA 教程
- SAP HANA - 主页
- SAP HANA简介
- SAP HANA - 概述
- 内存计算引擎
- SAP HANA - 工作室
- 工作室管理视图
- SAP HANA - 系统监视器
- SAP HANA - 信息建模器
- SAP HANA - 核心架构
- SAP HANA 建模
- SAP HANA - 建模
- SAP HANA - 数据仓库
- SAP HANA - 表
- SAP HANA - 包
- SAP HANA - 属性视图
- SAP HANA - 分析视图
- SAP HANA - 计算视图
- SAP HANA - 分析权限
- SAP HANA - 信息编辑器
- SAP HANA - 导出和导入
- SAP HANA 数据复制
- SAP HANA - 数据复制概述
- SAP HANA - 基于 ETL 的复制
- SAP HANA - 基于日志的复制
- SAP HANA - DXC 方法
- SAP HANA - CTL 方法
- SAP HANA - MDX 提供商
- SAP HANA SQL
- SAP HANA - SQL 概述
- SAP HANA - 数据类型
- SAP HANA - SQL 运算符
- SAP HANA - SQL 函数
- SAP HANA - SQL 表达式
- SAP HANA - SQL 存储过程
- SAP HANA - SQL 序列
- SAP HANA - SQL 触发器
- SAP HANA - SQL 同义词
- SAP HANA - SQL 解释计划
- SAP HANA - SQL 数据分析
- SAP HANA - SQL 脚本
- SAP HANA 有用资源
- SAP HANA - 问题与解答
- SAP HANA - 快速指南
- SAP HANA - 有用的资源
- SAP HANA - 讨论
SAP HANA - 持久层
SAP HANA数据库持久层负责管理所有事务的日志,提供标准的数据备份和系统恢复功能。
它确保数据库在重新启动或系统崩溃并且事务完全执行或完全撤消后可以恢复到最近提交的状态。SAP HANA 持久层是索引服务器的一部分,它具有 HANA 系统的数据和事务日志卷,内存中的数据定期保存到这些卷中。HANA系统中有一些服务有自己的持久性。它还为最后一个保存点的所有数据库事务提供保存点和日志。
为什么 SAP HANA 数据库需要持久层?
主存储器是易失性的,因此在重新启动或断电期间数据会丢失。
数据需要存储在持久介质中。
可以进行备份和恢复。
它确保数据库在重新启动后恢复到最近提交的状态,并且事务要么完全执行,要么完全撤消。
数据和事务日志卷
数据库始终可以恢复到其最新状态,以确保数据库中数据的这些更改定期复制到磁盘。包含数据更改和某些事务事件的日志文件也会定期保存到磁盘。系统的数据和日志存储在日志卷中。
数据卷存储 SQL 数据和撤消日志信息以及 SAP HANA 信息建模数据。这些信息存储在数据页中,称为块。这些块以固定的时间间隔写入数据卷,这称为保存点。
日志卷存储有关数据更改的信息。两个日志点之间进行的更改将写入日志卷并称为日志条目。当事务提交时,它们被保存到日志缓冲区。
保存点
在 SAP HANA 数据库中,更改的数据会自动从内存保存到磁盘。这些定期间隔称为保存点,默认情况下它们设置为每五分钟发生一次。SAP HANA 数据库中的持久层定期执行这些保存点。在此操作期间,更改的数据将写入磁盘,重做日志也会保存到磁盘。
属于保存点的数据表明磁盘上数据的一致状态,并保留在那里,直到下一个保存点操作完成。对于持久数据的所有更改,重做日志条目都会写入日志卷。如果数据库重新启动,可以从数据卷中读取上次完成的保存点的数据,并将重做日志条目写入日志卷。
保存点的频率可以通过global.ini文件配置。保存点可以由其他操作启动,例如数据库关闭或系统重新启动。您还可以通过执行以下命令来运行 savepoint -
更改系统保存点
要将数据和重做日志保存到日志卷,您应该确保有足够的磁盘空间来捕获这些数据和重做日志,否则系统将发出磁盘已满事件并且数据库将停止工作。
在 HANA 系统安装过程中,将创建以下默认目录作为数据和日志卷的存储位置 -
- /usr/sap/<SID>/SYS/global/hdb/data
- /usr/sap/<SID>/SYS/global/hdb/log
这些目录在 global.ini 文件中定义,可以在稍后阶段更改。
请注意,保存点不会影响 HANA 系统中执行的事务的性能。在保存点操作期间,事务继续正常运行。当 HANA 系统运行在适当的硬件上时,保存点对系统性能的影响可以忽略不计。