0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

SAP HANA 和非易失性存储优势分析

要长高 来源:zedware.github.io 作者:张文亮 2022-06-10 16:40 次阅读

SAP HANA 和非易失性存储

一种新硬件产品的推广,必然需要有配套的软件产品来助阵。SAP HANA 作为一款著名的企 业级内存数据库产品,正是持久化内存最合适的场景之一。所以,SAP 和 Intel 二者很早 就开始相关产品的研发合作,这是一件再自然不过的事情了。SAP HANA 是市场上第一个针 对 DCPMM(即Optane数据中心持久化内存)优化过的主流数据库产品,SAP HANA 2.0 SPS 03 就已经支持 DCPMM 了1。

SAP HANA 的架构

SAP HANA 本质上是一个内存数据库,它也是最早提出 HTAP 的企业级数据库产品。因此, SAP HANA 给人的第一印象就是需要很多的内存,例如好几个 TiB。因此,云厂商的超大内 存规格就是为了 SAP HANA 这样的产品准备的。这也是为什么 DCPMM 作为一种新介质,很 早就吸引了 SAP HANA 的研发投入。

内存数据库的操作是以内存为中心的,而不是像磁盘数据库那样将内存作为磁盘的缓存。为 了保证数据的持久化,它仍然要依赖 WAL 机制先写日志,也需要依赖检查点等机制将数据 持久化。磁盘数据库遇到重启的时候,需要执行崩溃恢复过程,才能提供服务;内存数据库 也不例外,不过它的操作以内存为中心,还需要将大量数据加载到内存才可以工作。加速重 启的恢复过程也是企业级数据库一个很重要的优化。从内存和外存的角度看,SAP HANA 的 宏观结构如下2:

pYYBAGKjAvOAG6DjAALQhoOjQnQ928.png

为了在 OLAP 和 OLTP 类访问中获得平衡,SAP HANA 在列存和压缩的基础上,将每列数据 分为两个部分:Main 和 Delta。前者主要是只读的,为 OLAP 类访问优化;后者为写服务, 为 OLTP 类访问优化。为了支持并发访问,这两部分都实现了 MVCC 。大致的架构如下:

poYBAGKjAwuAAwllAAI-SnNY98s291.png

实际的系统结构远比这个结构图要复杂,毕竟 SAP HANA 是一个完备的产品,也实现了很多 内存数据库、列存引擎的经典特性。更多的资料请移步 SAP HANA 官网3。

SAP HANA 的优化思路

在其他的文章中我已经分析过 DCPMM 之类介质的特点,例如带宽要稍逊于 DRAM,读写速度 不对称等。SAP HANA 也对介质的特点做了仔细的考量,结合 Main 内存的访问特点(例如 容量大、读多写少等),很自然的,先把 DCPMM 当做字节寻址的持久化介质用于 Main 内 存的优化。为了做到务实的架构设计,SAP 不可能对 HANA 大动干戈,为了 DCPMM 做全面 的改造,毕竟系统的备份、恢复、复制等都存在依赖。这也是写 PAPER,做原型和在产品上 做改进的重要区别。

poYBAGKjAyOAPKN5AAQTu3D939s703.png

SAP HANA 的优化结果

原型系统2中讨论较多场景下的性能改进,例如简单的 INSERT、SELECT、类 TPC-H 查询、系统恢复时间等。但是需要注意的是,数据都是用 DRAM 附加延迟等模拟出来的, 不能代表实际的系统数据。产品1的性能给出的主要是系统恢复时间的减少, 以及 DCPMM 带来的相对 DRAM 的增加。

pYYBAGKjAzGAQvgZAAGZkJ8dX2M495.png

从图中可以看出,系统启动的时间从 50 分钟下降到了 4 分钟,可以大大减少系统的停机 时间。

SAP HANA 的启示

一种新硬件产品的推广从来都不是凌空出世的,它需要很多年研究和开发的积累。与此同时, 硬件还需要操作系统等基础软件环境的支撑,才可能被更上层的应用软件所用。此外,硬件 要被广泛采用,必须要获得 Killer Application 的支持。DCPMM 之类的新硬件,因为它独 特的特性,存在很多种用法。至于实际的系统中应该采用哪种用法,就是应用软件各显神通 之处了。

SAP HANA 产品中对新存储介质的引入必然是慎重的。首先是企业的预研部门对新介质的用 法做出评估,并在以原型等形式予以实现和验证,其次才是真正的在产品中引入。最后,改 进后的产品要真正发布给客户并在实际系统中应用。

Footnotes

