壹佰网|ERP100 - 企业信息化知识门户

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1293|回复: 1

[China Lotus资源区] 第七章 Domino企业级信息集成 (转)

[复制链接]
发表于 2003/4/10 13:06:10 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。如果您注册时有任何问题请联系客服QQ: 83569622  。

您需要 登录 才可以下载或查看,没有帐号?注册

x
三层次Client/Server体系结构代表了Internet/Intranet应用技术的发展趋势。
在三层次结构中应用服务器层承担了应用逻辑的表示和对第一层通用客户机前端
的服务响应,而第三层是承担数据存储的数据库服务器。三层次结构使信息的存
储与信息的处理、表示相隔离,各层次之间相对独立,使信息系统建设者可以灵
活地选择适应自己需要的、不同厂家的产品和工具,而且可以采用循序渐进的分
阶段方法建设自己的信息系统。由于三层次结构的优点,Intranet/Internet也将
逐步采用这一先进的体系结构模式。
不言而喻,在三层次Client/Server中,应用服务器的功能和应用开发手段、数据
集成能力具有关键的作用,决定了后端数据服务器与应用系统的集成以及前端客
户机数据表示的成功和性能。Intranet/Internet系统采用Lotus Domino作为主要
的应用服务器,通过Domino服务器把重要的企业级数据资源包括各个相关的银行
业务系统、各个重要的关系数据库集成在统一的Intranet系统中,与业务流程自
动化、报文传递、办公自动化、信息服务等Intranet应用联系起来,并逐步与服
务银行客户的Internet应用系统相连接。
本章将介绍Domino的企业级信息集成能力,即Domino与其他数据源特别是关系数
据库的集成能力。

第一节 Domino企业信息集成手段  

Domino的企业信息集成手段对应于企业信息资源,可以分为以下手段:
与关系数据库的连接  
NotesPump  
NotesSQL  
LotusScipt Data Object (LS:DO)  
DB2 LSX  
Oracle LSX  
ODBC  
JDBC
与事务处理(Transaction)系统的连接  
MQSeries & CICS Connection for Domino(MQSeries LSX与MQEI)
与ERP应用系统的连接  
SAP LSX

上述手段如果技术角度分类可以大致划分为两类,即LSX类,包括LS:DO,DB2 LS
X,Oracle LSX,MQSeries LSX,SAP LSX等;以及企业级数据分布服务器NotesP
ump。此外Domino支持ODBC、JDBC等标准数据库连接手段,NotesSQL是NotesSQL即
是Domino的Windows ODBC驱动程序。


第二节 NotesPump

  NotesPump是企业级的数据分布服务器(Enterprise-scale Data Distribut
ion Server),用于在不同的数据源(Domino数据库、关系数据库、传统数据源
、Internet数据源等)之间双向读写交换数据。

  NotesPump是企业级的数据访问解决方案。其产品定位是解决以下业务需求:
在异类数据库(源)之间大批量地传送数据;提供最终用户直接的、交互式的对
企业数据库的访问能力;可以在企业网络环境下管理。

  使用NotesPump可以在不同数据源之间传送或同步数据,按照时间或其他事先
制定的调度计划进行,或者是基于某些条件进行,也可以按照前端客户机的命令
实时进行。
  NotesPump直接支持的数据源包括:Domino、 DB/2、 Oracle 7/8、Sybase  
10/11、Text/ASCII、HTML、CGI,此外,通过ODBC以及EDA/SQL支持多达七十余种
的传统和顺序文件资源。用户可以通过NotesPump API开发,支持其它种类的数据
源。
  NotesPump同样是跨平台的,包括Windows NT,OS/2, HP-UX,Sun Solaris,
AIX等。

  NotesPump包括三个组成部分:
