我能否通过 BizTalk DRDA Services 从大型机 Cobol 程序访问 SQL Server 和 DB2



我们有大型机 z/OS COBOL 应用程序在 SELECT 查询中从少数应用程序(App1、App2)访问一组 DB2 表(T1、T2)。现在,我们将其中一个应用程序(App1)及其表(T1)移动到SQL Server(将来的Azure SQL)。我们如何在不影响大型机 COBOL 应用程序的情况下移动此应用程序?

我们是否可以使用 BizTalk 主机集成服务器 DRDA 服务从 SQL Server 公开表 T1 和从 DB2 公开表 T2,并允许大型机 COBOL 应用程序继续联接表并运行 SELECT 查询?换句话说,大型机 COBOL 甚至不知道表 T1 不在 DB2 中,而是在 SQL Server 中? Microsoft的以下链接说可行,但想了解可行性和优缺点。

  • IBM DRDA - https://en.wikipedia.org/wiki/DRDA, https://www.ibm.com/support/knowledgecenter/en/SSGU8G_11.70.0/com.ibm.admin.doc/ids_admin_0206.htm
  • 为 z-OS 配置 DB2 - https://learn.microsoft.com/en-us/host-integration-server/core/configuring-db2-for-z-os
  • BizTalk 中提供的 DRDA 服务 - https://learn.microsoft.com/en-us/host-integration-server/core/service-for-drda

我在这里冒昧,但我认为答案是否定的。 z/OS COBOL 程序通过跨内存服务使用线程访问 DB2 到本地 DB2 子系统。把它想象成一个套接字,但使用低级零拷贝进程间通信来完成。要执行所需的操作,需要应用程序更改和 Java 才能集成到 BizTalk。

您可以定义指向 OCDB 数据库链接的 DRDA 链接,该链接应允许您连接到另一台服务器上的几乎任何标准 SQL 数据库。但是您可能不会通过大型机系统管理员,因为它是非标准的 并且难以管理。

复制可能是您最好的选择——两家供应商都提供了几种工具: https://learn.microsoft.com/en-us/sql/relational-databases/replication/non-sql/ibm-db2-subscribers?view=sql-server-2017 描述了Microsoft产品。

最新更新