内容


在 UNIX 环境下部署高效的 IBM SPSS Modeler Server

Comments

Modeler Server 架构和系统特点

IBM SPSS Modeler Server 作为企业级数据挖掘工作平台,与一个或多个 IBM SPSS Modeler 安装程序一起在分布式分析模式下不间断运行。它采用三层分布式基础架构,如图 1 所示,通过网络与 Modeler 和数据库相连接,服务器和客户端计算机共享软件操作项。借助分布式基础架构,多数处理将在服务器计算机上进行。最终用户执行某个 Stream 时,SPSS Modeler 会将此 Stream 的描述发送给服务器。服务器将判断哪些操作可以在 SQL 中执行并创建相应查询。这些查询可以在数据库中执行,执行后得出的数据将传递给服务器来进行无法用 SQL 语言描述的处理。处理完成后,仅将相关结果回传给客户端。安装和使用 SPSS Modeler Server(相对于独立的 SPSS Modeler)有诸多优势,尤其是在处理大型数据集合。

图 1. IBM SPSS Modeler Server 基础架构
图 1. IBM SPSS Modeler Server 基础架构
图 1. IBM SPSS Modeler Server 基础架构

Modeler Server 基本部署和配置管理

操作系统及最低硬件和软件要求

以 Modeler Server 15 为例,其支持的 UNIX 操作系统如表 1 所示。

表 1. 支持的 UNIX 操作系统
操作系统版本x86x64PowerPCSPARC-64IA-64IBM Z
IBM AIX6.1 or 7.1/ / X / / /
HP-UX11i v3 / / / / X /
Red Hat Enterprise Linux5.x or 6.xXX / / / X
Oracle Solaris9.x or 10 / / / X / /
SUSE Linux Enterprise Server10 or 11 / X / / / /

硬件 : PowerPC 处理器,233MHz 或速度更快。
IBM System p 用于 IBM AIX;Itanium 处理器用于 HP-UX;UltraSPARC II 用于 Solaris;Pentium 或 Pentium 级处理器或更高用于 32 位 Linux;x64(AMD 64 和 EM64T)处理器系列或 IBM System s390x 用于 64 位 Linux。
最小可用磁盘空间推荐 2GB。
RAM 推荐 4GB。

安装 Modeler Server 的三种模式

Modeler Server 的安装程序是在 UNIX 平台上可执行的以 bin 为扩展名的程序包。例如 ZLinux 平台上 Modeler Server 15 的安装程序为 modelerserverzlinux64.bin。安装程序前,需要有安装目录的读写权限,然后检查安装程序要使用的临时目录和安装目录是否有足够的空间。默认情况下,IBM SPSS Modeler Server 会安装到程序包下的 /IBM/SPSS/ModelerServer/"version",也可以在图形安装向导或命令行安装中更改此路径。如果要运行无提示安装程序,可在 installer.properties 中设置 USER_INSTALL_DIR 的值。

  1. 图形安装

图形化安装可以显示友好的用户界面,并设置各项安装参数,如安装路径等。运行图形安装安装向导,需要 X Window 系统的支持。具体方法是在 Windows 平台上运行 Exceed 软件,并将图形界面重定向到 Windows 机器上。首先在 Windows 端安装 Hummingbird Connectivity 应用程序包,然后运行其中的 Exceed 程序,等待连接。在 UNIX 端,先运行命令 export DISPLAY=<ip_address>:0.0,其中 <ip_address> 为 Windows 机器的 IP 地址。然后在安装程序所在目录下,运行 ./<installer_name>,其中 <installer_name> 指以 bin 为扩展名的安装程序文件。安装程序加载完成后,安装向导窗口就会出现在 Windows 桌面上,然后按照安装向导所给的指示完成安装过程。

  1. 命令行安装

使用命令提示符来指定安装参数,在 UNIX 上运行 如下命令:

 . /Chmod 777 <installer_name> 
 ./<installer_name> -i console

在安装程序加载完成后,控制台程序会等待输入安装参数。解压包后选择 Locale,然后输入安装路径继续安装进程,其中进度条显示了安装的进程直到安装完成。

  1. 无提示安装

无提示模式是在没有任何用户交互的情况下启用安装。安装参数是一个属性文件 installer.properties,从 DVD 根目录下的 UNIX/Administration 目录复制到安装程序的位置,参数如下所示:

 INSTALLER_UI=silent 
 LICENSE_ACCEPTED=true 
 USER_INSTALL_DIR=<value>

第一行参数使安装程序进入静默安装模式,第二行参数使安装程序自动接受许可协议而不是等候用户选择,第三行参数用 <value> 指定 Modeler Server 所需的安装路径。此路径不能含有空格。如果要安装到默认安装目录,注释掉此行,不要将其设置为 <value>。 指定了安装路径后,保存属性文件,运行如下命令即可开始安装。

 ./<installer_name> -f installer.properties