l NotesPump 服务器,是一个多任务的数据传送引擎,可以同时在多个数据源之
间同时执行多个数据传送操作。NotesPump服务器可以单独运行在一台机器上(推
荐),也可与Domino服务器同时运行。
l NotesPump管理数据库以及NotesPump日志(均为Domino数据库),用于配置、
管理、记录NotesPump服务器的任务与操作。管理数据库是NotesPump服务器的“
控制中心”,控制指令以Notes文档的形式由NotesPump的管理员根据需要建立,
分为三类:配置文档、连接文档与操作文档。配置文档定义NotesPump服务器的系
统环境,连接文档定义所有源数据库(源)与目的数据库(源)的名称与网络地
址,而操作文档具体定义NotesPump服务器在各个源与目的之间的各种数据传送操
作内容和运行调度方式、条件等。NotesPump管理数据库存放在Domino服务器上,
可同时管理多个 NotesPump服务器。
l NotesPump开发客户机(根据需要设立),是NotesPump开发人员使用的Notes客
户机,即在Notes客户机中安装NotesPump客户机应用,开发人员可以进行NotesP
ump LotusScipt程序的编制以及交互式数据源字段映射操作。

  下图显示NotesPump的一般配置安装示意,图中包括一台NotesPump管理员使
用的一般Notes客户机。

图7-1 NotesPump安装、工作示意

  NotesPump的功能(即NotesPump操作的种类,操作都是在Domino安全性控制
之下的)如下:
l 实时操作。在Domino应用与NotesPump支持的后端数据源之间建立持续的、同步
的连接,使得Notes客户机或Web浏览器客户实时地“按指令”直接读写访问后台
数据源。
l 直接传送。即在数据源与目的之间按调度计划进行数据传送。传送条件由SQL请
求、Notes公式和其他数据源指令定义。数据传送可以是周期性的,或由人工触发

l 探询(Polling)或事件监控,即在数据源中定义条件或事件,如对RDBMS表或
Domino数据库的一个插入操作。当条件满足时,NotesPump立即启动指定的数据交
换操作。
l 复制。 即在不同类型数据库之间做复制,以保证相互的数据同步。使用每个数
据库共同的一个或多个关键字段作为依据,可以定时交换数据,以保持彼此信息
一致。还可使用时间标记字段改进这一操作,每次仅交换两个数据源中上次操作
以后更新的数据记录。  
l Java。在Java编制的应用之间按调度计划传送数据。
l DPropR。可以将 DPropR系统中的数据迁移到NotesPump支持的数据源中。
l 编程控制(Scripted)。NotesPump开发人员使用NotesPump LotusScipt对象类
编制客户化的数据传送、条件处理、报文传递等操作,从而扩展了NotesPump服务
器的功能。
l 指令。在NotesPump服务器控制台上直接执行数据库服务器或操作系统的指令。

l 归档操作。即从源数据源到目的数据源的定期归档操作。

  NotesPump解决方案的突出优点包括:
l 不需编程即可在不同数据源之间传送数据。
l 容易管理。通过NotesPump管理数据库的文档可以很容易、友好地配置NotesPu
mp服务器的操作。
l 可伸缩性。新的数据源、连接与操作可以通过管理数据库很方便地加入,不必
中断NotesPump的运行。此外,可以通过开发支持更多的数据源和操作种类。
l 可管理性。NotesPump服务器支持网管协议SNMP,可以用网管工具管理;还提供
Java远程控制台,用Web浏览器实现远程监控。
l 负载平衡。支持多个NotesPump服务器之间的任务分配,和多任务操作设置。

l 抗错(Fault resilience)性。NotesPump操作中可以设置重试周期,确保操作
的完成。此外,NotesPump日志可以用来考核系统的运行状况。
l 具有电子邮件通知手段。管理员可以通过Notes电子邮件获得NotesPump的运行
状况。


. 第三节 LSX编程

  LSX,即LotusScipt Extension,是LotusScript语言的对象类。在LotusScr
ipt程序设计时,只要使用命令“USELSX”即可引入,和LotusScript固有的对象
类一样使用。
  Domino内置了LotusScript,使用LS:DO、DB2 LSX、Oracle LSX等LSX即可实
现对企业内其他数据源的存取。使用时,这些LSX可以用于任何LotusScript事件
,如单击一个按钮、离开一个字段或打开一个文档,从而触发对数据源数据的实
时访问。在Domino服务器和Notes客户机上都可以应用LSX。

  LSX的实时数据存取经常用于以下方面:
