SAP HANA 持久層

2018-12-14 11:41 更新

SAP HANA數(shù)據(jù)庫持久層負責(zé)管理所有事務(wù)的日志,以提供標(biāo)準(zhǔn)數(shù)據(jù)備份和系統(tǒng)恢復(fù)功能。

它確保數(shù)據(jù)庫可以在重新啟動或系統(tǒng)崩潰后恢復(fù)到最近的已提交狀態(tài),并且事務(wù)已完全執(zhí)行或完全撤銷。SAP HANA持久層是索引服務(wù)器的一部分,它具有HANA系統(tǒng)的數(shù)據(jù)和事務(wù)日志卷,而內(nèi)存中的數(shù)據(jù)會定期保存到這些卷中。HANA系統(tǒng)中的服務(wù)器有其自己的持久性。它還為上次保存點的所有數(shù)據(jù)庫事務(wù)提供保存點和日志。

為什么SAP HANA數(shù)據(jù)庫需要一個持久層?

  • 主內(nèi)存是易失性的,因此在重啟或斷電期間數(shù)據(jù)會丟失

  • 數(shù)據(jù)需要存儲在持久的介質(zhì)中。

  • 備份和恢復(fù)可用。

  • 它確保數(shù)據(jù)庫在重新啟動后恢復(fù)到最近提交的狀態(tài),并且該事務(wù)完全執(zhí)行或完全撤消

數(shù)據(jù)和事務(wù)日志卷

數(shù)據(jù)庫可以始終恢復(fù)到其最近的狀態(tài),以確保這些對數(shù)據(jù)庫中數(shù)據(jù)的更改定期復(fù)制到磁盤。包含數(shù)據(jù)更改和一些事務(wù)事件的日志文件也定期保存到磁盤。系統(tǒng)的數(shù)據(jù)和日志存儲在日志卷中。

數(shù)據(jù)卷存儲SQL數(shù)據(jù)和撤銷日志信息以及SAP HANA信息建模數(shù)據(jù)。這些信息存儲在稱為塊的數(shù)據(jù)頁面中。這些塊以規(guī)則的時間間隔寫入數(shù)據(jù)卷,也就是保存點。

日志卷存儲有關(guān)數(shù)據(jù)更改的信息。在兩個日志點之間進行的更改將寫入日志卷并稱為日志條目。當(dāng)事務(wù)提交時,它們將被保存到日志緩沖區(qū)。

保存點

在SAP HANA數(shù)據(jù)庫中,已更改的數(shù)據(jù)將自動從內(nèi)存保存到磁盤。這些常規(guī)間隔稱為保存點,默認情況下它們每五分鐘設(shè)置一次。SAP HANA數(shù)據(jù)庫中的持久層以定期間隔執(zhí)行這些保存點。在此操作期間,已更改的數(shù)據(jù)將寫入磁盤,重做日志也會保存到磁盤

屬于保存點的數(shù)據(jù)告知磁盤上的數(shù)據(jù)的一致狀態(tài),并保持到下一個保存點操作完成。重做日志條目將寫入日志卷以進行對持久數(shù)據(jù)的所有更改。在數(shù)據(jù)庫重新啟動的情況下,可以從數(shù)據(jù)卷讀取上次完成的保存點的數(shù)據(jù),并將重做日志條目寫入日志卷。

保存點的頻率可以由global.ini文件配置。保存點可以通過其他操作啟動,如數(shù)據(jù)庫關(guān)閉或系統(tǒng)重啟。你還可以通過執(zhí)行以下命令運行保存點 -

ALTER系統(tǒng)SAVEPOINT

要將數(shù)據(jù)和重做日志保存到日志卷,應(yīng)確保有足夠的磁盤空間來捕獲這些日志卷,否則系統(tǒng)將發(fā)出磁盤已滿事件,數(shù)據(jù)庫將停止工作。

在HANA系統(tǒng)安裝期間,將創(chuàng)建以下默認目錄作為數(shù)據(jù)和日志卷的存儲位置:

  • /usr/sap/<SID>/SYS/global/hdb/data
  • /usr/sap/<SID>/SYS/global/hdb/log

這些目錄在global.ini文件中定義,并且可以在以后階段更改。

請注意,保存點不會影響在HANA系統(tǒng)中執(zhí)行的事務(wù)的執(zhí)行情況。在保存點操作期間,事務(wù)繼續(xù)正常運行。HANA系統(tǒng)運行在合適的硬件上,保存點對系統(tǒng)性能的影響可以忽略不計。


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號