1.1.2 应用服务和辅助组件
除此之外,在SAP HANA系统中还有其他几个服务,这些服务是在SAP HANA版本不断升级时,陆陆续续被加入到SAP HANA中的。
(1)XS Server(Extended Application Services或XS服务器)
XS服务器当然也是SAP HANA系统的一部分,它就像一个内置Web应用服务器,能够让应用通过HTTP访问SAP HANA数据库。
从内部架构上看,XS Server其实也可以被视为一个Index服务器,只是XS服务器不具备Index服务器的数据存储的功能,并且XS服务器在其上多加了一个XS Layer,这使得SAP HANA能够处理来自HTTP的请求。
当部署在XS Server上的应用程序接收到外部的请求需要去访问数据时,这个SQL执行会自动链接到Index Server所存储的数据中。XS服务器和Index服务器之间是通过HDBNet(内部交换协议)方式进行通信的,这使得数据不需要通过网络传输到外部的应用服务器,直接在Index Server中运算完毕,然后传递给XS Server,在内部进行交换。
(2)Web Dispatcher(Web访问调度器)
Web Dispatcher被用来处理Web的Inbound和Outbound的服务,并且也可以作为前端应用服务器的自动负载和自动路由。
Web Dispatcher在过去的十几年中,一直作为SAP NetWeaver Web应用服务器的一部分存在,随着SAP HANA XS服务器的逐渐完善,Web Dispatacher也被放入到SAP HANA服务器中,并且为SAP HANA XS服务器提供Web访问的负载均衡服务,主要是为了将来的XS服务器可以进行分布式部署而设计。
(3)Complie Server(编译服务器)
编译服务器执行存储过程、XSJS,以及数据库对象的编译,它运行在SAP HANA中,但是不存储任何数据。
(4)Script Server(脚本服务器)
脚本服务器主要用来执行以C++编写的应用功能库。这个服务器需要手动开启,并非默认自动就启动的。在SAP Note 1650957中对这个脚本服务器有更为详细的说明,大家可自行阅读。
(5)SAP start Service(启动服务器)
这个服务器主要负责以正确的顺序启动和停止SAP HANA中的所有其他的服务,此外还会监视其他服务的运行状态,如果出现异常,就会立即重启这个服务。
提示信息:
本节介绍了SAP HANA所有的服务器组件,这些组件合并起来才能称为一个完整的SAP HANA系统。我们只需要对这些服务器组件有一个基本的认识,并且对其相互的关系有一个简单的了解就可以了,无须深究其细节和详细配置内容,这些是SAP HANA系统管理员更为关心的信息。
以一个Web访问的流程为例,浏览器在UI上发出一个查询数据的请求。首先,Web Dispatcher进行处理,转发给XS Server根据服务定义,发送SQL SELECT操作给Index服务器,然后Index Server根据Name Server中的数据分布信息去具体的数据分区中进行检索,最后返回给XS Server,再通过Web Dispatcher服务器发给浏览器。