Modeler Server 后台程序管理

  1. 启动 Modeler Server 后台进程

Modeler Server 安装成功后,为了便于使用和管理,需要在后台将进程启动起来。作为守护进程运行,Modeler Server 默认以 root 权限运行。通过运行安装路径 bin 下的启动脚本 modelersrv.sh 来启动应用程序,必须从该位置运行启动脚本,如下所示:

 sudo ./modelersrv.sh start

为了确保系统上的内核函数限制对 Modeler Server 的操作,其数据、内存和文件应在 Modeler Server 环境内设为无限。添加如下命令至 modelersrv.sh,然后重新启动 Modeler Server。

 ulimit – d unlimited 
 ulimit – m unlimited 
 ulimit – f unlimited
  1. 查看 Modeler Server 的状态

通过使用 Sudo ./modelersrv.sh list 命令可以获取相关各服务器进程正在运行的信息,并报告进程的状态。果后台程序正在运行,命令的输出列表中的第一个进程就是刚刚启动的守护进程。这就意味着 Modeler Server 已经就绪,可以接受来自终端用户的连接请求了。

  1. 停止 Modeler Server 后台进程

在 Modeler Server 目录的 /bin 子目录下运行 Sudo ./modelersrv.sh shutdown 停止最近一次启动的后台进程。

  1. 处理不响应 Modeler Server 后台进程

Modeler Server 进程可能由于多种原因而不响应,包括其系统调用或 ODBC 驱动程序调用被堵塞(调用不返回或返回用时很长)的情况。UNIX 进程出现这种情况时,可使用 UNIX kill 命令将其清理,如下所示:

 sudo ./modelersrv.sh stop 
 sudo ./modelersrv.sh kill

Modeler Server 部署策略和实例说明

Modeler Server 具有若干控制其行为的配置选项,可以通过两种方式设置这些选项:使用 Modeler Administration Console 应用程序和配置 options.cfg 文本文件。编辑文件需要访问 Modeler Server 文件系统,而通过 Modeler Administration Console 可以授予任何具有用户帐户的人员调整这些选项的权限。同时,Modeler Administration Console 还提供了服务器进程的其他信息,从而使用户能够监视使用情况和性能。与编辑配置文件不同,大多数配置选项都可在不重新启动 Modeler Server 的情况下进行更改。

部署策略 1 后台文件手动配置

options.cfg 文件位于 Modeler Server 安装路径的 config 目录下。每个设置由逗号分隔的名称 - 值对表示。例如更改默认侦听端口,Modeler Server15 守护进程的默认侦听端口为 28052,如果需要启动多个后台程序,直接使用 start 命令会导致失败。因为 28052 端口已被占用,可以通过修改此默认端口来解决问题。在第二次启动前,找到配置文件 options.cfg 中的 port 元素,将其属性 value 值由 28052 改为一个新的不会冲突的值,如 28555,然后再启动后台程序。options.cfg 中的大多数配置选项均可使用 Modeler Administration Console 来进行更改,而不用手动配置文件。

部署策略 2 Administration Console 配置管理

Modeler Administration Console 应用程序可提供一个用以监控和配置 SPSS Modeler Server 安装程序的控制台用户界面。该应用程序只能安装在 Windows 计算机上,但是可以管理安装在任何受支持平台上的服务器。Modeler Administration Console 应用程序提供了一个共享图形界面,通过此界面可以连接、配置和监视多个服务器,如图 2 所示:

图 2. Modeler Administration Console 界面
图 2. Modeler Administration Console 界面
图 2. Modeler Administration Console 界面
  1. 使用 Modeler Administration Console 配置访问权限

首先,要在 options.cfg 文件中对 administrators 行进行控制使用 Modeler Administration Console 访问 SPSS Modeler Server 的权限,默认情况下该行是被注释掉的,因此用户必须编辑此行以便将访问权限赋予特定用户,或使用 * 将访问权赋予所有用户,示例如下:

 administrators, "*"
 administrators, "username1,username2,username3"
  • 行必须以 administrators 开头,并且条目必须用半角双引号引起来。条目字符 区分大小写。
  • 用半角逗号分隔多个用户 ID。
  • 禁止使用域名作为 Windows 帐号。
  • 要特别注意"*"的使用。一旦设置为"*",则表示具有 IBM® SPSS® Modeler Server 的有效用户帐号的任何用户均可以登录和更改配置选项。
  1. SPSS Modeler Server 连接

使用 Modeler Administration Console 来配置管理网络上的 SPSS Modeler Server,首先需要指定与每台 SPSS Modeler Server 的连接,然后逐个登录每台服务器。

