我们正在接近将遗留的OpenVMS RMS文件迁移到关系数据库( MS 2012和Oracle10g都可用)。我想知道是否有:
发布于 2013-04-25 12:57:05
有几个可用的工具,特别是通过ODBC供应商(我为一个:Attunity工作)。
1检索索引文件架构的>>工具
请澄清。只查找文件中的记录/列布局和索引或文件之间的关系。
1a)这些文件目前是如何使用的?Cobol,Basic,Fortran程序?数据前夜?他们将使用一些数据定义方法,因此您需要一个可以利用该方法的工具。Connx和Attunity可以“导入”CDD定义、基本地图文件、Cobol文案.变体通常也包括在内。我编写了许多(perl/awk)脚本来将特殊定义转换为XML。
( 1b ) Analyze/ RMS,或调用RMS的程序可以获得可用的索引信息。将知道如何从1a将这些映射到字段)
1c ) OpenVMS上的(索引)文件之间没有正式的、存储的关系。这是程序逻辑中的全部。但是,一些稍微聪明的Perl/Awk/DCL脚本可以通过查看文件名称和数据类型匹配来生成可能的外键/主键表。
我们说的文件/布局/千兆字节是多少?
2个解析索引文件的>>工具
请澄清?一旦知道结构(问题1),解析是通过使用该结构进行的,对吗?您永远不想了解索引文件内部。告诉RMS去取记录就行了。
作为一个包/API/Library处理自定义RMS数据格式(分区小数等)的3种>>工具
请再次澄清。一旦知道了结构,只需使用'right‘工具就可以使用该结构读取,并且肯定会遵守详细的数据定义。
(我知道自己写一本很简单,只是觉得这个行业会有一些东西)
著名的遗言..。“相当简单”。整个公司已经建立并蓬勃发展,只是在一般情况下这样做。我承认,就具体情况而言,这可能是相对简单的,但“关键在于细节”。
在Attunity情况下,我们有一个UDT (用户定义的数据类型)来处理“奇数”情况,通常涉及日期。整数中的日期,字符串中的日期,自xxx以来的单位都是可用的,但例如,有些是-1,意思是“一些高日期”,需要一些帮助才能存储在DB中。
所有数据库都有一些大容量加载工具(BCP、SQL$LOADER)。只要你能提供符合那些期望的数据(表格,逗号分隔,引用-或不,逃避-或不-不),你应该处于良好的状态。
EGH工具Vselect可能是一种方便、高性能的方法,可以批量读取索引文件,过滤和格式化一些DB加载程序的顺序文件。它可以读取RMS索引文件比RMS更快!(它有自己的元数据语言!)
Attunity提供完整的访问和复制服务。他们包括一个CDC (变更数据捕获),以不仅加载数据,而且保持它在几乎实时的最新。这对于“进化”和“革命”是有用的。看看阿德伦‘复制’。一旦您有了数据字典,只需指向所需的表(包括、外挂过滤器),指向目标DB并单击以进行复制。当然,也有用于(全局或每个表)转换的选项(比如区域代码+EXHANGE+ number到单个电话号码,或者添加修改后的日期列)。
这是一个单一的大开关转换,还是希望迁移数据并使旧系统保持几天、几个月、几年的运行,一直保持数据的紧密同步?
希望这对一些人有帮助,海因·范登·胡威。
发布于 2013-04-17 18:00:31
或许我应该改变一下方法?可能吧。
您可能会考虑寻找数据迁移供应商,其中一些可能有现成的解决方案,如果不是作为COTS工具,则更有可能打包为服务(我不认为这是一个大市场)。
这不会对您有所帮助的是,我认为应用程序代码的更大问题是:谁将在相应的进行关系DB调用的代码中更改所有进行RMS调用的代码?实体(“Joe程序员”或一些工具)如何知道数据迁移到哪里,以便他能够编写正确的调用?对于数据表示形式会发生变化这一事实,您正在做什么?
理想情况下,您需要一个自动迁移工具,它将移动数据本身(因此知道数据输出和表示形式的更改),并进行相应的代码更改。你也可以找这样的供应商。
https://stackoverflow.com/questions/16063623
复制相似问题