前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SAP HANA的特点

SAP HANA的特点

原创
作者头像
matinal
修改2020-11-19 14:16:40
1.2K0
修改2020-11-19 14:16:40
举报
文章被收录于专栏:SAP TechnicalSAP Technical

正文部分

第一:加速数据的访问。

1.把数据保存在内存中,(Using main memoryas the data store)通过下图我们可以看到内存的访问速度比磁盘快1,000,000倍,传统磁盘读取是5毫秒,内存读取是5纳秒。比SSD和闪存快1000倍。虽然寄存器和Cache的读取数据的速度比内存快,但在实际的数据处理中它们的使用是有限的。

根据计算机组成原理我们知道数据是从 磁盘----> 通过数据总线和控制器(RAID,I/O hub等)--->内存--->CPU Cache --->CPU进行数据处理(CPU寄存器)。

内存是直接与CPU cache进行数据传输的,数据传输速度远远大于磁盘。所以与数据保存在磁盘中相比,数据保存在内存中可以大大的提高数据库在存取数据的时间的性能优势。在传统的数据库中。由于内存存储的数据有易失性,系统掉电或者是重启内存中的数据就会丢失,针对这个SAP HAHA有一个后台的异步进程savepoint(Data persistence)定时的把内存数据存储到磁盘中。把数据存储在内存中解决的传统数据库在磁盘I/O读取的性能瓶颈,但是在出现了新的性能瓶颈是把内存中的数据加载到CPU Cache中,SAP HANA采取多处理器并发处理。

数据持久化(Data persistence)

2.硬件方面:服务器采用多核架构(每个刀片8 x 8 核心 CPU)多刀片大规模并行扩展,刀片服务器价格低廉,采用64 位地址空间 — 单台服务器容量为2 TB ,100 GB / 秒数据吞吐量,价格迅速下降,性能迅速提升。

3.软件方面:数据存储可以选择行存储或者是列存储,同时对数据进行压缩。

第二:把数据分开处理。

内存本地化:把大数据量和计算量分散到不同处理器

并行处理:不同的服务器之间也共享同一组数据

容灾性:单一的服务器的DOWN机将不影响任何计算

第三:最小化数据传输。(Minimizing datamovement)

1.压缩数据。(compress data)

尽管今天的内存容量允许把大量的数据存储在内存中,把数据进行压缩的目的没有直接用来提高性能,但把内存数据进行压缩还是可取的,它可以最大限度的减少数据从内存传输到CPU cache中。SAP HANA 采用数据字典的方法对数据进行压缩,用整数来代表相应的文本。数据库可以压缩数据和减少数据的传输。

2.把应用逻辑和计算由应用层转移到数据库层。(Pushingapplication logic to the database)

传统数据库中,一个应用程序在处理应用逻辑数据时,先把数据从数据库读出来,然后再进行相应的计算处理,最后处理后的数据写回数据库中。在数据库和应用程序传输数据包括在一个网络通信,那么网络资源的开销,延时,传输速率及及最大吞吐量都对它们之间的通信会产生限制。如果数据库能够执行计算和应用逻辑,不需要将数据发送回应用程序甚至可能减少数据交换的需要。这最大限度地减少传输的数据量。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 正文部分
相关产品与服务
文件存储
文件存储(Cloud File Storage,CFS)为您提供安全可靠、可扩展的共享文件存储服务。文件存储可与腾讯云服务器、容器服务、批量计算等服务搭配使用,为多个计算节点提供容量和性能可弹性扩展的高性能共享存储。腾讯云文件存储的管理界面简单、易使用,可实现对现有应用的无缝集成;按实际用量付费,为您节约成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档