如何区分 PaaS、IaaS 、SaaS?
这三个概念非常简单。
只不过在说它们仨的区别前,有个常识需要知道一下:
必读:软件的产生
我们传统开发一个软件,需要9个东西:
作为使用软件的人,左边的【应用】和【数据】,是离我们最近的部分。
比如最常见的:我们在某软件里提交了报销申请,其实我们就是上传了自己的报销数据到应用中。
最右边的【虚拟化】、【服务器】、【存储】、【网络】是制作一个软件的基础条件,除了虚拟化技术其他都是硬件,所以在云计算领域中,这块被称为基础设施。
它们在机房都能看到。
而中间的这些,就是利用最右边的基础设施搭建出的平台,从而承载最左边的【应用】和【数据】。
所以说,从左到右就是一个硬件逐渐软化(软件开发)的过程,IT技术在这个过程中扮演了必要角色:
但!
不是所有企业都具有独立开发一个软件的资本(钱、人、力缺哪个都不行)。
所以,云服务产生了。
搞清楚:Iaas、Paas、SaaS
大大小小企业,财力不同、问题不同,因此对于软件的开发,总有形形色色的需求。
经过演变,云服务逐渐分为三类:
第一种,云服务提供基础设施,我们可能听过某某说“租了哪里的服务器,准备自己搞个软件……”,其实就是Iaas。
第二种,云服务提供一个平台,企业自己设计应用,数据也由自己保管。这就是Paas。
第三种,云服务提供现成的软件,数据也全部上云。这就是SaaS。
如图:
从Iaas到SaaS的过程,企业需要付出的成本越来越小,云化的程度也越来越高,内部IT所需要做的事越来越少。
说到这里,应该都能get到三个的区别了。
新需求:ipaas和apaas
这俩大家一眼就能看出,它们都是从Paas衍生而来。
复习一下Paas——云服务提供一个平台,企业自己设计软件应用,数据也由自己保管。这就是Paas。
ipaas和apaas的产生,是因为企业在使用软件过程中,又遇到了难以解决的问题:
1、对于很多企业来说,SaaS都是固定功能的软件,对于自己需要个性化的需求难以满足,虽然软件开发能灵活满足自己的需求,但是无论是自研还是托管,开发和运维费用都极其高昂
3、一个软件解决不了所有问题,那就多堆几个软件,导致一个企业可能用了五六个软件,但都互相独立,无论是功能还是数据,都不能连起来
本来想通过信息化提高效率、解决数据难题的,却使得数据壁垒越来越厚、事情越做越多。
这可不行。
所以ipaas和apaas产生了。
……
首先,是企业的个性化问题。
堵死一大批企业的,其实就是软件开发的门槛过高。要找到懂开发又懂业务的IT太难了,业务人员为了开发去学编程也不是朝夕就能实现。
怎么才能提供一种框架,让业务人员不需要学代码就能自己设计出一个管理软件呢?这种模式就是apaas,从应用和数据层面入手,设计搭建工具与逻辑,实现零代码开发。
举个典型的apaas设计逻辑——通过【表单】上传数据并实现堆叠搭建,利用【流程工具】将业务点串联起来,借助【仪表盘】进行数据展现与分析。如图
而apaas从应用和数据层面入手,就足以看出,它趋向于PaaS和SaaS之间。
其次,就是打通企业内部的各个软件问题。
由于企业堆叠的各种SaaS软件,用着不同的主机和数据库,怎么将这些软件集成起来?这就需要一种技术,也就是iPaaS。
它从虚拟主机和数据库层面入手,创建一个中心生态系统来查看、管理和修改所有数据、基础设施和操作。从而轻松打通各个系统的数据与功能。
可以看出,iPaaS则趋向于IaaS和PaaS之间。
开发的更多可能性:API
关于apaas,上面也已经解释清楚了。发展到apaas这一需求,自然而然许多人就会有疑问:
如果按照apaas去搭建企业自身的云平台,供应商只是提供软件,那企业的数据就要存储在供应商的后台数据存储服务器,互联网公司应该对数据都很敏感,这样按照常人理解,不科学。
所以这就引出了API。
日常生活中,我们有很多类似API的场景,比如:
电脑需要调用手机里面的信息,这时候你会拿一根数据线将电脑手机连接起来,电脑和手机上连接数据线的接口就相当于“API接口”。
- 如图所示:
也就是说,企业可以在自己存储数据,如果需要用到软件功能,就通过API,将需要处理/展示的数据对接到软件中。
- 举个例子:
某科研院有一个自研的信息平台,用于管理业务数据。但他们曾面临一个问题——尽管有信息平台,却因为系统的独立性,数据的上传和备份,需要依靠人工在excel里来回操作,效率很低。
由于系统的开发周期长、成本高,他们将目光聚焦到现成的功能软件上。
后来通过API将简道云直接插入公司数据库,数据可自动上传至信息平台上并统一展示;再通过webhook把数据推送到服务器,实现自动备份。
在这一过程中,就是因为API接口,将内外部系统对接。不用二次开发,就直接实现了数据自动上传、备份的功能。