【HANA系列】SAP HANA数据处理的理解与分析一

前言部分
大家可以关注我的公众号,公众号里的排版更好,阅读更舒适。
正文部分
SAP HANA处理大量数据速度快的机制理解
1:HANA使用列存储的数据管理优化数据存取
从列去读取数据库表,其他忽略
2:对于内存和CPU之间的访问速度差异,增加内核,压缩数据
3:使用列存储技术高效利用CPU的缓存。
行存储数据的读取方式容易造成内存的数据读取及高速缓存的丢失
4:利用新型CPU预读取的技术夹克数据的读取
就是读取一个缓存数据的同时,预读另一个缓存数据。
HANA采用了行列混合的存储模式
即在单一数据库系统中,能支持两种不同的数据存储模式。
传统意义上数据库表是一个二维表,由行和列组成。
行存储方式包含一条记录中所有的数据
而列存储方式则包含这一列中所有数据。
如下图演示:

这样一个数据库表的话,
行存储如下:

列存储如下:

一般认为,列存储对数据的读取优于行存储
行存储对数据的更新更加好。
所以,列存储适用于以下情况:
1:大量数据的统计计算和访问只会在需要访问的某几个单列中进行
2:对于需要经常对表结构进行改动的或者扩展的情况
3:对很多行记录和列字段进行频繁操作
4:当最主要的列中有很多重复数据的情况,可以对其进行数据压缩
行存储使用于以下情况:
1:在某个时间点只处理单行的记录。
2:需要访问这一记录的所有列信息,避免跳跃式访问读取。
3:列中包含最主要的不重复数据。
4:没有快速聚合或进行快速查询的需要。
5:数据库表中的记录不太多的情况。
更多内容,关注我的公众号吧。
【HANA系列】SAP HANA数据处理的理解与分析一的更多相关文章
- 【SAP HANA】SAP HANA开篇(1)
有幸当前工作能够接触到SAP S/4,能够接触到史上无敌的HANA内存数据库.HANA的技术我就不多讲了,感兴趣的人可以去百度一下.当然,有人想在本机安装HANA来学习,但前提是你得有128G内存以上 ...
- 如何在云端部署SAP HANA实战, Azure 上的 SAP HANA(大型实例)概述和体系结构
什么是 Azure 上的 SAP HANA(大型实例)? Azure 上的 SAP HANA(大型实例)是一种针对 Azure 的独特解决方案. 除了提供 Azure 虚拟机以用于部署和运行 SAP ...
- 学习SAP HANA SQL
学习SAP HANA SQL 语句(创建 EMP,DEPT,BONUS 和 SALGRADE测试表)--像学Oracle一样学习SAP HANA 标签: sap测试oraclesqltableda ...
- SAP HANA学习资料大全[非常完善的学习资料汇总]
Check out this SDN blog if you plan to write HANA Certification exam http://scn.sap.com/community/ha ...
- 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 ...
- 【转】SAP HANA学习资料大全[非常完善的学习资料汇总]
Check out this SDN blog if you plan to write HANA Certification exam http://scn.sap.com/community/ha ...
- 利用Veeam保护SAP HANA数据库
利用Veeam保护SAP HANA数据库 前言 针对越来越多的SAP HANA备份需求,我们Team翻译.整理.借鉴了Veeam 的SAP HANA 大神 Clemens Zerbe 和 Ali Sa ...
- 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 ...
- SAP NOTE 1999997 - FAQ: SAP HANA Memory
Symptom You have questions related to the SAP HANA memory. You experience a high memory utilization ...
随机推荐
- python_实现选课系统
校园管理系统 角色: 学校.学员.课程.讲师 要求: 1. 创建北京.上海 2 所学校 2. 创建linux , python , go 3个课程 , linux\py 在北京开, go 在上海开 3 ...
- (转) Weblogic 12c 集群部署和session复制
1.启动服务 首先在weblogic12c控制台,启动受托管服务server1.server2.server3. 2.将要部署的应用打包成war文件. 我用的是MyEclipse做的开发,可以用其自带 ...
- 被弃用的php函数以及用来替代的函数
下面列举了部分被弃用的函数: call_user_method()(使用 call_user_func() 替代) call_user_method_array() (使用 call_user_fun ...
- python 多线程、线程锁、事件
1. 多线程的基本使用 import threading import time def run(num): print('Num: %s'% num) time.sleep(3) if num == ...
- Python修炼之路-模块
模块 模块与包 模块:用来从逻辑上组织python代码(可以定义变量.函数.类.逻辑:实现一个功能),本质就是.py结尾的python文件. 例如,文件名:test.py,对应的模块名为:test 包 ...
- 对浏览器如何计算CSS的研究---------------引用
1. 加载CSS 在构建DOM的过程中,如果遇到link的标签,当把它插到DOM里面之后,就会触发资源加载——根据href指明的链接: 上面的rel指明了它是一个样式文件.这个加载是异步,不会影响DO ...
- ubuntu中查看AMD GPU 状态的办法
lshw -c video 运行命令:glxinfo | grep rendering 如果结果是“yes”,证明显卡驱动已经成功安装. 如果提示有问题,可能是系统里面没有安装mesa-utils,安 ...
- 16. ClustrixDB Rebalancer
管理平衡 Clustrix Rebalancer被设计成自动作为后台进程运行,以便跨集群重新平衡数据.介绍如何配置和监视rebalancer,但是大多数部署不需要用户干预. Rebalancer主要通 ...
- vue学习-day04(路由)
目录: 1.组件传值-父组件向子组件传值和data与props的区别 2.组件传值-子组件通过事件调用向父组件传值 3.案例:发表评论.使用ref获取DOM元素和组件引用 ...
- Spoj4060 game with probability Problem
题目链接:Click here Solution: 刚开始还以为博弈论加概率,然而并不是... 设两个状态:\(f(i)\)表示当前剩下\(i\)个石头时,先手的获胜概率,\(g(i)\)为后手的获胜 ...