本文示例源代码或素材下载
概述将数据库变更治理过程想象成一套彼此相连的拼图。一块拼图是数据建模,另一块是数据库更改。我们将展示 IBM 为将这两块结合在一起而提供的解决方案。IBM DB2 Change Management Expert for Linux®, UNIX®, and Windows® 是一款新的数据库变更治理工具。它可以单独使用,也可以与 IBM Rational Data Architect 结合使用,后者是用于企业数据建模和集成设计的工具。在物理数据模型方面,这两种工具使用相同的语言,因而可以集成从设计和建模到数据库变更治理的过程。 物理数据模型使数据架构师、开发人员和数据库治理员面对同一个页面,而不必在个人与小组之间往返转换更改。DB2 Change Management Expert 和 Rational Data Architect 都使用 Eclipse 框架。同时使用这两个产品的团队可以利用 Eclipse Team 组件来控制信息流。而且,Rational Data Architect 和 DB2 Change Management Expert 可以同时出现在同一个 Eclipse 框架中(也就是说,通过 “shared shell” 安装)。在一人扮演多个角色的情况下,shared shell 可以提供一个单独的用户界面。场景概述本文通过一个场景来阐释客户如何使用这两种产品。我们将以一家虚构的公司 JK Enterprises 作为示例客户。JK Enterprises 已经开始使用 DB2 Change Management Expert 和 Rational Data Architect。JK Enterprises 的数据建模师 Tom 正在使用 Rational Data Architect,而身为公司 DBA 的 Eric 正在使用 DB2 Change Management Expert。但是请注重,在某些较小的工作室,可能一个人同时使用这两个工具。假设由于 JK Enterprises 的业务需求,他们需要为他们的项目添加完成码。他们需要对数据库加以更改,添加一个完成码表,但是他们还希望在逻辑模型中反映这一更改。由于不确定逻辑模型是否是最新的,因此他们选择首先根据生产数据库创建一个物理模型。Eric 将在 DB2 CME 中创建这个物理模型,并将它发送给 Tom。然后,Tom 使用 Rational Data Architect 将这个物理模型转换为一个逻辑模型,并确定完成码实体、所需的关系和属性。然后,通过与 Eric 协商,他在 Rational Data Architect 中将这个逻辑模型转换成一个物理模型。然后,Eric 在 DB2 Change Management Expert 中使用这个更新后的物理模型,并将变更迁移到一个测试数据库中。
12345678910下一页
图 1. 场景概述
![](/images/load.gif)
上一页12345678910下一页
确保选择了适当的数据库版本。输入用户名和密码。不选 “Create Deployment Project and Script file" 复选框,单击 Finish。场景步骤A 部分:创建 HR 数据库的物理模型在本场景的第一部分,Eric(数据库治理员)创建一个新的部署脚本,它是跟踪变更治理进程的一个 DB2 Change Management Expert 资源。当他为 HR 数据库创建部署脚本时,会创建该数据库的两个物理模型。一个模型是基本模型,表示数据库的当前状态。第二个模型是目标模型,您要编辑这个模型,以指定更改后数据库的样子。Eric 会将基本模型发送给 Tom。之后,Eric 将 Tom 在本场景第二部分作出的更改应用到目标模型。和 Eric 一样,您将完成以下步骤来创建部署脚本和物理模型。从主菜单栏中,单击 File --> New --> Deployment Script。这时会弹出 Deployment Script 向导。完成 Deployment Script 向导中的步骤:输入 "CMERDADemo" 作为项目名称,然后输入 "CMERDADemo_HR" 作为部署脚本的名称。单击 Next。选择 Use Existing Connection,然后选择 JKENT。 单击 Next。输入用户 ID 和密码。单击 Next。选择 HR 作为模式。单击 Next。确认选择了所有元素。单击 Next。确认将用于 HR 模式的基本模型和目标模型的默认名称。单击 Next。 在这个场景中,默认名称为 CMERDADemo_HR_base.dbm 和 CMERDADemo_HR_target.dbm。确认 Options 页面上没有选中任何复选框。单击 Finish。DB2 Change Management Experts 创建部署脚本和 HR 模式的基本模型及目标模型。图 2 展示了当展开 Data Models 和 SQL Scripts 文件夹时出现的这些模型和脚本:
上一页12345678910下一页
图 2. Data Project Explorer
![](/images/load.gif)
上一页12345678910下一页
单击 OK。复制 Eric 通过电子邮件发来的物理模型,将其粘贴到一个数据设计项目中。完成以下步骤,将物理模型转换成逻辑模型:在 Data Project Explorer 中,在数据设计项目的 Data Models 文件夹下,选择物理模型 CMERDADemo_HR_base.dbm,然后从主菜单栏中单击 Data --> Transform --> Logical Data Model。这时会弹出 Transform to Logical Data Model 向导。完成向导中的步骤:在 Target Logical Model 页面上,单击 Create new model,然后单击 Next。在 Logical Data Model File 页面上,接受用于逻辑模型的默认数据设计项目和逻辑模型的默认名称。单击 Next。在 Options 页面上,指定 "HR" 作为包名。单击 Next。在 Output 页面上,可以看到物理模型已经被转换成逻辑模型,单击 Finish 保存逻辑模型。这时弹出 Logical Data Model Editor,其中显示关于该逻辑模型的信息。 逻辑模型 CMEDEMO_HR_base.ldm 创建成功,并出现在 Data Models 文件夹中,如图 3 所示:图 3. Data Project Explorer
![](/images/load.gif)
![](/images/load.gif)
上一页12345678910下一页
将用于完成码的一个名为 COMPLETION_CODES 的实体添加到模型中。右键单击 Data Diagram Editor 的背景,然后单击 Add Data Object -> Entity。这样将添加一个实体到实体图中。在 Properties 视图中,单击 General 标签页。将实体重新命名为 COMPLETION_CODES。单击 Attributes 标签页,然后使用 New 按钮添加两个新的属性。将第一个属性重新命名为 COMP_CODE,指定它为主键,并确保它的数据类型为 CHAR(5)。将第二个属性重新命名为 DESCRIPTION,将它的数据类型改为 VARCHAR(1024)。图 5 显示了在作出这些更改后 Data Diagram Editor 和 Properties 视图的样子:图 5. HR 模式的实体图
![](/images/load.gif)
上一页12345678910下一页
选择逻辑模型 CMERDADemo_base.ldm,然后单击 Data --> Physical Data Model。这时弹出 Transform to Physical Data Model 向导。完成 Transform to Physical Data Model 向导中的步骤:单击 Create New Model,然后单击 Next。在 Physical Data Model File 页面上,接受数据设计项目的默认值,指定 CMERDADemo_HR_changes 作为物理模型的名称,指定数据库类型。单击 Next。在 Options 页面上,检查用于转换的选项。确保 HR 被指定为模式名称。单击 Next。单击 Finish 保存物理数据模型。此时,将有更改的物理模型通过电子邮件发回给数据库治理员 Eric。或者,也可以将它注册到版本控制系统中,以便 Eric 通过 DB2 Change Management Expert 在那里查看它。C 部分:将发回的更改应用到 HR 数据库上在本场景的最后一部分,Eric 将 Tom 发回的对物理数据模型的更改迁移到 HR 数据库的目标模型上。之后,Eric 生成将这些更改应用到实际的 HR 数据库时所需的更改命令,并将更改命令部署到数据库。和 Eric 一样,您将完成以下步骤:启动 DB2 Change Management Expert。复制 Tom 发回的物理数据模型(CMERDADemo_HR_changes.dbm),在 Data Project Explorer 中将其粘贴到 CMERDADemo 数据设计项目的 Data Models 文件夹中。右键单击 SQL Scripts 文件夹中的 CMERDADemo_HR.deployxml,打开部署脚本。Deployment Script Editor 中显示部署脚本。图 6 显示了 Deployment Script Editor:图 6. Deployment Script Editor
![](/images/load.gif)
上一页12345678910下一页
将 Tom 发回的物理数据模型(CMERDADemo_HR_changes.dbm)中的更改迁移到 HR 数据库的目标模型(CMERDADemo_HR_Target.dbm)上:单击 Deployment Script Editor 的 Data Models 标签页,在 Data Models 页面上,单击 Add。在 Source Models selection 对话框中,通过下钻选择有更改的模型(CMERDADemo_HR_changes.dbm),然后单击 OK。该模型显示在 Define Source Models 字段中,如图 7 所示:图 7. Data Models 页面
![](/images/load.gif)
上一页12345678910下一页
![](/images/load.gif)
![](/images/load.gif)
上一页12345678910下一页
在 Customize Export Commands 页面上,单击 Default Query,确保要删除的列 DEPTNAME 不在 SELECT 列表中。单击 Next。在 Customize Import Commands 页面上,检查导出列与 ORGANIZATION 表的导入列之间的映射。单击 Next。在 DB2 Maintenance Command 页面上,检查是否要生成用于保留对象上的授权、重新绑定包、生成 runstats 或者刷新包缓存的命令。默认情况下没有选择任何选项。假如选择重新绑定包,则在 Select Schema 页面上,需要为之重新绑定包的模式被默认选中。在 Merge Change commands 页面上,单击 Next。单击 Finish 生成更改命令。可以在 Deployment Script Editor 的 Change Commands 页面上查看生成的更改命令。将更改部署到 HR 数据库中。在 Deployment Script Editor 的 Change Command 页面上,单击 Deploy Changes to the Target Database。这时弹出 Deploy Change Commands 向导。完成 Deploy Change Commands 向导中的步骤。在 Deploy Steps 页面上,输入用户 ID 和密码。选中复选框。单击 Next。在 Check Base Model 页面上,单击 Next。在 Change Commands 页面上,查看将被部署到数据库上的更改命令。单击 Finish。Data Output 视图中包含对 HR 数据库作出的更改的状态。结束语本文演示了一个关于客户如何同时使用 DB2 Change Management Expert 和 Rational Data Architect 的场景。这两种工具之间可以共享相同的物理模型,从而答应从设计和建模到数据库变更治理的集成过程。这个逐步教程应该可以帮助新用户学会同时使用这两种工具。
上一页12345678910