优化数据登记(即时查找、立即更新、输入合法性检查和避免重复登记等)。许
多设计者使用Notes作为一个应用的数据登记入口,要求与RDBMS保持数据同步或
者将RDBMS作为长期的数据存储。LSX可以即时地提供以下功能:
即时查找:如客户服务系统中,一旦用户输入了一个客户的名字并用TAB键或鼠标
点击退出该字段时,LotusScript程序代码可以立即执行一个SQL查询,将符合该
名字的客户记录提取出来,并自动填充表单中的剩余字段,如:地址、电话和联
系人姓名。
立即更新:可以在保存一个Notes新文档时或按指定间隔进行批处理时更新RDBMS
中的信息。
输入合法性检查: 如客户服务系统中,如在 Notes表单中分配给该客户的销售代
表是否正确?负责该地区的销售代表是否工作负担过重?LSX可以从RDBMS中提取
有关信息,用LotusScript编程对这些数据进行评估并采取适当的处理。
避免重复登记: 如客户服务系统中,一旦用户输入了一个客户名称, LSX会查询
后台来验证客户名称的合法性,保证在RDBMS中不会将出现同一个客户不同名称拼
写。
移动用户的查询和更新。RDBMS与Domino/Notes相结合的最令人激动的结果之一
是可以充分利用Notes对移动计算的支持:移动的Notes用户可以存取RDBMS数据并
在旅途中利用这些数据。首先在移动的Notes客户机上的一个应用中构造一个查询
请求;然后将该查询复制到Notes服务器上,等在那里的LSX代理(Agent)见到这
个新文档、验证并执行查询,把查询结果放在该文档中并将其保存;最后将查询
结果复制回本地的笔记本电脑中进行分析和审核。
Web查询。Web浏览器用户将请求发给Domino服务器,Domino服务器利用表单、代
理等手段通过LSX,实时访问读写后台RDBMS,实现直接和交互式、动态数据库访
问。

LotusScript Data Object(LS:DO)是Domino/Notes产品中附带的LSX,提供了对外
部ODBC数据源完全的读写访问。LS:DO 由三个类库构成:ODBCConnection、ODBC
Query、ODBCResultSet,具有一整套属性和方法以及完整的SQL功能。
LS:DO不仅允许用户提交SQL给DBMS,而且还提供其它的数据处理功能。如:连接
共享、多查询和result sets、双向 Scrolling Over Result Set、Result set搜
索、result缓存、更新服务和与驱动程序无关。

  DB2 LSX与Oracle LSX分别是通过LotusScript访问DB2、Oracle数据库的对象
类库。不象通用的数据库接口如ODBC(LS:DO), 它们分别使用自己直接的调用
接口CLI与OCI,保证了更好的性能和可扩展性。这两个LSX分别由与Oracle编制。


  MQSeries LSX与MQEI使Domino应用能与使用MQSeries或CICS的事务处理系统
通信。Domino应用可以参加到事务处理系统中,发起执行事务(交易),查询与
更新MQ Series与CICS 3270和DPL应用。MQSeries与MQEI均为LSX,类定义与编程
容易程度以及适用领域略有不同。

  SAP R/3 LSX是通过RFC(Remote Function Calls)访问SAP R/3的手段,实
现双向、同步或异步的数据交换,并可通过R/3的Business API(BAPI)支持SAP
R/3 Business Objects。
  Lotus公司提供的LotusScript ToolKit可以使用户开发自己需要的LSX,以访
问特殊的数据源。此外,Lotus与协同主要的数据库或应用系统厂商正在推出一系
列连接这些系统的编程类库LSX,如PeopleSoft、Baan等,使Domino企业信息集成
能力不断提高。

  NotesPump与LSX的解决方案各有特点,用户在使用时可以根据需要选用。简
单而言,NotesPump基本不需编程、容易使用,是完全基于服务器的技术;而LSX
则需要编程开发,而且如果在Notes客户机端采用则相应地需要在每一个客户机端
安装所使用的LSX(只有LS:DO是随Notes附带的),但使用LSX编程可实现较为灵
活的和更为“颗粒状”的控制。


第四节 MQ Series 中间件

