从大型机到Excel的数据提取

时间:2017-07-14 09:22:37

标签: mainframe

如何将数据从大型机提取到Excel中?目前,我从MS访问中获取数据,但要求是针对大型机。 提前致谢

1 个答案:

答案 0 :(得分:0)

首先,请理解说"从大型机提取数据"类似于说"从英特尔提取数据。"以下内容并不全面,但旨在提供如何以可以有意义地回答的方式提出问题的想法。

请理解......之间存在很大差异。

  • 技术上可行的
  • 您商店允许的内容
  • 根据您的要求,可能提供强大且可维护的解决方案

这是三件非常不同的事情。我们中的一些人在Stack Overflow上回答问题,这些生活经历使我们对于在没有提及您的商店允许的内容或正在解决的实际业务需求的情况下回答技术上可行的问题时保持沉默。

大型机已经存在了半个多世纪,许多商店都有技术问题的标准解决方案。有时候解决方案不会这样做,而这就是我们做的事情。"违背技术人员的建议或商店标准是职业限制。

什么操作系统?

z / OS 在大型机上很常见,但确实存在仍然运行其MVS / XA之类的祖先的商店。大型机操作系统追溯到1965年首次推出的OS / 360.

z / TPF

z / Linux 通常运行在 z / VM 虚拟机管理程序之上。

z / VSE

数据驻留在什么类型的文件中?

QSAM 或排队顺序访问方法,通常也称为平面文件。

VSAM 或虚拟顺序访问方法。有几种不同类型的VSAM文件,包括 KSDS (密钥顺序数据集) ESDS (条目序列数据集), RRDS (相对记录数据) Set)和 Linear (概念上类似于内存映射文件)。

DBMS ,如 DB2 IMS 。 DBMS通常具有提取工具,允许从其自己的内部格式编写平面文件。例如,DB2将数据存储在线性VSAM数据集中。

Unix系统服务文件驻留在与QSAM或VSAM不同的文件系统中。这将更加熟悉,因为它具有经典z / OS文件系统没有的目录结构。

数据是什么样的?

You must know the record layout of the data you wish to retrieve.

大型机数据通常在单个记录中包含文本和二进制数据,例如名称和货币金额:

Hopper Grace ar%

......这将是......

x'C8969797859940404040C799818385404040404081996C'

...以十六进制表示。这是代码页37,通常称为EBCDIC。

在不知道姓氏被限制在前10个字节的情况下,给定的名称限制了后续的10个字节,并且货币数量在接下来的3个字节中以压缩十进制(也称为二进制编码的十进制)表示,无法准确传输数据,因为代码页转换会破坏货币金额+819.96。转换到通常在Microsoft Windows上使用的代码页1250,最终会得到......

x'486F707065722020202047726163652020202020617225'

...文本数据被翻译但打包数据被销毁。打包数据在最后一个半字节(最后一个字节的下半部分)中不再有有效符号,并且数量本身已被更改。

安全

您希望访问的数据是否受隐私法规的保护?您可能必须提供一些证据,证明无论采取何种保护措施,只有在您将其从大型机上转移出来后,只有授权人员才能访问大型机上的此类数据。此类保证可能必须满足审计员的要求。

您需要什么

您需要知道什么操作系统保存您的数据,您需要知道哪种类型的文件保存您的数据(DBMS不是文件的类型,但让我们现在就这样做),以及你需要知道你的记录布局。

通常,检索数据的简便方法是将其从现有数据存储(QSAM,VSAM,DBMS)中提取到平面文件中,其中所有数据都采用文本格式。 有大型机实用程序可以实现此目的。在极端情况下,可以编写程序来实现此目标。完成后,您可以传输数据,而不必担心破坏打包或二进制数据。

如果您的数据所在的位置,您可以直接从DBMS读取数据,但这可能取决于商店标准,包括安全性。

现代大型机可以通过FTP,FTPS和SFTP传输数据。在您的商店推荐哪种方式可以询问您的技术人员。