创建服务器连接:

  • 确保 Modeler Server 服务已启动。
  • 选择"文件"菜单上的新建,然后选择管理的服务器连接。
  • 在向导首页,输入服务器连接的名称。名称供用户自己使用,应该是描述性质的名称,例如,生产服务器。确保已将"类型"设为管理的 IBM SPSS Modeler Server,然后单击下一步。
  • 在第 2 页,输入服务器的主机名和 IP 地址。如果更改了默认的端口,则请输入端口号,然后单击完成。新服务器连接即显示在"服务器管理员"窗格中。如果要执行管理任务,则须登录到 Server。
  • 在"服务器管理员"窗格中双击选择用户要登录的服务器。在"登录"对话框中输入用户凭证(使用服务器主机的用户帐号)后确定。如图 3 所示。如果登录失败并显示无法获取服务器上的管理员权限的消息,最有可能的原因是未正确配置管理员的访问权限。
  • 登录到 SPSS Modeler Server 后,可以看到服务器名称下方显示的两个选项,即配置和监视。
图 3. 登录界面
图 3. 登录界面
图 3. 登录界面

连接 / 会话的设置,如图 4 所示:

图 4. 连接 / 会话设置界面 1
图 4. 连接 / 会话设置界面 1
图 4. 连接 / 会话设置界面 1

最大连接数– 1 表示无限制。端口号中如果默认端口 (28052) 已被其他应用程序使用,则须更改端口号。最终用户必须知道端口号才能使用 SPSS Modeler Server。 例如若设最大连接数为 2,如图 5 所示:

图 5. 连接 / 会话设置界面 2
图 5. 连接 / 会话设置界面 2
图 5. 连接 / 会话设置界面 2

先用两个不同的 modeler 客户端连到 modeler server, 当第三个 modeler client 连接到这个 server 上,会出现图 6 所示界面:

图 6. 登录界面 - 超过最大连接数
图 6. 登录界面 - 超过最大连接数
图 6. 登录界面 - 超过最大连接数

断开其中一个连接,点击 OK 后,尝试重新连接 modeler server 即可连接成功。 日志记录的设置,如图 7 所示:

图 7. 日志记录设置界面
图 7. 日志记录设置界面
图 7. 日志记录设置界面

数据文件访问权限的设置如图 8 所示,其中 max_file_size 设为 -1 表示无限制(不适用于 SAS 和 SPSS Statistics 数据文件)。temp_directory 用于存储临时数据文件(缓存文件)。在理想情况下,该目录应当在独立的高速驱动器或控制器上,因为对该目录的访问速度对性能可能有显著影响。可以指定多个临时目录,并分别用逗号隔开。这些目录应当位于不同的磁盘,其中第一个目录使用最频繁,而其他目录则在执行过程中特定数据准备操作(例如排序)平行应用时,用于存储临时工作文件。允许每个执行线程使用独立磁盘进行临时存储以提高性能。SPSS ModelerServer 启动期间会在此目录下生成临时文件。确保用户对该目录拥有所需的访问权限(例如,如果临时目录为共享网络文件夹),否则 SPSS Modeler Server 启动将失败。

图 8. 数据文件访问设置界面面
图 8. 数据文件访问设置界面
图 8. 数据文件访问设置界面

注意:所有路径名中应使用正斜线,指定多个目录时请使用半角分号隔开(例如,[server install path]/data; c:/data;c:/temp)

部署策略 3 Administration Console 中性能优化

在 Administration Console 中,性能优化界面如图 9 所示:

图 9. 性能优化界面
图 9. 性能优化界面
图 9. 性能优化界面

流重写 (stream_rewriting_enabled) 允许服务器通过重写流来实现对流的优化。 例如,服务器可能会在接近源节点的位置进行数据削减操作,以尽早实现数据集规模的最小化。通常仅在此优化导致错误或其他不应有的结果时,才建议禁用此选项。此设置将覆盖相应的客户端的优化设置。

以下是流重写的举例说明,参看图 10 和 11 所示:

图 10. stream_rewriting_enabled 设为 Y
图 10. stream_rewriting_enabled 设为 Y
图 10. stream_rewriting_enabled 设为 Y

当 stream_rewriting 设为 Y(default) 时,当客户端连接到 modeler service,执行 stream,在 message log 里检查信息会发现类似 Stream optimisation complete (2 rules applied) 的语句显示在 message log 里。这意味着流优化已经发生。

图 11. stream_rewriting_enabled 设为 N
图 11. stream_rewriting_enabled 设为 N
图 11. stream_rewriting_enabled 设为 N

