【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 ...
随机推荐
- Java并发(基础知识)—— 创建、运行以及停止一个线程
在计算机世界,当人们谈到并发时,它的意思是一系列的任务在计算机中同时执行.如果计算机有多个处理器或者多核处理器,那么这个同时性是真实发生的:如果计算机只有一个核心处理器那么就只是表面现象. 现代所有的 ...
- navicat修改表的主键自增长报错
这周自己在构思一个项目的表的设计,由于是第一次,所以走了很多弯路,也遇到了几个问题,这里暂时贴上来. 我用PowerDesign设计出一部分关联表的ER图之后,导出了sql文件之后用navicat导入 ...
- [SCOI2016]幸运数字(线性基,倍增)
[SCOI2016]幸运数字 题目描述 A 国共有 n 座城市,这些城市由 n-1 条道路相连,使得任意两座城市可以互达,且路径唯一.每座城市都有一个幸运数字,以纪念碑的形式矗立在这座城市的正中心,作 ...
- VMware主机使用无线上网
VMware主机使用无线上网,默认的NAT连接在ubuntu下上不了网,需要把网络适配器改成桥接模式.
- Spring Boot 整合 AOP
一.示例 1.依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId& ...
- 【视频点播最佳实践】使用OSS SDK上传视频到点播
摘要: 场景 点播上传SDK缺乏需要的语言版本(如C/C++.Go等)或相应的功能(如网络流上传.追加上传),可以直接使用OSS的SDK进行上传. 准备工作 确认已开通点播服务并完成了相关配置.确认已 ...
- Puppet学习笔记(CentOS6.3+Puppet3.01)
Puppet学习笔记(CentOS6.3+Puppet3.01) 技术 Add comments Oct262012 下了决心,好好学习puppet,周末专门去参加一个puppet的培训,难得朋友那 ...
- 算法——得到数据流中前K大的数
用优先队列 public PriorityQueue<Integer> kthLargest(int k, int[]a) { PriorityQueue<Integer> q ...
- python 从入门到实践 第三章
在第3章,你将学习如何在被称为列表的变量中存储信息集,以及如何通过遍历列表来操作其中的信息 写注释 # 代码越长 标识好代码的重要性 越来越重要要求习惯:在代码中编写清晰,简洁的注释开始研究更复杂的主 ...
- C++ 值传递、指针传递、引用传递
1.值传递 (1)形参是实参的拷贝(这句话说明形参和实参是两个实体),改变形参的值并不会影响外部实参的值. (2)从被调用函数的角度来说,值传递是单向的(实参->形参),参数的值只能传入,不能传 ...