2021.05.30 SAP 業務技術平台 Business Technology Platform 的前世今生

Neo Kung
Neo 的學習筆記
10 min readMay 30, 2021

前言

在 SAP 也工作有 3 年了,熟悉外商軟體的朋友會知道,
這些外商最愛做的事情不外乎

  • 改名字
  • 一堆縮寫

SAP 也不例外,我主要負責的產品是 SAP 的雲端應用程式開發與整合平台 (Development & Integration)

現在的名字叫 SAP 業務技術平台 Business Technology Platform (BTP)
呵呵 ··· 現在還是,明年就不一定了

想藉這個機會解釋一下 SAP BTP 的前世今生,到底這孩子怎麼生出來的?
哈哈哈。

SAP BTP 是 ··· 什麼碗糕

比較正式一點的定義

在 Cloud Computing 的世界,
根據美國 NIST: National Institute of Standards and Technology 的定義,
有 3 種不同的 Service Model

  1. SaaS (Software as a Service)
    — 套裝軟體 e.g. Facebook, Twitter, Salesforce, SAP Cloud ERP
  2. PaaS (Platform as a Service)
    — 一堆開發工具 & 服務讓你開發套裝軟體
  3. IaaS (Infrastructure as a Service)
    — 提供運算資源、儲存等底層服務如虛擬機 VM, SSD, HDD, Load Balancer, CDN, …

SAP 業務技術平台 Business Technology Platform (BTP)
屬於第 2 種:PaaS 平台
利用 SAP 提供的平台服務進行開發 & 整合

接下來,套句 Amber 常跟我講的:可不可以用民眾的語言來比喻!!!

民眾的語言-Lego as a Service

網路上其實有蠻多對 Cloud Service Model 的比喻
我自己想了半天,蛋糕的、餐廳的都看了,
但我總覺得他們的比喻在 PaaS 上解釋不太通,
因此我自己以 Lego 做比喻,也是我最常和客戶解釋的方式。

  • 傳統地端 On-Premise
    從拼裝和擺放樂高積木的空間、積木到拚好之後怎麼玩,全部自己想辦法!拼起來的東西好不好玩,自己負責。
  • 基礎設施為服務 IaaS
    在樂高店就有個空間讓你拚樂高,提供積木,你要自己想,要拚什麼。
  • 平台服務為服務 PaaS
    除了有空間和積木這些基礎之外,主題風格、相容的小套件
    (像是雷射槍、花圃這種樂高很難拚出來的)以及
    拼裝建議(通常怎麼拚會好玩)都一同提供,但你還是要自己拚。
  • 套裝軟體為服務 SaaS
    您別費心了,樂高店都拚好了,您就來玩吧。空間內提供相容的小套件和積木本身讓你按照自己的需求,再去對套裝樂高做有程度的修修改改。

SAP BTP 業務技術平台就是這樣的存在,它是一個平台服務 (PaaS)
上面有很多
做好的功能包(類似樂高小套件)、建議的開發場景與方式
(樂高拼裝建議和主題風格),你要按照自己的使用場景和個性化需求
去拼拼湊湊。

SAP 地端的技術平台 SAP NetWeaver

Evolution of the SAP Basis and SAP NetWeaver

SAP 最廣為人知的明星產品,莫過於 SAP ERP
從早年的 SAP R3 到後來大部分客戶
使用的 SAP ERP ECC (Enterprise Central Component)

但除了 SAP ERP 之外,企業客戶也有很多延伸需求,比如說

  • 資料倉儲 (Data Warehouse)
  • 搭建入口網站 (Enterprise Portal)
  • 簽核流程(Business Process Management ; BPM)
  • 跨系統資料交換 (EDI 電子下單、上傳電子發票、流程整合等)
  • 主數據整合與管理(多 ERP 產品/客戶主檔清理)
  • 自開發應用需求
  • 更多...

在這樣的背景下,SAP 的企業級應用程式開發與整合平台 NetWeaver
就於 2004 年應運而生

除了前述的 Portal, BPM, Integration, Master Data Management 等功能外,NetWeaver 還支援 Java EE 開發,SAP ERP 本身使用的程式語言是
ABAP,加上 Java 後希望能吸引更多 非 SAP 圈背景的開發人員加入。

分為 NetWeaver ABAP Stack 和 Java Stack,也可以並存,叫 Dual Stack。

SAP 提供的開發工具叫 NetWeaver Developer Studio (NWDS),
是基於 Eclipse,由 SAP 提供的開發插件而成的開發環境。

SAP 第一代雲端技術平台 — SAP NetWeaver Cloud

隨著 Cloud Computing 的興起,SAP 也決定是時候要推出雲端產品
不管是 ERP, 資料庫還是其他套裝應用都要往上搬

而當時,底層的基礎架構,還是 SAP NetWeaver,
但又為了符合雲端的特性
要能讓用戶自己進去開開關關,即時訂閱

因此,在 SAP NetWeaver Cloud 上的開發環境被稱為
NEO (NetWeaver On-Demand)2012 年推出