MQ Series是的商业通讯中间件(Commercial Messaging middleware)产品,提供
一个具有工业标准,安全,可靠的信息传输系统。鉴于国内网络不稳定的现状,
以及分布式业务的分散性和随机性,尤其考虑到各种应用的实时的或随机的数据
通信,我们推荐的MQ Series中间件产品,特别适合于差异很大的环境之间实现信
息沟通。具有多平台(共20多种)支持功能,可以运行于新技术和传统技术组合
的非均一环境中,具有简单、灵活的特点,并能满足业务对系统速度、集成性、
安全性方面的要求。利用MQSeries,可以:
消除了硬件于网络协议的依赖关系。
确保了信息传输,并且支持异步通讯,无需等待接收者的响应。
易于使用的API,减少了开发时间。
可集成不同结构和设计的应用程序。
易于在分布式处理结构中继续使用传统的系统。

它的功能是控制和管理一个集成的商业应用,使得组成这个商业应用的多个分支
程序(模块)之间通过传递信息完成整个工作流程。MQSeries基本由一个信息传输
系和一个应用程序接口组成,其资源是信息和队列(Messaging and Queuing)。


信 息: 一个信息包含两个因素:信息描述(用于定义诸如信息传目标等)和数据信
息(如应用程序数据或数据库查询等)。程序之间的通讯通过传递息而非直接调用
程序。
队 列: 一个安全的信息存储区。因为信息存放在队列中,所以应用程序以相互独
立的运行,以不同的速度,在不同的时间,在不同的地点。  
信 息 传 输 系 统: 用于确保队列之间的信息提供,包括网络中不同系统上的
远程队列之间的信息提供。并保证网络故障或关闭后的恢复。
应 用 程 序 接 口: 应用程序和信息系统之间通过MQSeries API实现的接口在
所有MQSeries平台上是一致的。API只有11个调用,2个关键动词:发送 (PUT)和
接收(GET)。

MQSeries 的 工 作 原 理:



如图所示:虽然应用程序A和应用程序B运行于同一系统A,它们不需要直接的通讯
。应用程序A向队列1发送一条信息,而当应用程序B需要时就可以得到该信息。


如果信息传输的目标改为在系统B上的应用程序C,这种变化不会对应用程序A产生
影响,应用程序A向队列2发送一条信息,系统A的MQSeries发现Q2实际上在系统B
,它将信息放到本地的一个特殊传输队列(Transmission Queue )。系统A的MQSe
ries建立一条到系统B通讯联接,传递这条信息到系统B,并等待确认。只有MQSe
ries接系统B成功地收到信息的确认后,才从传输队列中移走信息。如果通讯线路
不通,或系统B不在运行,信息会留在传输队列中,直到被成功地传送到目的地。
这是MQSeries最基本而最重要的技术 — 确保信息传输 。
事实上,MQSeries具有特殊的技术防止信息重复传送,确保信息一次且仅一次 (
once-and-only-once) 传 递 。  

MQSeries 重 要 特 点:  

MQSeries提供给用户许多难得的价值:


