1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

はじめに

メインフレームネタになります。
特に富士通メインフレームでバックアップデータを保存先となる仮想テープ装置についてまとめたいと思います。

仮想テープ装置とは

仮想テープ装置は、英語で書くとVirtual Tape Library、略してVTL装置と呼ばれます。
端的に言えば、データを保存する媒体です。
データを保存する先としては、現代であればS3のようなクラウドストレージ、ローカルであればSSDやHDDだと思います。
昔々、1990年代でしょかね:thinking:、データを保存する先としてカセットのようなテープ装置が使われていました。
私も見たことないですが。

テープだとテープが終わったら、掛け替えないといけないです。
現代だとテープがSSDやHDDに変わっています。また複数台のDISKをひとまとめにして1台の媒体として扱えるようになっていたりします。
そのため、ディスク上に仮想的にテープ装置を構築するので、仮想テープ装置と呼ばれています。

読込、書込みが遅いため、データのバックアップ保存先として使われることが多いかと思います。
バックアップとして使わるので、世代管理を行うことができます。

VTLカタログ情報加工ツール

VTLのマスタ情報をダンプしたデータからデータセット名とバックアップされる世代の上限値を抽出するPythonプログラムを作ってみました。
メインフレームマイグレーションでバックアップデータ移行対象調査にて活用できるかもということで作成してみました。

VTLカタログ情報からデータセット名とバックアップされる世代の上限を取得
infile = './input.txt'
outfile='./output.txt'
datasetFlag = 0

outFile = open(outfile,'w',encoding='utf-8')

with open(infile) as file_object:
    for line in file_object:
        if 'GDG BASE' in line:
            target='------'
            idx = line.find(target)
            dataName = line[idx + len(target):]
            datasetFlag=1
        
        if datasetFlag == 1:
            if 'LIMIT-----------------' in line:
                targetst='-----------------'
                idxst = line.find(targetst)
                targetend='SCRATCH'
                idxend = line.find(targetend)
                datalimit = line[idxst + len(targetst):idxend]
                datasetFlag=0

                outFile.write(f'{dataName.strip()},{datalimit.strip()}\n')
outFile.close()

<リポジトリ>

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?