公众号:SAP Technical
本文作者:matinal
 

前言部分

大家可以关注我的公众号,公众号里的排版更好,阅读更舒适。

正文部分

第一:加速数据的访问。

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)

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

【HANA系列】SAP HANA的特点总结的更多相关文章

  1. 【SAP HANA】SAP HANA开篇(1)

    有幸当前工作能够接触到SAP S/4,能够接触到史上无敌的HANA内存数据库.HANA的技术我就不多讲了,感兴趣的人可以去百度一下.当然,有人想在本机安装HANA来学习,但前提是你得有128G内存以上 ...

  2. 如何在云端部署SAP HANA实战, Azure 上的 SAP HANA(大型实例)概述和体系结构

    什么是 Azure 上的 SAP HANA(大型实例)? Azure 上的 SAP HANA(大型实例)是一种针对 Azure 的独特解决方案. 除了提供 Azure 虚拟机以用于部署和运行 SAP ...

  3. 学习SAP HANA SQL

      学习SAP HANA SQL 语句(创建 EMP,DEPT,BONUS 和 SALGRADE测试表)--像学Oracle一样学习SAP HANA 标签: sap测试oraclesqltableda ...

  4. SAP HANA学习资料大全[非常完善的学习资料汇总]

    Check out this SDN blog if you plan to write HANA Certification exam http://scn.sap.com/community/ha ...

  5. 1950261 - SAP HANA Database Backup Policy Recommendations and Regular Backup Script

    =====Symptom For SAP Business One, version for SAP HANA users, SAP HANA provides a range of database ...

  6. 【转】SAP HANA学习资料大全[非常完善的学习资料汇总]

    Check out this SDN blog if you plan to write HANA Certification exam http://scn.sap.com/community/ha ...

  7. 利用Veeam保护SAP HANA数据库

    利用Veeam保护SAP HANA数据库 前言 针对越来越多的SAP HANA备份需求,我们Team翻译.整理.借鉴了Veeam 的SAP HANA 大神 Clemens Zerbe 和 Ali Sa ...

  8. SAP HANA学习资料大全 Simple Finane + Simple Logisitic [非常完善的学习资料汇总]

    Check out this SDN blog if you plan to write HANA Certification exam http://scn.sap.com/community/ha ...

  9. SAP NOTE 1999997 - FAQ: SAP HANA Memory

    Symptom You have questions related to the SAP HANA memory. You experience a high memory utilization ...

  10. SAP HANA企业级培训系列课程<第一部分>

    No. 课程 备注 1 HANA概述 HANA 特点 2 HANA Server & Studio & Client 认识HANA Server \Client\ Studio, 熟悉 ...

随机推荐

  1. 我刚学OI

    我是新人,刚学OI,请问可持久化非确定状态AC自动分块维护线段平衡仙人掌优化最小费用最大流预处理混合图上莫比乌斯反演莫队带花舞蹈链并查集树状数组套主席树预处理动态DP分治FFT求多项式逆元对数函数的指 ...

  2. IDEA中Java目录结构

    IDEA中Java的目录结构 1.首先新建Project,选择Empty,新建空的项目 2.选择Module时候,需要选择JDK,JDK只需要选择到Java Home目录就可以了 3.创建好Modul ...

  3. Webpack4、iView、Vue开发环境的搭建

    导读 项目使用了 yarn ,一个快速.可靠.安全的依赖管理工具.yarn 是一个类似于npm的包管理工具,它是由 facebook 推出并开源,它在速度,离线模式,版本控制的方面具有独到的优势.此项 ...

  4. LeetCode107. 二叉树的层次遍历 II

    107. 二叉树的层次遍历 II 描述 给定一个二叉树,返回其节点值自底向上的层次遍历. (即按从叶子节点所在层到根节点所在的层,逐层从左向右遍历) 示例 例如,给定二叉树: [3,9,20,null ...

  5. Windows10测试低版本IE方法

    前端开发工程师可能了解IETester是一款IE多版本兼容性测试软件,但是只支持Windows Xp,Vista,7,8系统,Windows10是不支持的,网上所说的开启.net framework ...

  6. 封装RF keyword

    *** Settings ***Library SeleniumLibrary *** Keywords ***打开浏览器 [Arguments] ${url} ${browser} Open Bro ...

  7. SSM架构 (Spring 5.0.2)添加Jackson

    第一步添加jsckson的包 <dependency> <groupId>javax.annotation</groupId> <artifactId> ...

  8. linux--mongodb安装与配置

    linux下的mongodb的安装: 在mongodb的官网上下载:mongodb-linux-x86_64-rhel62-3.2.3.gz1.解压: tar -xvf mongodb-linux-x ...

  9. java 继承父类并实现接口、接口之间的多继承

  10. mysql 乐观锁、悲观锁、共享锁,排它锁

    mysql锁机制分为表级锁和行级锁,本文就和大家分享一下我对mysql中行级锁中的共享锁与排他锁进行分享交流. 共享锁又称为读锁,简称S锁,顾名思义,共享锁就是多个事务对于同一数据可以共享一把锁,都能 ...