【HANA系列】SAP 一位SAP培训顾问的建议:SAP HANA应该如何学习?

前言部分
大家可以关注我的公众号,公众号里的排版更好,阅读更舒适。
正文部分
SAP HANA应该如何学习?
从HANA本质来讲大家都知道,就是一个数据库,和Oracle,SQL Server 没啥本质的区别,内存计算、列式存储也不是啥新玩意,所以学习HANA和学习一个新的数据库从这个角度看也非常类似,当然HANA有其非常独特的特性(其实哪个数据库没有),其中最重要最本质而且未来会一直延续的特性就是HANA和SAP其他产品之间千丝万缕的联系,这一点对学习HANA的人而言会存在一定的挑战,当然挑战就意味着机会。
HANA的学习路线(roadmap)也可以从其共性和特性出发来设计,下面只是个人的一些设想,仅供参考。
1. 数据库DBA
大家都知道,行业里无论哪种数据库一般都存在两个角色,DBA和Developer,DBA负责数据库的部署、设计、调试、监控和调优等等各项工作,类似SAP领域的Basis,Developer掌握数据库的开发语言和逻辑,开发各种数据库层面的内容。
我们先从DBA说起,我本人原来就是做SAP BASIS的,DBA不敢说精通勉强也算了解,HANA的DBA和其他数据库的DBA本质没啥区别,但DBA向来是一个需求少但是要求高的角色,一般的DBA大多会和其他角色合并,例如SAP系统的DBA和BASIS就是不分家的,非SAP产品DBA可能和网管或者类似角色合并,只有在很大规模的企业里会有专职DBA存在。HANA的DBA入门不难,但DBA最值钱的部分-性能调优,这个需要靠时间积累和环境的培养,恐怕一时半会除了SAP不太会出现优秀的HANA DBA。从这个角度出发,建议大家把HANA DBA作为自己必须掌握的技能,除了调优以外的知识都需要储备。以后出去做HANA,装个HANA调个参数还需要别人,竞争力就明显弱了。
建议学习资料:HANA Academy ,SAP Help 上的PDF
适用对象: 所有HANA从业者
2. 数据库开发
只会开发数据库的Developer恐怕很难生存,因为目前绝大多数大型应用都不太会绑定某个数据库,除了一些特殊产品以外,在数据库层面做的开发都不会太多,绝大多数developer都是兼做数据库的开发,但HANA不太一样,由于其内存计算的特性,使用HANA必定要将应用逻辑下沉,这点造成了大量的HANA数据库开发需求,举个例子:未来随着ECC on HANA的普及,ECC本身的很多应用逻辑都不一定下沉到HANA重写,别说客户自己的定制开发了,而客户自己的定制开发恰恰又以查询类为主,光把ABAP报表改写到HANA的事就够多的了,加上基于HANA的新的开发,这些预计未来会有较大的需求。
建议学习资料:HANA Academy ,SQL Reference等
适用对象: ABAP开发人员,HANA开发人员
3. 数据挖掘和分析
这是HANA的强项,也是HANA最早版本发布时的目标,想想HANA本身这个名字就明白了。这个角色牵涉的方面很多我只谈一下SAP领域的内容。数据分析也好挖掘也好,一般都会有几个环节,一是获取源数据,二是模型建立和开发 三是展现。对于想从事这方面工作的同学以下产品是需要了解和掌握的: 获取数据:SAP一系列做数据复制的工具产品:SLT,BODS,DXC Sybase (目测估计以后不大会用了),甚至第三方的ETL工具模型建立和开发:BW,BOE(包括IDT,Universe)以及关键的HANA Studio(其实是指HANA里模型建立和开发的技术),展现:BO的水晶报表,Explorer ,dashboard 等,或者第三方的展现工具,国外看到过有人用PowerBuilder开发HANA应用的。
延伸部分:HANA内置了业务逻辑库和预测算法库,还可以和R Language集成,这是数据挖掘领域非常有用的功能。
建议学习资料:HANA Academy ,SAP Help等
适用对象:原SAP BW/BI/BO从业人员 数据挖掘和分析人员
4 HANA原生开发
HANA最有吸引力也是最有生命力的部分其实在于其原生的开发,HANA内置了一个轻量化的JAVA App server,可以开发server端的js,MVC模式的交互界面,甚至移动端的UI。同时和HANA数据库内嵌集成,性能比外部系统访问HANA还好。我们看到的SAP HANA的很多有意思的案例都是基于HANA的原生开发,例如NBA,环球帆船大赛,国内的农夫山泉等,这些案例几乎都和SAP传统的业务系统没有任何关系,可以说已经超出了SAP的范畴,真正把HANA当一个平台类的软件来使用,这里的想象空间是巨大的,同样涉及到的技术也非常广泛,例如HANA和开源平台的集成(hadoop)等等。这里个人能力有限,只能大致谈一下HANA里面的开发技术。主要有基于HTML5的SAPUI5界面开发,Server Side Java Script的业务逻辑开发,OData/REST Service的数据接口开发以及HANA数据库本身的开发。
建议学习资料:HANA Academy ,SAP Help,SCN HANA开发专版
适用对象: 有JAVA开发经验的开发人员,HANA开发人员
【HANA系列】SAP 一位SAP培训顾问的建议:SAP HANA应该如何学习?的更多相关文章
- 【MM系列】SAP S/4 HANA的物料编码40位设置
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[MM系列]SAP S/4 HANA的物料编码4 ...
- 【HANA系列】对话SAP全球CEO孟鼎铭:未来最大的发展机遇属于中国中小企业
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]对话SAP全球CEO孟鼎铭:未来 ...
- 【HANA系列】SAP 【第一篇】EXCEL连接SAP HANA的方法(ODBC)
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP [第一篇]EXCEL连接 ...
- 【HANA系列】SAP HANA XS创建XSJOB后台执行
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA XS创建XSJ ...
- 【HANA系列】SAP HANA的特点总结
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA的特点总结 ...
- 【HANA系列】SAP HANA XS使用JavaScript编程详解
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA XS使用Jav ...
- 【HANA系列】SAP HANA XS使用Odata标志全解析
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA XS使用Oda ...
- 【HANA系列】SAP HANA XS使用Data Services查询CDS实体【二】
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA XS使用Dat ...
- 【HANA系列】SAP HANA XS使用Data Services查询CDS实体【一】
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA XS使用Dat ...
随机推荐
- HashMap,LinkedHashMap,TreeMap的有序性
HashMap 实际上是一个链表的数组.HashMap 的一个功能缺点是它的无序性,被存入到 HashMap 中的元素,在遍历 HashMap 时,其输出是无序的.如果希望元素保持输入的顺序,可以使用 ...
- Android 热修复(一)
名词: dex:java文件编译class 然后生成 dex文件在Android上运行: 1.dex分包: 2.找出出现问题的dex文件进行替换操作 3.下载dex文件,静默替换有问题的dex文件,进 ...
- 【每日一包0008】arr-diff
[github地址:https://github.com/ABCDdouyae...] arr-diff 多个数组比较,过滤出第一个数组独有的内容 用法:arr-diff(arr1, arr2, ar ...
- 什么情况下JVM会立即对类进行初始化
虚拟机规范严格规定了有且只有5种情况必须立即对类进行“初始化”(加载.验证.准备等阶段在此之前开始). 遇到new.getstatic.putstatic.invokestatic等4条字节码指令时. ...
- 什么是弹性盒子 ( Flex Box)?
㈠什么是弹性盒子? 弹性盒子是 CSS3 的一种新的布局模式.引入弹性盒布局模型的目的是提供一种更加有效的方式来对一个容器中的子元素进行排列.对齐和分配空白空间. 弹性盒子由弹性容器(Flex con ...
- jquery preventDefault()方法 语法
jquery preventDefault()方法 语法 作用:preventDefault() 方法阻止元素发生默认的行为(例如,当点击提交按钮时阻止对表单的提交).大理石平台价格 语法:event ...
- 计算机网络(七),TCP与UDP的区别
七.TCP与UDP的区别 1.面向连接VS无连接 TCP面向连接而UDP面向无连接的,TCP是和单对单传送数据,UDP适合多波发布 2.可靠性 TCP利用握手,确认,重传机制提供了可靠性保证,UDP可 ...
- 一组相关联的问题:“sudo: unable to resolve host ###: Connection timed out”、软件启动速度超慢、IPv6无法使用
造冰箱的大熊猫@cnblogs 2018/9/15 近日陆续发现计算机出现几个问题,最终发现这些问题实际上是由同一个原因导致的 问题1:无法使用IPv6 问题2:无论是启动Emacs GUI还是在命令 ...
- TTTTTTTTTTTTTTTTTT hdu 1800 字符串哈希 裸题
题意:意思是有若干个飞行员,需要在扫帚上练习飞行,每个飞行员具有不同的等级,且等级高的飞行员可以当等级低的飞行员的老师,且每个飞行员至多有且只有一个老师和学生.具有老师和学生关系的飞行员可以在同一把扫 ...
- Mybatis 结果映射下划线转驼峰
mybatis 结果映射下划线转驼峰 Spring Boot 配置: #下划线转驼峰 mybatis.configuration.map-underscore-to-camel-case=true m ...