SAP HANA是 SAPS公司推出的內存資料庫軟體平臺產品,針對數據處理提供的內存資料庫平臺,適用於 OLAP類型應用,也可以於OLTP類型應用。
何謂SAP HANA
SAP提供豐富的周邊應用軟體,包括數據複製、 提供豐富的周邊應用軟體,包括數據複製、BI等。向應用層提供SQL、MDX、BICS接口,其中MDX(Multi dimension expression)、BICS(Business Intelligence Consumer Services) ;並提供多種數據導入的方式。
SAP歷史上增長最快的產品,堪稱世界上最快的資料庫,比客戶原資料庫系統快成百上千、甚至萬倍。提供多種交付形態,但一般以軟體 +硬體 +管理的一體機形式交付,作為一體機形式交付時付主要由經過認證的硬體合作夥伴提供。
HANA應用場景
SAP HANA可以應用於多個場景,如作為其他資料庫的加速器、直接作為報表分析的數據源或直接用作OLAP分析型數據倉庫。
SAP HANA也作為OLTP套件的資料庫,同時可直接作為SAP公司統一的資料庫平臺。
SAP HANA上下文環境
Data Sources和DataServices負責向SAP HANA提供分析數據,有些數據(SAP ERP System)可以直接通過Replication Agent直接導入到SAP HANA,有些數據(SAP BW System和第三方系統)需要通過Data Services軟體轉換後導入SAP HANA。
SAP HANA Appliance提供內存資料庫的實現,進行數據的存儲、查詢、計算。
Admin Workstations是SAP HANA系統管理員的客戶端,可以通過SAP HANA Studio等軟體來管理和使用SAP HANA系統。
End Users WorkStations是SAP HANA系統的終端用戶客戶端, 終端用戶可以通過Excel、Web BI等形式來管理和使用SAP HANA系統。
SAP HANA Database client提供JDBC、ODBC、ODBO、SQL DBC等接口,使得各應用軟體可以以標準的SQL形式訪問到SAP HANA資料庫
SAP HANA邏輯功能架構
SAP HANA Database是整個系統的核心部分,圖中紅色框之內是整個系統的核心部分, SAP HANA Database按照功能區分的主要模塊。
Session Management是會話管理模塊,負責與各種業務客戶端軟體進行連接管理的模塊;
Replication Server和Load Controller是複製管理模塊,負責將ERP、SAP NetWeaver、第三方資料庫等的數據複製到SAP HANA資料庫;
Transaction Manager是事務管理模塊,負責對資料庫事務管理,當一個事務完成後,會要求做數據持久化操作;
Authorization Manager是認證管理模塊,對連接到SAP HANA資料庫的客戶端用戶進行權限管理;
Metedata Manager是元數據管理模塊。它會與SAP HANA Studio中的Modelling以及SAP Data Service(SAP一種ETL服務軟體)相配合,對所有建立到SAP HANA資料庫中,或者導入到SAP HANA資料庫中的數據的元數據進行管理。
SQL Parser是SQL語句解析優化器;負責對於業務客戶端來的SQL請求進行分析和解析,將一個SQL工作分解成多個子任務,分發給所有的節點去完成。
MDX是多維表達式,對來自Excel等應用端的複雜計算進行分析和解析;SQL Script提供類似於存儲過程的複雜編程能力;Calc Engine執行SQL計算的模塊;ROW Store是行記錄內存資料庫、Column Store是列存儲內存資料庫。
Page Management和 Logger是持久化保存處理模塊,負責將內存資料庫的記錄同步或者異步的寫入SSD或者HDD中。
SAP HANA產品形態分類
SAPHANA主要可以分為一體機和TDI兩種,但實際上,從節點擴展方式區分SAP HANA可以 分為 Scale Up和 Scale Out兩種架構。
一體機(Appliance)形態
SAPHANA一體機是將SAP HANA資料庫軟體和經過SAP認證的硬體基礎設施結合而形成的一體機產品。這種形式下硬體、軟體和服務統一打包銷售,客戶購買後直接開箱即用。
TDI形態
TDI(Tailoreddata center integration)非常靈活數據中心集成。客戶可以選擇自行購買伺服器或者存儲,由經過認證的HANA工程師來負責現場安裝。
Scale Up系統
單節點系統Single Node System,指系統中只包括一個有效節點(如果需要HA時,可以將2個單節點以System Replication形式構成單節點的HA架構)。這種架構的系統只具有垂直擴展能力,當需要擴展系統時,通過在節點上增加更多的CPU、內存和硬碟來擴大系統的能力。
Scale Out系統
集群系統Multi Node System或者Cluster System,指由多個節點組成的HANA系統,這種系統的擴展主要以水平擴展方式(指增加節點的方式)來進行。
上面兩種分類方式進行組合,就可以構成多個產品形態。SAP HANA一體機單機系統是以一體機方式購買和交付的單機系統;SAP HANA一體機集群系統是以一體機方式購買和交付的集群系統;SAP HANA TDI集群系統是以TDI方式購買和交付的集群系統。實際上,單機時無需單獨的存儲系統,因此,不存在SAP HANA TDI單機系統。
HANA一體機集群系統概念
SAP HANA一體機集群系統由多個節點(Node)構成。一個SAPHANA節點肯定包括一個計算節點,但是不一定有物理上單獨的存儲節點。
SAP HANA節點是構成 SAPHANA的邏輯單元。 1個 SAP HANA節點包括了指定規格的 CPU、 內存Log 盤和Data盤。 SAP HANA一體機就是按照HANA節點的 Size(即每個節點的內存大小)和數進行報價。1個 SAP HANA節點在物理上可以有多種表現形態,與硬體廠家的具體實現方案有關。
計算節點負責內存資料庫的部分。存儲節點在SAPHANA解決方案中,負責數據的持久化保存。SAPHANA節點根據作用的不同,又分為主節點、從節點、備用節點三類角色。
主節點(Master):配置有3個但只有一個激活。從3個Master配置角色中選舉,這是SAPHANA軟體本身的集群管理機制。起到全局事務協調器的作用。保存計算節點集群信息的全局元數據。
從節點(Slave):緩存需要的元數據,採用分布式架構,承擔由主節點分配來的任務,執行對應的資料庫操作。一個集群內多個。從節點也分為配置角色和實際角色,配置角色分為Worker和Standby,實際角色分為Master、Standby和Slave。
備用節點(Standby):切換時接管故障節點。一個集群可以0到多個。正常情況下此節點的軟體是運行的,只不過其內存資料庫中沒有數據,不能執行業務處理。切換的過程是自動進行的。
HANA一體機集群部署
SAP HANA集群系統的主節點和從部署有不同軟體包;在主節點上部署的軟體包主要包括SAP HANA Studio、SAP HANA Client、SAP HANA Database、SAP SMD Agent、SUM for SAP HANA、SAP Host Agent和SAPCAR等。
SAP HANA Studio是SAP HANA資料庫的管理客戶端,可以進行SAP HANA資料庫建模、配置、監控、告警等;
SAP HANA Client是資料庫客戶端軟體,提供如ODBC等接口,供用戶訪問資料庫數據;
SAP HANA Database是內存資料庫實現軟體;這是SAP HANA系統的核心軟體包。
SAP SMD Agent是系統統一管理的代理,用於在整個SAP集成解決方案中對SAP HANA進行管理;
SUM for SAP HANA是軟體升級管理器;Master節點通過這個軟體,自動連接到SAP公司的軟體更新平臺,負責master、slave、standby所有節點上SAP HANA相關軟體的升級。OS和驅動是由硬體廠家負責安裝和升級的。
SAP Host Agent是主機代理,來自遠端的重啟、停止等對節點的操作命令通過這個模塊來實施;這些操作都是對SAP HANA軟體的操作。
SAPCAR是安裝腳本 ,這些腳本只對SAP HANA軟體起作用。
其他從和備節點上主要部署的軟體包括SAP Host Agent、SAP HANA Client、SAP HANA Database、SAP SMD Agent。
第九屆中國雲計算大會詳情和售票、免費專業票申請,請參閱「第九屆中國雲計算大會日程曝光」文章和文章連結。
溫馨提示:
請搜索「ICT_Architect」或「掃一掃」下面二維碼關注公眾號,獲取更多精彩內容。