是的,你沒看錯,跟我同一個名字,真是夠巧了。

我當初進公司時也覺得很扯,還有人以為我是 SAP 德國高層的小孩。
但我真的是自己官網投履歷,一關一關面試進去的...

NetWeaver Cloud 仍然是基於 Java 的平台,也提供像 Portal, BPM, Integration 等服務,但並非全部把地端的往雲端上裝
有一些服務經過翻新改寫。

SAP 第一代雲端技術平台 — SAP HANA Cloud Platform (SAP HCP)

SAP HANA Cloud Platform Overview

同一時間,SAP 新一代的 ERP 名為 SAP Business Suite 4 SAP HANA
(S/4 HANA),也在開發當中,最大的轉變之一,就是底層的資料庫
從原本 ECC 年代支援的 Oracle, MSSQL, IBM DB2, Sybase ASE 轉換為
SAP 自家開發的 In-Memory 資料庫 — SAP HANA

SAP S/4 HANA 到後來在 2015 年正式推出

SAP 就想 ‧‧‧ 以後我所有的套裝軟體或是週邊開發,都要以 HANA 為基礎
也因此後來我們看到,很多產品名稱都有 HANA 在裡面,S/4 HANA (ERP), C/4 HANA (CRM), HANA Enterprise Cloud (Managed IaaS), … 等

當然,雲端平台也不例外。

2013 年,NetWeaver Cloud 就改名為 SAP HANA Cloud Platform (HCP)

最主要的差別當然是把 SAP HANA 資料庫變成核心服務,並逐漸將許多以前 NetWeaver 的服務一個一個往雲端上重作。

但,SAP 很清楚,NetWeaver 的架構並沒有辦法真正滿足「雲的特性」
它畢竟還是上一個時代設計的平台

  • 自服務 (Self-Service)
  • 高可用性 Availability (服務隨時能用沒有 Downtime)
  • 彈性 Elasticity(Workload 能彈性擴容,變大變小)
  • 延展性 Scalability(Workload 能迅速創造/消滅分身)

因此,正在找尋下一個世代 SAP 雲端的核心平台

而這時,Pivotal 所開發的 Cloud Foundry 同時被 Microsoft Azure, Google Cloud Platform, SUSE 等大型廠商採用。

SAP:嘿嘿,Cloud Foundry,就是你了

SAP 雲平台 — SAP Cloud Platform (SCP)

到了 2016 年,Cloud Foundry 在 HCP 上推出 Beta

到了 2017 年,Cloud Foundry 在 HCP 上正式推出

同時,2017 年 HCP 也改名為 SAP 雲平台 — SAP Cloud Platform (SCP)

Cloud Foundry 真正能滿足前面所述 4 大雲的特性
並支援各種應用程式語言的執行,變得更開放。

也不斷再加上整體平台服務的廣度與深度。

SAP 官方建議的是 Java, Node.js (Server-Side JavaScript) 和 Python
因有提供對應的 Enterprise Support 和開發用工具 & Library。

很多朋友可能看過 / 做過 HANA 1.0 附上的 Application Server 名為
Extended Application Service, Classic (XSC) 開發 XSOData, xsjs...,
以及 HANA 1.0 SP09 後的 Extended Application Service, Advanced (XSA)
究竟這跟 HCP, SCP, BTP 有什麼關係?我在之後的文章會再白話解釋。先爆料一下,XSA 就是把一個小的 Cloud Foundry 作為 Application Server
裝在 HANA 上/旁邊。

SAP 業務技術平台 — SAP Business Technology Platform (SAP BTP)

SAP Business Technology Platform Overview

到了 2021 年,也就是今年,SAP 正式把品牌名稱從 SAP Cloud Platform (SCP) 改為 SAP Business Technology Platform (BTP)

除了改名字以外,說真的有什麼不同嗎?

我看到的,是 SAP BTP 變得更兼容並蓄

  1. SAP BTP 的開發重點還是在 Cloud Foundry 上,沒有太多新服務
    重點是「既有服務做深」
  2. Runtime 環境除了 Cloud Foundry 多了 2 種選擇
    Kubernetes (Kyma Runtime) 以及 ABAP
  3. 不再像是平台剛推出時,天天喊 ML, IoT,而是回歸客戶最原本的需求,主推 Extension (套裝軟體延伸) 以及 Integration (跨系統資料整合)

小結

常常見客戶時聽到:阿,你們又換名字嗎?
哈哈...我真的懂,我也不願意。

我的確有看到 BTP 平台的成長,特別是在開發工具的改進、資料整合服務的用戶體驗,以及對客戶 Adoption 的投入

但身為每天在裡面動手做事的人,還是看到蠻多難關要克服的

也是我開始寫這些 Blog 的用意,希望能讓一起學習的朋友,少踩一些雷。

關關難,關關過吧!

Neo Kung | 2021.05.30

--

--

Neo Kung
Neo 的學習筆記

Cloud Technology Presales at SAP, Broadway Musicals Enthusiast, Stand up Comedy lover, Google Local Guide Level 9, NBA Lifelong Fan, GICHT! English Study.