从VSAM转换成DB2之前要考虑的问题

2008-12-4    | |
打印本文章
RSS

导读:专家在本文中主要是介绍了在从VSAM转换成为DB2之前要思考的一些问题。首先,我们简单了解一下VSAM和DB2之间的区别。另外很重要的一点就是灵活性。第三个你要考虑……

关键词:DB2 DB2数据库 DB2数据仓储 VSAM DB2 从VSAM转换成DB2

正在加载数据... 【TechTarget中国原创】我如何才能从VSAM转移到DB2?有没有免费的工具或者我们能通过映射进行转移吗?答:首先,我们简单了解一下VSAM和DB2之间的区别。VSAM是一种文件访问方法。VSAM是Virtual Storage Access Method的缩写形式。VSAM提供比平面文件更快的访问,因为它用的是一个反向的索引(B+tree)。这个索引是用于访问数据、寻找正确数据,比只读数据要快得多。要详细了解DB2和VSAM方面的区别,你可以阅读我在这这一方面的文章。

【TechTarget中国原创】问:我如何才能从VSAM转移到DB2?有没有免费的工具或者我们能通过映射进行转移吗?

  答:首先,我们简单了解一下VSAM和DB2之间的区别。VSAM是一种文件访问方法。VSAM是Virtual Storage Access Method的缩写形式。VSAM提供比平面文件更快的访问,因为它用的是一个反向的索引(B+tree)。这个索引是用于访问数据、寻找正确数据,比只读数据要快得多。要详细了解DB2和VSAM方面的区别,你可以阅读我在这这一方面的文章。

  为什么我们要从 VSAM转换成DB2?如果你的应用软件今天还运行得很好、没有任何其它数据存取或者VSAM 数据操作需求,那么你就不需要将VSAM转换成为DB2。人们转换为DB2的主要理由就是简化数据存取。

  给DB2写特别的SQL比编程存取VSAM 文件要简单得多。如果你报告或操作需求经常变化的话,那么通过不编写VSAM 程序节省的时间可以用于验证数据转换成DB2。但是你不应该只进行简单的转换。我的意思就是说,我们需要对数据进行详细分析,并且需要创建一个逻辑模块。VSAM文件很多情况下都没有规格化、也不想将自身转换成为DB2(或者其它关系型的DBMS。如果你简单地将VSAM文件(记录)转换成为DB2表(行),由于DB2和VASM的用途不相同,所以它的性能也会受到影响。

  换句话说,如果应用程序没有从VSAM转换成DB2 这方面知识的话,这个程序就不合适。为什么呢?因为DB2用的是SQL存取数据set-at-a-time。另一方面,存取数据record-at-a-time,所以在已经写好的应用程序和新的数据存储机制——DB2之间就存在着失调。如果你仅仅将VSAM调用语句转换成DB2 SQL语句,那么你可能就没有充分利用SQL、你就没有链接数据、你就没有合适地叙述谓词,因为VSAM 只通过一些键来存取数据。你可以你的程序不需要的程序。这样做的结果就是应用软件的性能减弱,没有人想得到这样的结果,不是吗?

  的确,VSAM专家在转换到DB2时所面临的最大的问题就是将DB2数据当作平面文件数据一样对待。我们需要这种心理上的转变,即考虑集合而不是文件、行而不是记录,并尽可能在SQL谓词中放入更多的工作,这样能让DB2尽可能运转更流畅。

  相反,有时VSAM支持者把DB2称为一只贪婪的猪。是的,在用DB2代替VSAM时还会有另外的工作。DB2做的事情要比要比VSAM多。所以有必要额外花费。这是不是说VSAM 要比DB2好呢?很显然不是!如果你了解DB2并且合理使用它,那么它的性能就会很好。如果你把DB2当作VSAM来使用,那它的性能就会大打折扣。认真考虑一下:比较集群索引四个列的DB2 SELECT,通过读取整个VSAM 文件存取相同数据时需要应用程序代码。在这种情况下,适当编码的DB2无疑将超出正常编码VSAM的要求。

  另外很重要的一点就是灵活性。DB2比较灵活而VSAM却不一样。如果你不相信,那你就想想它会对现有数据增加一个索引。你可以在程序后面增加索引,DB2会在不改变任何应用程序编码的情况下充分利用这个索引。你还必须用VSAM弄清楚编码需求并且使用新索引,不是十分灵活,是吗?

  第三个你要考虑的因素就是环境问题。对相同的VSAM文件在数据库中或是在线进行并行更新(concurrent updates)与对DB2进行同样的操作的效果并不相同。DBMS locking和ACID properties很显然让这种环境对DB2很有利。

  希望对这些问题的总结能够帮助你进行决策。如果你还想了解VSAM其它方面的信息,请你阅读IBM红皮书:VSAM Demystified (SG24-6105)。如果你负有将VSAM应用程序转换成DB2的任务,你也许还想研究一下IBM的 VSAM Transparency产品。祝你在这项工作中顺利!

查看全文
 
目前我负责为公司用户挑选一种新型的DBMS产品。我该怎样评估和挑选出最好的DBMS产品?答:选择一种客户机-服务器RDBS的确不是一件普通的事情,因为我们要考虑很多因素。
 
我们想将数据通过以下命令从DB2表到出到flat file文件中:db2 -tvf file.sql -z file.out。但是导出后得到如下结果……
 
我如何才能从VSAM转移到DB2?有没有免费的工具或者我们能通过映射进行转移吗?专家在本文中主要是介绍了在从VSAM转换成为DB2之前要思考的一些问题。
 
ODF工具包将为开发人员提供一个易用的应用编程接口,以阅读、编写和熟练处理ODF文档,同时加快附加应用的开发。一部分初始代码的是一个ODF Validator,这是一个……
 
据国外媒体报道,由于备份出错导致大量数据丢失,美国德州州长里克·裴瑞近日下令暂停向IBM的IT系统转移州档案数据,并对IBM处以90万美元罚金。
在SQL Server中,我们如何进行索引设计来提升系统的性能和对查询进行优化,是许多用户非常关注的问题,在本次技术专题中,我们将分群集索引和非群集索引设计两部分来为您详细分析。
本技术专题主要为使用Oracle SQL Developer和其他开发工具。包括如何使用Oracle SQL Developer和其他开发工具、使用Oracle Database Home Page、在Oracle中使用SQL*Plus等方面。
本专题为QL SELECT语句基础。侧重概述了如何使用SELECT来访问SQL数据库中所有内容以及组成SELECT语句的许多子句名称和功能;同时还阐述了如何使用DISTINCT关键字消除重复的行,以及如何正确使用ORDER BY子句来排序数据。
最新更新
专家答疑
技巧
Brian Fedorko
Oracle数据库审计功能十分强大、灵活并且易于配置,适当并有效地使用数据库审计功能是拥有高效安全策略的基础。
Brian Peasland
Oracle数据库二进制文件和库文件是高版本版本的,而备份的数据库内部如果仍然是较低版本,那么Oracle将不允许你打开数据库,除非你完成了升级过程。
Maria Anderson
在Windows XP环境下,使用数据库升级助手将Oracle从9.2.0.1升级到10g R2,出现DBUA不能识别Oracle数据库的SID问题如何解决。

登录TechTarget中国

关闭
本服务仅向TechTarget中国的会员开放,请登录或立即免费注册
登录Email
请输入您的登录Email
密码
下次自动登录