基于SaaS模式的信息系统架构优化研究与应用的论文
引 言
SaaS,即 Software as a Service,是 由 Salesforce 首先提出的,SaaS 服务所具有的优势主要体现在多租户以及可配置两个方面,这些特性对解决中小企业在软件构建、维护成本以及人力资源消耗等方面存在的问题有着良好的优势。这就使得 SaaS 的有效应用可以推动中小企业经营管理水平的提升。尤其在互联网与云计算技术不断发展的环境氛围下,使得 SaaS能够得到云环境所提供的强大的软硬件与基础服务方面的支撑。值得注意的是,SaaS 作用发挥也受到一些因素的限制。SaaS 所采用的应用软件必须是在服务提供商服务器上来部署的,用户以业务需求为基础,在应用 Internet 定制的前提下购买自身情况所需要的软件服务。此类模式在应用中让企业能够降低在购置软硬件、搭建以及维护设施等方面所支出的费用,减少企业在人力资源方面耗用所存在的问题,但是因为租户本身对自身所具有的数据信息是无法通过物理的方式来实现接触的,进而使得用户对该种模式的使用缺乏一定的信心。从用户的使用情况来看,用户的担心主要集中在数据隔离性以及服务安全性等方面,正是从这个层面来看,只有解决好SaaS架构在应用中所存在问题,才能够有效地推动 SaaS服务的发展。
1 SaaS 系统概述
SaaS 本身的含义是软件即服务,中文名称通常被称作软营或者软件运营,是云计算服务形式中之一。SaaS 本身是以互联网作为基础来提供软件服务的,其所具有的特性主要表现在以下几个方面:
① 基于 Internet 的在线服务性。SaaS 在应用中,利用 Internet 来面向使用者,使用者则以 Internet 为基础来通过在线访问的方式来取得自身所需要的软件与功能,也就是说,Internet 是该模式能够实现的必备因素。
② SaaS 具有按需租赁性。这是因为其本身是以租赁方式为基础把服务提供给包括企业或者单独用户在内的多个租户,用户不需要较大的费用支出就可以论次或者按照一定期限租赁的方式来实现 SaaS 服务的使用,进而使得用户实现了按需租赁的目标。
③ SaaS 具有资源共享性。该模式在应用中存在着多租户的概念,这就使得多租户之间能够在基础设施以及 SaaS 服务等方面实现共享,还可以以不同租户需求为基础来对共享度进行选择与设置。
④ SaaS 具有网络访问性。其本身需要通过各类方法的应用来确保访问的网络能够持续地高效,进而应给与用户提供较强的网络支持。
⑤ SaaS 具有按需自配置性。其本身在应用过程中是自助式服务,也就是说用户不需和提供者进行直接的交互,在用户有使用需求的情况下,可以按照需要进行配置或者设置功能,如用户可以按照自己的需要对系统与界面进行配置。
2 数据存取机制
SaaS 服务中最重要的便是如何对租户的数据进行存储与维护。从 SaaS 服务应用的层面来说,是将多个租户在一个数据层资源上实现集中,如集中在数据库服务器,与此同时还需要把多个租户能够独立地分开,让每个不同的租户能够在单独的物理资源上实现运行。通过 DaaS,即 Database as a service 的应用可以解决上述问题,如亚马逊的 SimpleDB。因为众多的租户间在数据访问方式以及数据结构方面非常相似,这就使得降低租户的支出成为可能。DaaS 产品在应用过程中,提供允许每个租户能够独立运行其所具有的应用程序方面的数据库管理系统。这样就会实现不同的应用能够通过不同的方式来实现对系统的访问。从数据存储模型应用的情况来看,比较常见的有独立数据库、共享数据库独立模式以及共享数据库共享模式3 类。独立数据库在应用中每一位租户所使用的是单独的一套数据库。共享数据库独立模式则是多租户使用一套数据库,该模式中不同的租户可以享有专属的租户模式。共享数据库共享模式则是所有租户使用一套数据库与数据表集。
3 SaaS 逻辑存储模型
SaaS 在应用过程中,由于业务领域以及租户发展方式等方面存在区别,使得数据模型存在着不同的特点。
3.1 元数据存储模型
软件开发商以 SaaS 平台所营造的开发环境为基础开发出与租户无关且能够面向租户具体业务的应用,并将这些在 SaaS 平台上进行部署,SaaS 平台通过映射机制的应用将这些转化为能够支持多租户的定制,同时发布到能够应用集市中来让用户进行租赁与使用。租户在承租后可以以自身实际业务需求为基础来实施具体的定制,多数情况下,一个租户需要对同一个 SaaS 应用做出多个虚拟应用的定制,需要使用不同的业务应用,在租户所确定的定制中存着一些共同的特征,进而降低租户在定制操作方面所耗费的精力与费用,避免出现重复的定制元数据,平台还能够将存着共性的定制进行泛化。
3.2 单稀疏表存储方案
单稀疏表方式指的是系统预先对一定数量的字段进行设置,这些所设置的字段的类型应为字符串,字段命名是 Extlnt[n],这里的 n 表示该类型的字段所出现的数目。在使用者提出扩展方面的需求时,系统就会通过单稀疏表中设置预留字段的方式来实现扩展数据的存储。单稀疏表存储方案的应用可以有效减少表的数目,同时还可以解决传统电子商务中存在的数据稀疏等方面的问题。
3.3 多稀疏表存储方案
多稀疏表的模式在应用中通过多个不同列数稀疏表的使用来替代原来存在的固定列数中稀疏表来存储租户所确定的定制数据,通过多个稀疏表控制表的建立来确定租户所具有的表所具体处于的稀疏表,同时通过对应的元数据表的建立来实现定制字段所描述信息的保存。
3.4 键值对存储方案
键值对的理念是把保存扩展数据值和原数据表实现分离,键值对在存储方面采取的是用行的形式来对记录行中的每一列进行存储,以访问键为基础来确定相应列值。此类存储方式在应用中不会导致空值的存在,从存储空间利用效率上来看,也要比稀疏表存储模型好一些。
4 结束语
本文阐述了目前所应用的 SaaS 可定制数据所具有的存储模型,在对各个模型进行分析的基础上,针对元数据驱动的键值对存储模型的情况实施了优化。通过研究确定了解决 SaaS 平台稀疏表中众多空值导致的存储空间浪费及存取性能下降等方面的问题。
本文标签:
[!--temp.ykpl--]