本文为In-memory Computing with SAP HANA on Lenovo X6 Systems第二章SAP HANA overview的读书笔记。
本章最重要的部分是SAP HANA architecture
SAP HANA overview
SAP HANA数据库是结合了行式,列式和对象的内存数据库,可以充分利用硬件的并行处理能力。
SAP HANA appliance是一体化的软硬件设施,核心还是SAP HANA。
SAP HANA architecture
HANA的核心是关系型引擎(relational database engines),支持行式和列式。行式适合于插入,更新操作,但压缩比,查询性能不如列式。
每张表可以选择自己的行式或列式引擎,后续也可以再转换。
行式存储的表在启动时加载。列式存储的表可以在启动或按需在访问时加载。
行式和列式存储共享持久化层,内存中数据的改变通过savepoint存放到磁盘,而提交的交易通过log记录到磁盘,通常是闪存盘,因为需要同步写盘。
relational engines可以通过各种方式使用,包括SQL (JDBC/ODBC), MDX (ODBO), 和BICS (SQL DBC)等。
calculation engine使得数据可以就地处理,无需移动数据。HANA SQL Script使得一些应用逻辑可以直接在HANA中执行,是SQL的扩展,角色类似于Oracle的PL/SQL。
SAP HANA appliance
软硬一体的方案,核心是HANA,再加上一些管理软件。
SAP HANA delivery model
支持两种模式,新硬件单一厂商部署模式和多厂商集成(可利用已有硬件)的模式。
SAP HANA as an appliance
新硬件部署模式,是主流的部署模式,都是SAP认证的服务器厂商提供方的的集成部署方案,必须是Intel Xeon CPU,每个CPU有一定的内存配比,万兆网卡,冗余和高可用性等。
SAP HANA tailored data center integration
tailored data center integration (TDI)模式,可集成多个厂商的硬件
Sizing SAP HANA
对于内存计算系统而言,内存的容量(CPU的内存配比)比较重要,如果配的太高,浪费,如果配的太小,CPU的能力不能充分发挥。因此需要一个合适的CPU core内存配比。
Memory per core ratio for SAP HANA appliances
SAP以T-Shirt Size的方式定义了CPU/内存配比,如下图:
S+使用的是S的内存,及M的硬件。M+同理。
SAP Business Suite对CPU要求低,内存要求高,具有不同的T-Shirt Size
Sizing approach
HANA的Sizing取决于其用于什么场景,具体参见SAP Notes:
* Note 1514966 - SAP HANA 1.0: Sizing SAP In-Memory Database
* Note 1637145 - SAP NetWeaver BW on HANA: Sizing SAP In-Memory Database
* Note 1793345 - Sizing for SAP Suite on HANA
* Note 1872170 - Suite on HANA memory sizing
对于scale-out BW,参见以下SAP Notes:
SAP也提供SAP Quick Sizer在线Sizing工具。
Sizing的结果影响到license。
SAP HANA software licensing
The SAP HANA software is available in two editions (platform and enterprise edition) and the SAP HANA software licensing depends on the use case.