A. 如何學習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調個參數還需要別人,競爭力就明顯弱了。
2. 資料庫開發
只會開發資料庫的Developer恐怕很難生存,因為目前絕大多數大型應用都不太會綁定某個資料庫,除了一些特殊產品以外,在資料庫層面做的開發都不會太多,絕大多數developer都是兼做資料庫的開發,但HANA不太一樣,由於其內存計算的特性,使用HANA必定要將應用邏輯下沉,這點造成了大量的HANA資料庫開發需求,舉個例子:未來隨著ECC on HANA的普及,ECC本身的很多應用邏輯都不一定下沉到HANA重寫,別說客戶自己的定製開發了,而客戶自己的定製開發恰恰又以查詢類為主,光把ABAP報表改寫到HANA的事就夠多的了,加上基於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集成,這是數據挖掘領域非常有用的功能。
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開發人員
以上答案來自於SAP中文學習網。
B. 誰能用比較通俗的語言幫我解釋一下SAP的HANA資料庫
因為sap一直使用甲骨文的資料庫,而兩家在市場是競爭對手,所以sap迫切要求擁有自己的資料庫這就是hana出現的原因。
簡單說hana就是所有的欄位都是key欄位,(增加了檢索的速度),形象說就是橫著看,豎著看,都有KEY
hana資料庫運行時,數據保存在內存中,這樣可以跳過硬碟,
計算機技術目前的瓶頸就是內存->匯流排->硬碟。其中大量的時間消耗在匯流排上了。
這樣一來hana檢索數據的效率比較快。
再要具體的,就不是一句兩句能說完的了,你需要去看SAP的資料
C. sap hana 用什麼資料庫
HANA
資料庫
提供高性能的數據查詢功能,用戶可以直接對大量實時業務數據進行查詢和分析,而不需要對業務數據進行建模、聚合等。