Keyboard Shortcuts
Likes
- H390-MVS
- Messages
Search
Re: Working with ISAM Data Sets
Yeah ... DONT use ISAM. You will regret?it if you do so. USE VSAM KSDS instead. Easier and less complicated. If you need some pointers let me know. Joe On Sat, Dec 26, 2020 at 9:59 AM Patrik Schindler <poc@...> wrote: Hello, |
Difficulties with TCP/IP and data sets
Hi, all I have a rather dumb question, I recognize. But I've been struggling with it for the past day. There's a data set (CENTER.PARMLIB) in which TCPPROF member is contained. TSO MVSCUST opens this file for me. And I can also access it through DSLIST. Though I can't access it anywhere. Any other ISPF utilities just tells me either the ¡°Data set is not cataloged¡± or (if I specify the volume) ¡°Data set is not found¡±. That's quite problematic because, on top of all that, system have been abending on me, crying 'bout lack of space in the dataset. But I can't edit CENTER.PARMLIB allocation because all the tools which seems to deal with that can't find the data set. Also, when using the ¡°ALLOC¡± command, it infers the dataset is prefixed the current login, SYSPROG1. So, is there any way out of this mess? Thanks, Att., -trp |
Working with ISAM Data Sets
Hello,
"The records that comprise a newly created data set must be presented for writing in ascending order by key." Source: Does this mean that I need to at least write one record with some arbitrary key value, and later (DISP=MOD) can add more records which are not necessarily in order with the key value already in the first record? I want to find some practical use for a batch workflow involving collection of data and generating reports of it in TK4-. I decided to postpone VSAM to later when I feel skilled enough to create interactive applications using KICKS. Thanks! :wq! PoC |
Re: Show disk usage in TK4-
When Hercules writes the data from memory cache to disk, it compresses
toggle quoted message
Show quoted text
the data and writes at a new location. The old location is marked as available and the files is eventually compressed to remove unused space resulting in a smaller file on the host. An delete on the host just marks the tracks as available in the VTOC (or free space map in the VTOCINDEX). An erase before delete would do both (I guess). Mainframe programs that are I/O limited on actual hardware are CPU limited on Hercules, since it has so much disk cache in memory. Early versions of Hercules did cause mainframe programs problems due to I/O completing so fast. On Mon, Dec 21, 2020 at 6:38 AM Patrik Schindler <poc@...> wrote:
--
Mike A Schwab, Springfield IL USA Where do Forest Rangers go to get away from it all? |
Re: Show disk usage in TK4-
Hello Joe,
Am 21.12.2020 um 14:15 schrieb Joe Monk <joemonk64@...>: "The space recovery routine relocates track or block group images towards the beginning of the file, causing free space to move towards the end of the file. When a free space reaches the end of the file, it 'falls off', that is, the file size is reduced."Thanks a lot, now it¡¯s clear to me. :wq! PoC |
Re: Show disk usage in TK4-
Hercules uses PC based disk files. The format inside those PC based disk files is mainframe CKD or FBA. The "host file" that Mike was referring to is the PC based disk file. Since there is no need to statically allocate the entirety?of the DASD space (called "thin provisioning" in SAN land), the hercules disk process can dynamically allocate and release space from its emulated mainframe DASD files without issue... "The space recovery routine relocates track or block group images towards the beginning of the file, causing free space to move towards the end of the file. When a free space reaches the end of the file, it 'falls off', that is, the file size is reduced." Joe On Mon, Dec 21, 2020 at 6:38 AM Patrik Schindler <poc@...> wrote: Hello Mike, |
Re: Show disk usage in TK4-
Hello Mike,
Am 20.12.2020 um 18:57 schrieb Mike Schwab <Mike.A.Schwab@...>: Hercules CCKD(64) releases the space to condense the host file in the background.May I ask what exactly you mean by ?release¡°? Overwrite them with a constant value, so a high compression ratio is achieved? On I/O-heavy loads, could it be beneficial to not use compression at all? Moshix (the mainframe video guy) claimed, that today, CPUs are so fast, that it barely matters. What¡¯s your opinion? :wq! PoC |
Re: Show disk usage in TK4-
Jeffrey Melton wrote:
But regardless of whether you actually have physical[...] Just making sure I understand the ramifications of allPrecisely! You understand the situation perfectly. Using an inefficient block size will waste space on the volume, causing it to hold less data than it otherwise could. The operating system would not be able to fit as much data on the volume (dasd) than it otherwise could have fit had a more efficient block size been chosen, and this is *regardless* of whether the dasd is a Hercules uncompressed CKD dasd or a compressed CCKD/CCKD64 dasd, because Hercules DOES strictly enforce an emulated dasd device type's maximum track size limitation. -- "Fish" (David B. Trout) Software Development Laboratories mail: fish@... |
Re: Show disk usage in TK4-
¿ªÔÆÌåÓýExactly correct.? You¡¯ve got it. ? Peter ? From: [email protected] <[email protected]> On Behalf Of Jeffrey Melton via groups.io
Sent: Monday, December 21, 2020 1:20 AM To: [email protected] Subject: Re: [H390-MVS] Show disk usage in TK4- ? But regardless of whether you actually have physical "wasted" space on your real disk drive by using compressed virtual devices, if you choose a suboptimal block size, you still won't be making the most of the (even compressed) virtual devices you do allocate in your IOGEN, correct?? Granted there is a tradeoff, but say you really screw up and set up a terrible block size for your files that causes MVS to "waste" half of the "available" space of a given virtual DASD.? Compressed or non-compressed, that would still mean that MVS thinks that virtual device is "full" when it really isn't, it's just that the existing files are allocated terribly out of whack, and you'll end up having to create and maintain more virtual "devices" in your emulated mainframe's IOGEN than would normally be necessary, correct? --._,_._,_ |
Re: Show disk usage in TK4-
But regardless of whether you actually have physical "wasted" space on your real disk drive by using compressed virtual devices, if you choose a suboptimal block size, you still won't be making the most of the (even compressed) virtual devices you do allocate in your IOGEN, correct?? Granted there is a tradeoff, but say you really screw up and set up a terrible block size for your files that causes MVS to "waste" half of the "available" space of a given virtual DASD.? Compressed or non-compressed, that would still mean that MVS thinks that virtual device is "full" when it really isn't, it's just that the existing files are allocated terribly out of whack, and you'll end up having to create and maintain more virtual "devices" in your emulated mainframe's IOGEN than would normally be necessary, correct?
Just making sure I understand the ramifications of all this correctly, Jeff.? |
Re: Show disk usage in TK4-
Normally, the track is not erased on delete. It is a rarely used
toggle quoted message
Show quoted text
option on VSAM files because it can take a while. There are some programs that can go through and erase empty tracks later. Hercules CCKD(64) releases the space to condense the host file in the background. On Sun, Dec 20, 2020 at 10:54 AM Patrik Schindler <poc@...> wrote:
--
Mike A Schwab, Springfield IL USA Where do Forest Rangers go to get away from it all? |
Re: Show disk usage in TK4-
Hello David,
Am 13.12.2020 um 22:27 schrieb Fish Fish <david.b.trout@...>: We're of course ignoring the compressed dasd image "free space" issue here as it has nothing to do with track blocksize efficiency. Free space is just an artifact (overhead) of Hercules's compressed dasd design.First, thanks for your explanation. Second, do I understand right, that a freed track¡¯s data isn¡¯t zeroed out, so overall compression ratio is worse than it could probably be? Just a thought. With today¡¯s actual disk sizes, the question is a more academic one than anything else. :wq! PoC |
Re: Show disk usage in TK4-
Hello Mike,
Am 13.12.2020 um 17:55 schrieb Mike Schwab <Mike.A.Schwab@...>: Before each physical block of data, there is a fixed amount of spaceThanks for that explanation. I see, to squeeze out the most possible juice from the hardware, it¡¯s necessary to dig deep into its bowels. No matter if we¡¯re talking Mainframe or C64-Fans-Smooth-Scrolling-Demo-whatever. :-) I¡¯ll keep your hints in mind! :wq! PoC |
Re: Show disk usage in TK4-
"This is why many PDS datasets containing JCL, macros, etc., are often blocked at 3120 or 6160." Actually, thats not it at all - No offense to Bob. The reason for 3120/6160 is because, in the migrations from DASD to DASD, that was shown to be the best COMPROMISE blocksize among 2314/3330/3350/3380. So, a blocksize of 6160 allows for device independence. Joe ? On Sun, Dec 13, 2020 at 1:53 PM Bob Polmanter <wably@...> wrote:
|
Re: Show disk usage in TK4-
Back in the 1980's and 90's, when MVS was our primary OS, our large MVS shop recommended that block sizes of around 6K were a good compromise. One consideration was that our shop made heavy use of IBM's Hierarchical Storage Manager. Datasets that weren't accessed for about 2 weeks would be automatically migrated to a backup storage pool, which, in the 80's, was an IBM 3850 Mass Storage System. If a job tried to access a migrated dataset if would have to be recalled and storage on one of the primary disk drives, which might be a different device type than what it was originally created on and what was an ideal blocksize for the original device might not be the ideal blocksize for the current device.
toggle quoted message
Show quoted text
As was pointed out in some figures given in a previous reply to this thread, an ideal blocksize gives about 98% usage of the total track space. But, a blocksize of around 6K gives about 92% utilization, which is still pretty good. Thus, unless you really knew what you were doing and wanted to tweak the system for the absolute best efficiency, around 6K was considered a good compromise. Charles Bailey On 2020-12-13 14:33, Mike Schwab wrote:
CKD devices use the full track capacity, even if empty. CCKD(64) |
Re: Show disk usage in TK4-
Mark Waterbury wrote:
A couple of thoughts... (adding some historical perspective)...[...] Also, I am not sure that it matters as much with emulated DASDOhh! Me! Me! I know! :) The answer is: for NON-compressed CKD dasd, there would indeed be "wasted" (sort of) space on a track for poorly chosen block sizes. However, such "wasted" space wouldn't be noticeable from the host's point of view. That is to say, for NON-compressed CKD dasd, the size of Hercules's dasd image file is fixed and varies directly according to device type (e.g. 3350, 3390, etc), and Hercules's CKD dasd logic directly indexes into the file to reach the desired track. If an inefficient block size was used, there would simply be unused (i.e. "wasted") space (room) remaining in that track's file position slot. For COMPRESSED dasd however (CCKD/CCKD64), there would be essentially *ZERO* "wasted" space, as each track's data is compressed and consumes only as much file space in the emulated dasd image's file as would be needed to hold that compressed track. (The entire track -- i.e. ALL data blocks (i.e. CKD "records") contained on that track -- is compressed into one chunk of compressed data, and only as much file space as would be needed to hold that chunk of data would actually be consumed in the dasd image file.(*)) But regardless of whether the dasd image is uncompressed or compressed (CKD vs. CCKD/CCKD64), Hercules does NOT reserve (consume) any file space for inter-record gaps. ------------ (*) We're of course ignoring the compressed dasd image "free space" issue here as it has nothing to do with track blocksize efficiency. Free space is just an artifact (overhead) of Hercules's compressed dasd design. Hope that helps! -- "Fish" (David B. Trout) Software Development Laboratories mail: fish@... |
Re: Show disk usage in TK4-
CKD devices use the full track capacity, even if empty. CCKD(64)
compresses the data and nothing for empty tracks. VSAM uses 4K block maximum (except z/OS versions going to 18k that reduces I/O but doesn't increase space utilization). So a 4k or 6k block size or less is pretty reasonable. On Sun, Dec 13, 2020 at 2:17 PM Mark Waterbury <mark.s.waterbury@...> wrote:
-- Mike A Schwab, Springfield IL USA Where do Forest Rangers go to get away from it all? |
Re: Show disk usage in TK4-
All:
A couple of thoughts...? (adding some historical perspective)... ?
Back in the day, DASD space was very expensive, especially the larger devices like 3350s when they were new, and 3380s when they were first available.?? So, it made sense to expend extra manual effort to carefully calculate the best possible blocksizes for each dataset on DASD, based on the target device type and the application requirements for the dataset.
?
But, nowadays, with emulated DASD, and the price per megabyte of disk space having fallen by several orders of magnitude, I question the wisdom of expending ANY extra time or energy on these calculations.
?
Far better to just stick religiously with some standard block sizes, such as the good old IPO recommended RECFM=FB,LRECL=80,BLKSIZE=3120 for source libraries or RECFM=U,BLKSIZE=6144 for load module libraries.? Those sizes work well across all device types, and allow you to easily copy or move datasets from one device type to another with impunity.
?
Also, I am not sure that it matters as much with emulated DASD -- does anyone know if Hercules emulates DASD so closely as to actually "waste" the additional space required for inter-record gaps, etc.?
?
Also, I would never suggest or recommend "over-allocating" or "cramming" more physical blocks on an emulated track than could ever be placed on a "real" DASD track, just in case you ever wanted or needed to save the dataset to tape and restore it to a "real" DASD device.
All the best, Mark S. Waterbury |