• SAP HANA Video Tutorials

SAP HANA - 持久層



SAP HANA 資料庫持久層負責管理所有事務的日誌,以提供標準資料備份和系統恢復功能。

它確保資料庫可以在重新啟動或系統崩潰後恢復到最近提交的狀態,並且事務要麼完全執行,要麼完全撤消。SAP HANA 持久層是索引伺服器的一部分,它具有 HANA 系統的資料和事務日誌卷,並且記憶體中的資料定期儲存到這些卷中。HANA 系統中有一些服務擁有自己的永續性。它還為從最後一個儲存點開始的所有資料庫事務提供儲存點和日誌。

為什麼 SAP HANA 資料庫需要持久層?

  • 主記憶體是易失性的,因此在重新啟動或斷電期間資料會丟失。

  • 資料需要儲存在持久介質中。

  • 提供備份和恢復功能。

  • 它確保資料庫在重新啟動後恢復到最近提交的狀態,並且事務要麼完全執行,要麼完全撤消。

資料和事務日誌卷

資料庫始終可以恢復到其最新狀態,以確保對資料庫中資料的這些更改定期複製到磁碟。包含資料更改和某些事務事件的日誌檔案也定期儲存到磁碟。系統的日期和日誌儲存在日誌卷中。

資料卷儲存 SQL 資料和撤消日誌資訊,以及 SAP HANA 資訊建模資料。此資訊儲存在資料頁中,稱為塊。這些塊以定期時間間隔寫入資料卷,這稱為儲存點。

日誌卷儲存有關資料更改的資訊。在兩個日誌點之間進行的更改將寫入日誌卷並稱為日誌條目。當事務提交時,它們將儲存到日誌緩衝區。

儲存點

在 SAP HANA 資料庫中,更改的資料會自動從記憶體儲存到磁碟。這些定期間隔稱為儲存點,預設情況下,它們設定為每五分鐘發生一次。SAP HANA 資料庫中的持久層以定期間隔執行這些儲存點。在此操作期間,更改的資料將寫入磁碟,並且重做日誌也將儲存到磁碟。

屬於儲存點的資料指示磁碟上資料的一致狀態,並在下一個儲存點操作完成之前保留在那裡。所有對持久資料的更改都會將重做日誌條目寫入日誌卷。如果資料庫重新啟動,則可以從資料卷讀取上次完成的儲存點的資料,以及寫入日誌卷的重做日誌條目。

可以透過 global.ini 檔案配置儲存點的頻率。儲存點可以由其他操作(如資料庫關閉或系統重新啟動)啟動。您還可以透過執行以下命令來執行儲存點:

ALTER System SAVEPOINT

要將資料和重做日誌儲存到日誌卷,您應該確保有足夠的磁碟空間來捕獲這些日誌,否則系統將發出磁碟滿事件,資料庫將停止工作。

在 HANA 系統安裝期間,以下預設目錄將建立為資料和日誌卷的儲存位置:

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

這些目錄在 global.ini 檔案中定義,可以在以後階段更改。

請注意,儲存點不會影響在 HANA 系統中執行的事務的效能。在儲存點操作期間,事務將繼續正常執行。如果 HANA 系統在適當的硬體上執行,則儲存點對系統性能的影響可以忽略不計。

廣告