统 一 接 口, 跨 平 台. 简 单 的 "PUT" 和 "GET" 动 词在 MQSeries 支 持
20 种 平 台 上 完 全 相 同。 使 得 MQSeries 提 供 了 这 样 的 特 性:
目 标 应 用 程 序 位 置 的 透 明 性( target application location tran
sparency)。 对 于 一 个 应 用 程 序 的 开 发 者,他 需 要 知 道 的 全  
部 只 是 队 列 的 名 字, 这 个 队 列 与 一 个 特 定 的 服 务 有 关,  
而 与 系 统 的 平 台 或 系 统 在 什 么 地 方 无 关。
使 开 发 人 员 避 开 网 络 的 复 杂 性. 因 为 MQSeries 负 责 处 理 所  
有 的 通 讯 , 开 发 人 员 不 必 编 写 任 何 通 讯 方 面 的 程 序。 并
且编 程 和 调 试 非 常 简 单 和 直 接, 不 需 要 具 体 的 系 统 和 通
讯 方 面 的 知 识。 尤 其 在 开 发 客 户 机/ 服 务 器 模 式 的 应 用  
时, 开 发 人 员 可 以 集 中 精 力 在 与 业 务 有 关 的 客 户 端 和 服
务 器 端 的 应 用, 而 不 必 考 虑 操 作 系 统 和 通 讯, 特 别 是 底
层 的 网 络 通 讯, 节 省 大 约 50% 到 75% of 通 讯 编 程 工 作。
处 理 不 依 赖 时 间 的 限 制, 意 思 是 说 在 信 息 创 建 和 发 送 时  
,信 息 的 接 收 方 或 到 接 收 方 的 通 道 不 需 要 激 活. 不 受 时 间
的 限 制 增 加 了 处 理 的 灵 活 性, 允 许 事 务 处 理 在 它 们 想 做
或 有 时 间 做 时。 彼 此 通 讯 程 序 可 以 运 行 在 不 同 的 时 间。
这 样 程 序 的 运 行 是 独 立 的, 如 果 逻 辑 允 许, 它 们 不 必 等
待 其 它 程 序 的 应 答 而 继 续 工 作, 利 用 这 种 异 步 处 理 功 能
, 可 以 更 有 效 的 使 用 资 源,更 灵 活 的 处 理 模 式, 应 用 处  
理 可 以 是 独 立 的, 并 行 的, 重 叠 的 , 从 而 改 进 用 户 服 务。

给 分 布 式 处 理 提 供 的 强 健 的 中 间 件: 包 括 逻 辑 工 作 单 元
支 持 ( logical unit of work) , 备 份 和 恢 复 机 制, 大 信 息 传 递
和 高 性 能 等 特 点。 其 中 最 重 要 的 是 确 保 信 息 传 输, 意 思
是 一 旦 MQSeries 接 受 一 个 信 息 传 输 的 任 务, 会 确 保 信 息 被
传 送 到 目 标 平 台。 信 息 的 传 输 是 一 次 且 仅 一 次. 另 外,强
健 的 中 间 件 机 制 保 证 业 务 数 据 一 致 性, 并 可 在 系 统 发 生
故 障 时, 及 时 恢 复, 业 务 不 会 受 到 影 响。
第五节 其他信息集成手段


  除了以上介绍的两类手段之外,Domino/Notes还可以使用其它其他信息集成
手段,适用于一些特定的环境或需要,包括@DB函数、NotesSQL。

  Lotus Domino/Notes内置快速开发手段——公式语言。在公式语言中包含的
@DB函数,提供了快速易用的存取与ODBC兼容的RDBMS数据的方法,而无须编写Lo
tusScript程序。每个@DB函数都针对一个特定的任务,包括连接外部数据库、执
行查询、缓存查询结果和关闭数据库连接。@DB函数主要用于三种常用的查询任务

1. 产生关键词列表(@DBColumn)
2. 执行查找操作(@DBLookup)
3. 启动存储在外部数据库中的进程和查询(@DBCommand)

  NotesSQL是Lotus Notes的Windows ODBC驱动程序,它使与ODBC兼容的RDBMS
和数据查询工具对基于Notes的信息进行存取、查询和汇报。NotesSQL使Notes对
SQL工具和应用来说看起来象另一个关系型后台数据源。NotesSQL允许开发者对N
otes数据库提交SQL语句,对想在其应用中使用 Notes 数据的开发者来说,Note
sSQL是理想的工具。NotesSQL是对Notes的SQL API,与ODBC 2.0 二级完全兼容并
具有二级扩展。

此外还有一些工具可以作为Domino与其它应用系统的连接工具,如:Notes CICS
Link:它是Notes与 CICS交易处理环境的连接工具。
发表于 2003/6/1 17:55:50 | 显示全部楼层
太好了!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|小黑屋|手机版|壹佰网 ERP100 ( 京ICP备19053597号-2 )

Copyright © 2005-2012 北京海之大网络技术有限责任公司 服务器托管由互联互通
手机:13911575376
网站技术点击发送消息给对方83569622   广告&合作 点击发送消息给对方27675401   点击发送消息给对方634043306   咨询及人才点击发送消息给对方138011526

GMT+8, 2025/11/29 10:39 , Processed in 0.019108 second(s), 14 queries , File On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表