1 https://blogs.saphana.com/2018/11/29/sap-hana-persistent-memory/

2 http://www.vldb.org/pvldb/vol10/p1754-andrei.pdf

3 https://www.sap.com/products/hana.html

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • DRAM
    +关注

    关注

    40

    文章

    2163

    浏览量

    181941
  • 非易失性存储器

    关注

    0

    文章

    105

    浏览量

    23236
收藏 人收藏

    评论

    相关推荐

    如何存储应用程序中使用的数据?

    我应该用什么API来存储数据?我使用CYW43907,手册上说它支持外部闪存。我想知道我是否应该使用WiDeDssFlash写来
    发表于 11-13 15:19

    CypressSRAM技术

    SRAM的单元基于SONOS技术。他们利用Fowler-Nordheim隧穿(FN隧穿)的优势通过将电荷捕获在夹层氮化物层中来
    发表于 04-08 14:58

    MRAM的基础知识汇总

    MRAM是一种的磁性随机存储器。它拥有静态随机存储器(SRAM)的高速读取写入能力;以及
    发表于 12-10 07:20

    MRAM基础知识汇总

    MRAM是一种的磁性随机存储器。它拥有静态随机存储器(SRAM)的高速读取写入能力;以及
    发表于 12-16 07:21

    0.13μmFRAM产品的性能

    0.13μmFRAM产品的增强的耐久性能
    发表于 02-04 07:15

    串行FRAM有哪些优势

    宇芯电子本篇文章提供智能电表或智能电子式电表的概述,并且说明在智能电子式电表的设计中用串行FRAM而不是使用EEPROM的优势。图1
    发表于 07-12 07:26

    如何处理存储设备中的内存数据集损坏

    保护您的嵌入式软件免受内存损坏本文的目的是提供一种软件方法,解释如何处理存储设备(如小型 EEPROM 或闪存)中的内存数据集损坏
    发表于 12-24 07:27

    求助,如何使用密钥生成CMAC?

    我想用密钥获取CMAC值(仅验证甚至可以)。我正在使用修改后的“csec_boot_protection_s32k148”项目。初始化 CSEc 模块后,我使用给定的指令加载密
    发表于 04-10 06:34

    IMX6UL如何从安全存储 (SNVS) 读取或写入?

    我目前正在使用 YOCTO sumo linux 内核 L4.14.98-2.3.1 和 imx6ul。在我的应用程序中,我们需要将安全数据(例如密钥)存储在安全
    发表于 04-14 07:38

    内存有写入限制吗?

    我们正在构建一个设备来测量消耗。电路 ACS712 读取那一刻的消耗量,所以,我需要做一个每秒累加的方法。问题:内存有写入限制,所以我需要使用
    发表于 05-30 08:48

    SAP HANA备份方式和存储划分的解析

    SAP HANA是一种被设计成驻留在内存中运行的关系型数据库。通过使用内存中的数据平台,SAP HANA可以获得比运行在磁盘上的方式更好的整体性能。
    的头像 发表于 01-05 14:53 6508次阅读

    SAP S/4 HANA 与R3(ECC) 的区别

    自2015年起,SAP就推出了新一代商务套件基于内存计算数据库 SAP HANA 的下一代智能 ERP——SAP S/4 HANA产品,
    的头像 发表于 07-08 12:47 1690次阅读
    <b class='flag-5'>SAP</b> S/4 <b class='flag-5'>HANA</b> 与R3(ECC) 的区别

    SAP ECC,SAP HANASAP S/4之间的区别是什么?

    背景的人更好的理解SAP ECC,SAP HANASAP S/4HANA之间的区别。 Q1:什么是SA
    的头像 发表于 07-08 12:49 2718次阅读

    升级SAP S/4 HANA的意义与价值

    作为内存计算平台,SAP S/4 HANA是一款高性能分析型应用,它不仅可支持企业预置型部署,也能实现云部署模式,协助企业优化业务流程,智能管理业务运营,提供各项数据需求,以此制定更为明智的决策
    发表于 10-10 09:25 584次阅读

    SAP业务从ECC升级到SAP S/4HANA有哪些变化?有哪些功能得到增强?

    ,与财务的组件组成的SAP新近发布的简单财务应用。那么sap 由ECC升级到SAP S/4HANA有哪些变化和优势?增强了哪些功能?  1、
    的头像 发表于 10-29 21:37 422次阅读
    <b class='flag-5'>SAP</b>业务从ECC升级到<b class='flag-5'>SAP</b> S/4<b class='flag-5'>HANA</b>有哪些变化?有哪些功能得到增强?