从上图可以看出,当 stream_rewriting 设为 N 时,重启 modeler service,在客户端重新连接 modeler server, 执行同一个 stream, 可以看出,优化语句并未显示在 message log 里,这说明服务器是不允许通过重写流来实现对其的优化。

并行性 (max_parallelism) 是指运行流时允许 SPSS Modeler 使用的并行工作程序的线程数量。如果设置为 0 或负数,则 SPSS Modeler 将认定允许使用的线程数为计算机上可用处理器的数量,此选项的默认值为– 1。要关闭(针对多处理器的计算机)并行处理需将此选项设置为 1。要限制并行处理线程数,需将此选项设置为比计算机上的处理器数量小的数字。超线程或双核处理器将被当作两个处理器。

缓存压缩 (cache_compression) 为一个 0 到 9 的整数值,它控制缓存和服务器临时目录中其他文件的压缩。压缩在磁盘空间有限时很重要,因为压缩可以降低磁盘空间的使用量,而且压缩还能通过减少创建和读取缓存所需要的磁盘活动量,改善性能。虽然压缩会延长处理器时间,但因为缩短了磁盘访问时间,因而得到几乎等量的补偿。注意:只有某些被顺序访问的缓存才能被压缩。此选项不适用于随机访问缓存,比如网络训练算法使用的缓存。值为 0 将完全禁用压缩。值从 1 增大,压缩程度会随之增加,但相应的访问时间也会增加。默认值为 1;除非磁盘空间实在有限,否则不需要设比默认值更大的值。

内存使用倍增器 (memory_usage) 可控制为排序和其他内存缓存分配的物理内存的比例。默认值为 100,相当于大约 10% 的物理内存。有可用的空闲内存时,增加该值可提高排序性能,但是如果该值增加得太高则有可能导致过度分页。

最大和最小服务器端口设置,默认情况下,SPSS Modeler 将使用任何一个可用的打开端口;如果它未找到端口(例如,所有的端口都被防火墙关闭),那么执行流时就会显示错误信息。要配置端口的范围,除主服务器端口外,SPSS Modeler 还需要两个每个并行的流都能使用的打开端口,以及为每个具有 ODBC 连接的连接客户端打开一个附加的端口。如果要执行更多并行的流 , 用户可以增大端口号的范围,然后相应地在防火墙上打开更多的端口。

注意:如果用户更改了这些参数,就需要重新启动 SPSS Modeler Server 以使所做更改生效。 SQL 的配置管理如图 12 所示:

图 12. SQL 的配置管理
图 12. SQL 的配置管理
图 12. SQL 的配置管理

自动 SQL 生成允许为流自动生成 SQL,这可以极大提高性能。默认为已启用。 SSL 的配置管理如图 13 所示:

图 13. SSL 的配置管理
图 13. SSL 的配置管理
图 13. SSL 的配置管理

启用 SSL 是为 SPSS Modeler 和 SPSS Modeler Server 之间的连接启用 SSL 加密。对于 私有密钥必须经过至少一个证书授权机构(列于配置的证书文件中)签署。

进程协调器配置如图 14 所示:

图 14. 进程协调器配置界面
图 14. 进程协调器配置界面
图 14. 进程协调器配置界面

主机 Host 为进程协调器服务的主机名或 IP 地址。默认的"spsscop" 是一个无效名称,管理员可以选择添加它作为 DNS 中 IBM SPSS Collaboration and Deployment Services 主机的别号。

SPSS Modeler Server 监视

Modeler Administration Console 的监视窗格是用一个快照来显示 SPSS Modeler Server 计算机上运行的所有进程,同 Windows 任务管理器一样。要激活监视窗格, 需双击"服务器管理员"窗格中所需要服务器下方的"监视"节点。这样就向窗格填充 了来自服务器的当前数据快照。数据将按所显示的速率(默认为一分钟一次)进行刷 新。也可单击刷新来手动刷新数据,如图 15 所示:

图 15. Modeler Administration Console 的监视窗格
图 15. Modeler Administration Console 的监视窗格
图 15. Modeler Administration Console 的监视窗格

结束语

IBM SPSS Modeler Server 除 Windows 系统以外,可以在 UNIX 上运行,这样在选择安装平台时更具灵活性。本文通过对 Modeler Server 的各种配置管理,可以对大型的数据集合执行排序、合并和聚合操作,将数据挖掘过程集合在一起,有助于规范业务流程中数据挖掘的作用,实现数据挖掘任务自动化,管理对数据模型的访问,在组织内共享数据挖掘成果,使其更容易被企业和市场接受。


相关主题


评论

添加或订阅评论,请先登录注册

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=Information Management, AIX and UNIX
ArticleID=822350
ArticleTitle=在 UNIX 环境下部署高效的 IBM SPSS Modeler Server
publish-date=06212012