「书评」SAP内存计算——HANA
因为工作关系,长期跟SAP打交道,所以去年就对HANA有了一些了解,只是公司目前的应用规模还较小,暂时没有上马HANA的打算,但是提前作一些学习还是很有必要的。正好清华大学出版社最近出版了这本《SAP内存计算——HANA》,便花了两周时间读了一下。
作为一项新兴技术,想要对它有更好的了解,除了通过官方资料以外,最重要的莫过于他人的成功经验。农夫山泉作为国内最早实施HANA的少数SAP大客户之一,他们的经验无疑是非常宝贵的。而本书的作者之一胡健先生正是前农夫山泉HANA项目实施团队的负责人,所以本书的内容可谓是经过实践考验的第一手资料。本书的另一位作者和轶东先生是SAP中国区方案与架构设计部总监,这又为本书提供了来自SAP官方的权威保证。
其实对于HANA来说,最大的困难在于如何让人理解什么是HANA?我曾经以为HANA只是SAP在收购Sybase之后,基于Sybase和SAP自己的MaxDB搞的一个新的数据库系统而已,花了很多时间才搞明白它并不只是把数据库放到内存中去处理这么简单,而是基于一个全新的思路创建的存储计算平台。本书第一章对此作了全面深入的解析。
之后的第二至第六章则从HANA的安装到各方面实施都作了相应的详细介绍,可作为有志于从事HANA的BASIS方面顾问工作的人学习实践。
第七章则是HANA在农夫山泉的实践介绍。这部分内容我曾经有幸在一些技术会议上学习过胡健先生的亲自分享,应该说HANA对于农夫山泉这样的企业来说,的确是作用巨大。
作为目前市面上少有的HANA方面的书籍,本书的主要内容还是比较入门级的,相对比较全面,但并不是很深入。期待以后会有更多更深入的书籍面世。
看完本书我也谈点自己对HANA的看法。
从技术上说,HANA通过列存储和压缩技术,结合大内存硬件,实现了大数据量的全内存处理,真正实现了业务的“实时”计算,对于改进企业决策效率,具有极大的作用。
就一般的企业发展流程来看信息化系统的发展,通常是从简单的财务管理软件开发,到ERP,再到数据仓库/商业智能。
这其中ERP更多的是业务日常数据处理,并不适合在其数据基础上作进一步分析和挖掘,原因就在于业务数据变化大,而分析和挖掘处理的数据量大,二者在同样的硬件基础上运行将会因为资源限制而造成相互的性能影响,所以才有了数据仓库这样的单独的数据分析挖掘平台和商业智能这样的展现平台。
虽然在独立的平台上作分析不会影响到业务流转,但是随着数据量的增加仍然会出现新的问题:
一是随着数据量的增加,分析工作量加大,想要挖掘出更深层次的信息,对于硬件的要求实在太高,于是有了所谓的“大数据”解决方案——将数据和分析工作做成分布式,通过堆硬件来实现。
二是随着数据量的增加,业务上要求的分析方式更多,在现有的硬件条件下,应用运行的时间过长,另外单独的数据库仓库平台由于数据抽取的非实时性,最终会影响业务决策的及时性。HANA就是为了解决这个问题而诞生的。
按农夫山泉的经验,单纯地将数据库换成HANA,可以使性能得到几百甚至上千倍的提升,即使在此基础上加上数据仓库和分析系统,也可能有上十倍的性能提升。这对于管理层及时了解企业的运作性况非常有帮助。
当然说这么多好处,主要还是对于像农夫山泉这样的大型企业来说的,中小企业的数据量还不大的时候,应该不会碰到这样的问题。
另外,除了HANA以外,企业计算还有一些别的高性能解决方案,比如Oracle的ExaData一体机。区别在于Oracle是基于自己的硬件和操作系统,并在此环境下专门优化了Oracle数据库组成的一体化解决方案,其性能之高,有相当部分也是基于超大内存的硬件和专用SSD存储实现。
相比之下,HANA是一种纯软件解决方案,它是运行于其它硬件厂商提供的经过SAP HANA认证的硬件和系统平台,与ExaData算是各有优缺点。
另外,HANA与SAP的其它产品——如ERP,BW数据仓库,BO商业智能产品——应该会有更好的配合度。
「书评」SAP内存计算——HANA的更多相关文章
- <<SAP内存计算——HANA>> 书评
<SAP内存计算——HANA>又是一本在地铁里读完的书,最近阅读量大增,都是托了地铁的福了. 一年多以前就在ITPUB里发过帖子问“SAP HANA归根揭底到底是什么?”,那时通过一些网络 ...
- loj #2044. 「CQOI2016」手机号码
#2044. 「CQOI2016」手机号码 内存限制:256 MiB时间限制:1000 ms标准输入输出 题目类型:传统评测方式:文本比较 上传者: 匿名 提交提交记录统计讨论测试数据 题目描述 ...
- 一本通1648【例 1】「NOIP2011」计算系数
1648: [例 1]「NOIP2011」计算系数 时间限制: 1000 ms 内存限制: 524288 KB [题目描述] 给定一个多项式 (ax+by)k ,请求出多项式展开后 x ...
- JavaScript 引擎「V8」发布 8.0 版本,内存占用量大幅下降
上周,JavaScript 引擎「V8」的开发团队在该项目官方网站上正式宣布推出最新的 8.0 版本.这次更新的重点主要集中在错误修复及性能改善上,正式的版本将在数周后随着谷歌 Chrome 80 稳 ...
- 「SAP技术」SAP 如何看序列号被包在哪些HU里?
「SAP技术」SAP 如何看序列号被包在哪些HU里? 事务代码SE16 ,表名OBJK, 输入物料号,序列号,HeadTable 输入值SER06, 查询结果如下, 根据objlist, 去表ser0 ...
- 「SAP技术」 SAP MM MPN物料的采购初探
「SAP技术」 SAP MM MPN物料的采购初探 1, MPN物料号与我方正常使用料号物料主数据之间的LINK关系维护 MPN料号 14000005 , 我方料号11000250 , 2,采购信息记 ...
- 一个只需要点 「下一步」就完成监控 Windows
Cloud Insight 此前已然支持 Linux 操作系统,支持20多中数据库中间件等组件,多种操作,多种搭配,服务器监控玩的其乐无穷啊!但想想还有许多 Windows 的小伙伴没有体验过,所以在 ...
- jvm系列(十):如何优化Java GC「译」
本文由CrowHawk翻译,是Java GC调优的经典佳作. 本文翻译自Sangmin Lee发表在Cubrid上的"Become a Java GC Expert"系列文章的第三 ...
- LibreOJ 2003. 「SDOI2017」新生舞会 基础01分数规划 最大权匹配
#2003. 「SDOI2017」新生舞会 内存限制:256 MiB时间限制:1500 ms标准输入输出 题目类型:传统评测方式:文本比较 上传者: 匿名 提交提交记录统计讨论测试数据 题目描述 ...
随机推荐
- iOS中JavaScript和OC交互
转载自:http://www.devzeng.com/blog/ios-uiwebview-interaction-with-javascript.html 还可参考的文章:http://blog.c ...
- hdoj 1060
代码: #include <stdio.h>#include <math.h> int main(){ int t; while(scanf("%d&qu ...
- vlc_input buffer管理 & 时钟同步(转)
vlc_input buffer管理 & 时钟同步 一.背景1.当播放网络视频流时(比如udp视频流),发送方(编码)和接收方(解码)是并行操作的,如果发送太慢(或因为网络原因出现延迟)的话, ...
- Linux抓包工具tcpdump详解
tcpdump是一个用于截取网络分组,并输出分组内容的工具,简单说就是数据包抓包工具.tcpdump凭借强大的功能和灵活的截取策略,使其成为Linux系统下用于网络分析和问题排查的首选工具. tcpd ...
- javascript——可以判断值的类型的函数
function classof(o){ return Object.prototype.toString.call(0).slice(8,-1); } Function.prototype.getN ...
- linux 监控系统缓存和cpu
a=`free |head -n 2 |tail -n 1 |awk '{print $7}'`if [ $a -ge 900000 ];then sync && echo 1 ...
- 在Lufylegend中如何设置bitmap或者sprite的缩放和旋转中心
最近两天有个lufylegend游戏引擎群的群友需要做一个项目,其中要解决的需求是:获取照相机拍摄的图片,根据图片的EXIF信息让图片显示为“正常”情况,并且需要给图片添加一些事件侦听.何为正常呢?就 ...
- js以json形式提交数据,后台接受
$("#savename").click(function(){ var fananname=$("#editname").val(); var jsonLis ...
- App Store生存指南
资格获取 如果已经有App Store开发帐号请跳过此节. App Store的资格获取其实一直以来都不算难,和其它事情一样,需要的只是耐心.现在苹果对申请者的文书手续要求已经比几年前简化多了 ...
- “layout_”下划线开头的属性
观看幕课网的视频的收获 “layout_”下划线开头的属性都是交给父容器去处理的属性,如: android:layout_width="match_parent" android: ...