Datenverwaltung, Ein-/Ausgabe

Werbung
Datenverwaltung, Ein-/Ausgabe
it-Akademie Bayern
z/OS und OS/390 Lehrgang 2008
Prof. Dr.-Ing. Wilhelm G. Spruth
Teil 3
Data Sets
EA 0601 ww6
 copyright W. G. Spruth, 08-2004
wgs 10-02
Volume
Ein “Volume” ist eine Standard Sekundärspeicher
Einheit, beispielsweise ein Plattenspeicher oder ein
Magnetband.
Volume
Ein “Volume” ist eine Standard Sekundärspeicher
Einheit, beispielsweise ein Plattenspeicher oder ein
Magnetband.
Datei, File, Data Set
Eine Ansammlung von logisch aufeinander in Bezug
stehenden Daten wird als Datei bezeichnet.
Die englischen Bezeichnungen sind file für Unix,
Linux und Windows Dateien, sowie data set für
konventionelle z/OS Dateien.
Neben konventionellen z/OS Data Sets existiert das
z/OS Unix System Services (USS) Hierarchical File
System (HFS), welches in einem konventionellen
z/OS Data Set abgespeichert wird.
Names
The z/OS disk and data set characteristics differ
considerably from UNIX, Linux and Windows
systems, and carry their own specialized
terminology. The following terms are used to
describe various aspects of storage management on
System z and z/OS:
 Direct Access Storage Device (DASD) is another
name for a disk drive.
 A disk drive is also known as a disk volume, a
disk pack, or a Head-Disk-Assembly (HDA).
Another term for physical volume.
 A disk drive contains cylinders.
 Cylinders contain tracks.
 Tracks contain data records and are in most
cases in the Count Data or Count Key Data
(CKD) format.
 Data blocks are the units of recording on disk.
Es kann sich bei einer Datei um ein Quellprogramm,
eine Makrobibliothek, ein ausführbares Programm,
eine lineare Folge von Bits oder um eine
Gruppierung von Datensätzen (data records)
handeln, die von einem Programm verarbeitet
werden.
E/A Puffer im
Hauptspeicher
Bei einem READ Zugriff auf den Plattenspeicher wird
eine Gruppe von Bytes aus einer Datei in den
Hauptspeicher gelesen.
01
n
Unix, Linux oder Windows
z/OS
Im Unterschied zu Unix, Linux oder Windows Files
(aber auch dem USS File System) bestehen z/OS
Data Sets aus Records. Ein Record (Datensatz) ist
eine Gruppe von Bytes und die die fundamentale
Dateneinheit, mit der ein Programm arbeitet.
Bei einem Lesezugriff auf einen z/OS Data Set
READ (Anton, ID )
wird aus der Datei mit dem Namen Anton ein Record
mit der Bezeichnung ID in einen Puffer im
Hauptspeicher gelesen
In einem gegebenen Data Set haben die Records
(Datensätze) entweder alle eine unterschiedliche
Länge, oder aber alle die gleiche Länge.
Anfang der Datei „Anton“
+++++++++++++++++ ////////////////////////////////////// xxxxxxxxxxxxxxxxx
Offset
Länge
01
n
j
i
Eine Unix, Linux oder Windows File besteht aus
einer linearen Folge von Bytes mit den Adressen
0 .. n. Bei einem Lesezugriff
READ (Anton, i, j )
wird aus der Datei mit dem Namen Anton eine
Gruppe von j aufeinanderfolgenden Bytes in einen
Puffer im Hauptspeicher gelesen, beginnend mit
Byte i .
i stellt einen Zeiger in die Datei dar und wird vom
Anwendungsprogramm verwaltet.
Unix Datei Zugriff
Dateien sind in UNIX Dateien strukturlose
Zeichenketten (Byte Streams). Deshalb muss ein
Unix Anwendungsprogramm den Offset zu den
Daten und die Länge definieren, auf die zugegriffen
werden soll.
Da im UNIX Dateien Byte Streams sind, muss eine
Anwendung den Offset zu den Daten und die Länge
definieren, auf die zugegriffen werden soll. Bei dem
Record-orientierten Zugriff unter z/OS definiert die
Anwendung die Nummer des Records, auf den
zugegriffen werden soll.
Standard-Zugriffsmethoden für die Ein- und
Ausgabe sind in das UNIX-System eingebaut und
werden von der UNIX-Programmiersprache C/C++
unterstützt.
Einige Anwendungen verwenden außerdem noch
direkte (raw) Zugriffe auf Dateien. Dies wird in erster
Linie von Datenbankanwendungen verwendet.
Unter einem Betriebssystem sind unterschiedliche
File Systems möglich. Beispiele:
Windows
 NTFS
 FAT32
Linux
 ext2fs
 ext3fs
 ReiserFS
z/OS
 PDSE
 VSAM
 HFS
Unterschiedliche High Level Formattierung für die
einzelnen File Systems.
Unter Linux kann eine NTFS Datei gelesen, aber
nicht geschrieben werden (Stand 2007).
z/OS benötigt eine unterschiedliche High Level
Formattierung für die unterschiedlichen Arten von
Data Sets.
Data Sets
konventionell
non-VSAM
BSAM
QSAM
ISAM
BDAM
VSAM
Partitioned
entry seq.
key seq.
relative rec.
linear
z/OS basic
HFS
PDS
PDSE
Unix
System Services
Arten von z/OS Data Sets
OS/390 kannte non-VSAM und PDS. VSAM und
PDSE kamen später hinzu. Die Einführung von Unix
System Services erfordete HFS.
Arten von Data Sets
sequentiell (SEQUENTIAL)
Die Sätze in der Datei sind fortlaufend organisiert. Der
Zugriff auf die Datei erfolgt sequentiell in der Reihenfolge
wie die Sätze gespeichert sind.
indiziert (INDEXED)
Die Sätze in der Datei sind mit einem beliebigen Schlüssel
gespeichert. Durch eine zusätzlich gespeicherte
Indextabelle ist ein direkter Zugriff über diesen Schlüssel
möglich.
relativ (RELATIVE) - wahlfrei (RANDOM)
Die Sätze in der Datei sind fortlaufend nummeriert. Der
Zugriff auf die Datei erfolgt direkt über Satznummer.
Partitioned
Sequentiell: Datensätze werden in der Reihenfolge der Ankunft
geschrieben. Datensätze können am Anfang oder am Ende der
Datei beginnend verarbeitet werden. Um auf den 5. Datensatz
zuzugreifen muss das System die 4 vorhergehenden Datensätze
lesen Datensätze können am Ende der Datei hinzugefügt werden.
Sie können jedoch nicht zwischen zwei vorhandenen Datensätzen
eingefügt werden. Sequentielle Data Sets können auf DASD oder
Magnetband gespeichert werden. Sie sind eine Voraussetzung für
die Speicherung auf Magnetband oder eine Drucker-Ausgabe,
Partitioned (Untergliedert): Eine Gruppe von Datensätzen,
sogenannte Member, werden in sequentieller Reihenfolge
geschrieben. Jedem Member wird ein Name in einem Verzeichnis
(Directory) zugeordnet, welches Teil des Data Sets ist. Jeder
Verzeichniseintrag enthält den Namen des Members und seine
Anfangsadresse innerhalb des Data Sets. Die Verzeichniseinträge
sind alphabetisch geordnet gilt die aufsteigende Reihenfolge
(alphanumeric collating sequence); die einzelnen Member können
jedoch in jeder beliebigen Reihenfolge gespeichert sein. Eine
untergliederte Datei muß sich auf einem DASD befinden, und wird
im allgemeinen als Bibliothek bezeichnet. Die folgenden
Dateiformen verwenden die untergliederte Organisation:
 PDS
 PDSE
 HFS
Partitioned data set extended: In appearance, a Partitioned Data Set
Extended (PDSE) is very similar to a partitioned data set. For
accessing a partitioned data set directory or member, most PDSE
interfaces are indistinguishable from PDS data set interfaces.
However, PDSEs have a different internal format, which gives them
increased usability.
The main advantage of using a PDSE over a PDS is that PDSEs use
DASD space much more efficiently. The size of a PDS directory is
fixed regardless of the number of members in it, while the size of a
PDSE directory is flexible and expands to fit the members stored in
it. Also, the system reclaims space automatically whenever a
member is deleted or replaced, and returns it to the pool of space
available for allocation to other members of the same PDSE. The
space can be reused without having to reorganize the data set.
Direkt: Datensätze werden in der Reihenfolge in den Datenbestand
geschrieben, die das Programm vorgibt. Direkt organisierte Dateien
können sich nur auf DASD befinden.
Indexsequentiell: Nach dem Laden, befinden sich die Datensätze in
Reihenfolge. Verschiedene Indexsätze werden durch die
Organisation automatisch erstellt und verwaltet. Diese Organisation
wird aufgrund der geringen Leistung nicht mehr empfohlen. Als
Alternative wird VSAM empfohlen.
VSAM: VSAM (Virtual Storage Access Method) Dateien können über
ein Dienstprogramm, IDCAMS, erstellt werden. Wenn SMS aktiv ist,
können VSAM Dateien auch mittels JCL erstellt werden. VSAMDateien müssen sich auf DASD befinden und können auf vier
verschiedene Arten organisiert sein:




ESDS - Ähnlich einer sequentiellen Datei
KSDS - Ähnlich einer indexsequentiellen Datei
RRDS - Ähnlich einer direkt organisierten Datei
LDS - Eine ESDS ohne jegliche Steuerinformationen
Type
sequential
AM
JCL-Parameter
Description
BSAM,
QSAM
DSORG=PS,
no directory blocks
in SPACE=
Consecutive series of logical records,
originally a pile of punched cards
DSORG=PO,
directory blocks
in SPACE=
Dataset space consists of two areas:
- Directory space with TTRs to members.
- Member space to hold the data.
Program Libraries
partitioned
BPAM
partitioned
extended
DFSMS
Dataset space is formatted into 4K data
DSNTYPE=LIBRARY blocks which can hold directory or
member data
PDSE
HFS
DFSMS
DSNTYPE=HFS
Special dataset type to hold UNIX System
PATH=’/usr/lpp/tcpip’ Services file systems
Related to PDSEs
direct
BDAM
DSORG=DA
Historic way to organize random access to
data usinga disk drive’s actuator echanism
VTOC
keyed
VSAM
RECORG=KS
Data is organized in control areas and
control interval which are mapped into
virtual storage.
Random access is carried out by storage
address calculation.
Database
DL/I
IMS DB
DB2
Oracle
N/A
A great variety of database formats has
developed over the years.
Nowadays, relational database managers
dominate this area.
Dateiarten, Access Methods
Partitioned Data Set
Boot
Block
Super
Block
Block
Block
Group1 Group 2
FS
Descriptor
Block
Group 3
Inode
Liste
Block
Group n
Datenblöcke
Linux ext2fs File System
Format
Das Linux ext2fs File System besteht aus einer Folge von
Datenblöcken, z.B. je 1 KByte groß.
Der Boot Block (Boot Sector) beginnt auf Oberfläche 0,
Spur 0, Sektor 1, gefolgt von einer Liste von Block Groups.
Jede Block Group enthält einen Zeiger auf einen
Superblock.
Der Superblock enthält Angaben über
 Anzahl der Inodes
 Anfangsadresse der i-list ( Inode Liste)
Literatur: M. Bach. The Design of the UNIX Operating System. Prentice Hall, 1986
Unix File System
Root /
User Directory
/u/maier
z/OS Partitioned Data Set
Master Catalog
User Prefix
MAIER
Subdirectory
/u/maier/test1/c
Partitioned Data Set
MAIER.TEST1.C
File
/u/maier/test1/c/pgma
Member
MAIER.TEST1.C(PGMA)
Vergleich Unix Hierarchiches File System
mit z/OS Partitioned Data Set
z/OS benutzt spezielle Software (Access Methods), um Programme
und Daten vom Plattenspeicher in den Hauptspeicher zu lesen und
zu speichern.
Programme werden in Programm Bibliotheken (Partitioned Data
Sets, PDS) gespeichert, und mit der „Partitioned Access Method“
(PAM) in den Hauptspeicher geladen.
Eine PDS Bibliothek enthält individuelle „Members“
(Quellprogramme, ausführbare Programme, JCL Scripts), die durch
einen Index am Anfang des PDS adressiert werden. Members
werden wie eine File innerhalb einer File behandelt.
Unix Files
adressieren einzelne Bytes
Plattenspeicherplatz wird automatisch zugeordnet
(allocated)
z/OS Files adressieren Records
Plattenspeicherplatz wird von Hand zugeordnet
(allocated)
es 0576 ww6
wgs 03-01
Partitioned Data Set (1)
Ein Partitioned Dataset ist eine Art Mini-File-System.
Es verfügt über ein einfaches Inhaltsverzeichnis und
Platz für mehrere Dateien, die als Members
bezeichnet werden Partitioned Datasets werden
häufig für Programm-Bibliotheken eingesetzt, wobei
ein Member ein Programm in dieser Bibliothek
darstellt. Jeder einzelne Member des Datasets kann
ausgewählt oder gelöscht werden, ohne die anderen
zu beeinflussen.
EA 0403 ww6
wgs 11-02
Partitioned Organisation
Eine Gruppe von Datensätzen, ein sogenanntes "Member",
wird in sequentieller Reihenfolge geschrieben, und es wird
dem Member ein NAME im Verzeichnis (Directory)
zugeordnet.
Ein Verzeichnis ist ein Index, der vom Betriebssystem
verwendet wird, um ein Member in einem PDS zu
lokalisieren. Für das Verzeichnis gilt eine aufsteigende
Reihenfolge. Die einzelnen Member können jedoch in jeder
beliebigen Reihenfolge gespeichert sein.
Ein PDS wird allgemein als LIBRARY Bibliothek bezeichnet.
Ein PDS muß auf DASD angelegt sein und sich auf einem
einzelnen Datenträger befinden.
Partitioned Data Set (2)
Ein Partitioned Data Set besteht aus einem Directory und einem
Datenbereich. Der Datenbereich ist in sequentielle Dateien, den
Members, aufgeteilt. Für jedes Member existiert ein Eintrag im
Directory. Der Vorteil eines Partitioned Data Sets gegenüber einem
sequentiellen Data Set ist, dass man auf die gewünschte
Information zugreifen kann, ohne die gesamte Datei durchsuchen
zu müssen. Dies macht Partitioned Data Sets zu der
vorherrschenden Dateiorganisationsform für Program-Libraries, da
dadurch viele einzelne Dateien auf den Platten vermieden werden
können, die Programme in logische Gruppen eingeteilt werden
können und ein schneller Zugriff auf die einzelnen Member möglich
ist. Im Wesentlichen stellt ein Partitioned Data Set eine Art
Directory-Struktur wie unter UNIX zur Verfügung, mit dem
Unterschied, dass nur eine Hierarchie-Ebene möglich ist.
In einem Partitioned Data Set werden Member solange angelegt, bis
das Data Set voll ist, wobei alle Extents, die dafür zur Verfügung
stehen, ausgenutzt sein müssen. Wird ein Member gelöscht, bleibt
der freigewordene Speicherplatz frei, bis durch einen Compress alle
Member an den Anfang verschoben werden und der freie Speicher
wieder in den verfügbaren Bereich wandert. Dieser Vorgang
entspricht den üblichen Garbage Collection Verfahren. Ein Nachteil
dieser Organisation wird offenbar, wenn man bedenkt, dass jede
Veränderung in einem Member, die abgespeichert wird, das
Löschen des bisherigen Members und dessen Neuanlegen im freien
Speicherbereich beinhaltet.
Eine Verbesserung der Platzausnutzung bietet das PDSE
(Partitioned Data Set Extented) Format. Hier kann der freigewordene
Platz wieder verwendet werden, und Member können gesplittet
werden, um den Platz optimal zu nutzen.
Partitioned Organisation – Nutzung
Angenommen, es wurde eine Anforderung an z/OS gestellt,
um das Member C aus der Datei, DSN=MY.PDS, aufzurufen.
Beachten Sie die Codierung im DD-Statement. Das
Membername C befindet sich in Klammern nach dem
Dateinamen im DD-Statement.
z/OS durchsucht das Verzeichnis, bis es den Eintrag für C
findet. Der Verzeichniseintrag enthält die Adresse für C.
z/OS geht zu dieser Adresse und ruft C auf.
DISP=SHR permits data sets to be shared. SHR must be
used only for input data sets. Sharing data set is
necessary because public libraries like SYS1.LINKLIB or
the subroutine libraries should be available to every job in
the system.
Spezifikation für Bibliotheken
Das Verzeichnis (Directory) besteht aus 256-Byte-Blöcken,
die der primären Speicherplatzreservierung entnommen
werden. Die sekundäre Bereichszuordnung wird für das
Directory nicht verwendet.
In einem PDS kann der Speicherbereich auf zwei Arten
knapp werden:
 Es kann sein, dass kein Speicherbereich im Directory
übriggeblieben ist.
 Es kann sein, daß kein Speicherbereich für Member
übriggeblieben ist.
Beispiel:
//AP DD DSN=MY.PDS,UNIT=SYSDA,DISP=(NEW,CATLG),
//
VOL=SER=PAK888,SPACE=(CYL,(50,25,200))
Achten Sie auf die Codierung des SPACE Parameters in
diesem Beispiel. Der Parameter ordnet 200
Verzeichnisblöcke zu. Die Tatsache, dass die Zahl 200
angegeben ist, bewirkt zwei Dinge:
 Die Zahl 200 führt dazu, dass die Datei untergliedert
ist.
 Die Zahl 200 zeigt an, wie groß das Directory sein wird.
Partitioned Organisation – Hinzufügung
Im Directory wird der Membername D an der Stelle eingefügt wo er
in aufsteigender Reihenfolge einzuordnen ist.
Das neue Member mit dem Namen D wurde am Ende des
vorhandenen PDS mit dem Namen MY.PDS hinzugefügt, obwohl
ausreichend Raum für Member D nach Member C vorhanden ist.
Neue Member und geänderte Versionen vorhandener Member
werden in den vorhandenen Speicherbereich am Ende der Datei
geschrieben. Es kann natürlich sein, daß dort kein Speicherplatz
mehr zur Verfügung steht. Member können nicht hinzugefügt
werden, wenn am Ende des reservierten Speichers kein Platz mehr
zur Verfügung steht(auch wenn ausreichend Speicherbereich durch
das Löschen von Membern geschaffen wurde).
Speicher, der zuvor von gelöschten Membern belegt war, kann nur
zur Verwendung angefordert werden, indem das PDS komprimiert
wird. Zum Komprimieren eines PDS verwendet man die IEBCOPY
Routine und codiert denselben Dateinamen in den Eingabe- und
Ausgabe-DD-Statements.
Partitioned Organisation - PDSE
Eine PDSE ist eine System Managed Storage (SMS)
verwaltete Datei, mit einer untergliederten Organisation.
Das heißt, sie verfügt über ein Verzeichnis und einen
Member-Bereich.
Ein PDSE wird auf dieselbe Art und Weise erstellt wie ein
PDS mit einer Ausnahme, für die Erstellung eines PDSE
muß dem DD-Statement der Parameter
DSNTYPE=LIBRARY hinzugefügt werden. Andernfalls wird
ein PDS erstellt. Siehe obiges Beispiel.
Ein PDSE hat jedoch mehrere Eigenschaften, die Vorteile
gegenüber einem PDS darstellen:
 Ein PDSE bietet eine bessere Leistung (Effizienz) als
ein PDS.
 Es muß niemals komprimiert werden.
 Bei einem PDSE tritt keine Verzeichnisknappheit auf.
 Mehrere Member können gleichzeitig hinzugefügt
werden.
Unterschiede PDS zu PDSE
Ein PDSE muß SMS-verwaltet sein. Sie könnten auch mit
einem SMS-verwalteten PDS arbeiten. Dies ist jedoch
ungewöhnlich. Die meisten PDS sind nicht-SMS-verwaltet.
Ausführbare Programme können sowohl in PDS als auch in
PDSE gespeichert werden.
PDSEs müssen niemals komprimiert werden, während dies
bei PDS der Fall ist.
In einem PDS-Directory kann der Speicherbereich knapp
werden, jedoch nicht in einem PDSE-Directory.
Wenn ein Benutzer auf ein PDS mit der Angabe DISP=OLD
zugreift, wird jeder andere Benutzer, der zur gleichen Zeit
auf die Datei zugreifen möchte, in eine Warteschlange
gestellt. Mehrere Benutzer können gleichzeitig auf eine
PDSE zugreifen, wenn für jeden Benutzer DISP=SHR
codiert ist. Insbesondere können Benutzer mehrere
Member zur gleichen Zeit hinzufügen.
Non-VSAM Data Sets
Konventionelle Data Sets
Zugriffsmethoden
Der Zugriff zu Daten in unterschiedlichen
Organisationsformen erfolgt über als Zugriffsmethoden
bezeichnete Komponenten. Die DFSMSdfp Komponente
von z/OS enthält u. a. folgende Zugriffsmethoden:
Non-VSAM: sequentielle Organisation der Daten. BSAM
erlaubt Zugriff auf die physische Blockebene. QSAM
erlaubt den Zugriff auf den logischen Satz (Record). BPAM
unterstützt sequentielle Member von Partitioned Data Sets
(PDS / PDSE). BDAM: direkter Zugriff auf Records über die
direkte oder relative Adresse. ISAM:Index-sequentielle
Access Metzod.
VSAM: Zugriff auf Records über die relative Adresse oder
einen Indexschlüssel.
OAM (Object Access Method): Verwaltung von unkodierten
Bit-Datenströmen (NCI - Non Coded Information) in der
Form von Objekten
Benutzer
Programm
Access
Method
READ ( … )
SVC
user state
kernel state
Je nach Art der Data Set Organisation und der Art
der Lese/Schreibzugriffe existieren unterschiedliche
Zugriffsmethoden (access methods).
Access Method
An access method defines the technique that is
used to store and retrieve data. Access methods
have
 their own data set structures to organize data,
 macros to define and process data sets, and
 utility programs to process data sets.
Access methods are identified primarily by the data
set organization. For example, the basic sequential
access method (BSAM) or queued sequential access
method (QSAM) are used with sequential data sets.
There are times when an access method identified
with one organization can be used to process a data
set organized in a different manner. For example, a
sequential data set created using BSAM can be
processed by the basic direct access method
(BDAM), and vice versa.
Another example is UNIX files, which can be
processed using BSAM, QSAM, basic partitioned
access method (BPAM), or virtual storage access
method (VSAM).
Types of non-VSAM data sets
Non-VSAM data sets are collections of fixed-length or
variable-length records, grouped into blocks. BSAM,
QSAM, or BPAM are used to access non-VSAM data sets.
Physical sequential data set (PS)
Sequential data sets contain records that are stored in
physical order. New records are appended to the end of the
data set.
Partitioned data set (PDS)
Partitioned data sets contain a directory of sequentially
organized members, each of which can contain a program
or data. After opening the data set, any individual member
can be retrieved without searching the entire data set.
Partitioned data set extended (PDSE)
Partitioned data sets extended contain an indexed,
expandable directory of sequentially organized members,
each of which can contain a program or data. The main
advantage of using a PDSE over a PDS is that a PDSE
automatically reuses space within the data set.
Dateiorganisationen
Das ursprüngliche OS/360 Betriebssystem
verwendete Data Sets (und die dazugehörigen
Access Methods) wie BSAM, QSAM, BDAM u.A. Wir
bezeichnen diese Data Sets als konventionelle oder
non-VSAM Data Sets. VSAM Data Sets kamen später
und sind weitgehend als Ersatz für diese non-VSAM
Data sets gedacht. Bisher haben sie die
non-VSAM Data Sets nur teilweise verdrängt.
Sequentieller Data Set
Record 1
Record 2
Record 3
Record 4
Record ...
Record ...
Record
Record n
Bei der sequentiellen Organisation werden die Records des
Datasets hintereinander (sequentiell) angeordnet und in
dieser Reihenfolge verarbeitet.
Sequentielle Datasets können auf Magnetbändern und
Platten gespeichert oder zum Drucker übertragen werden.
Die sequentielle Organisation ist dann zu empfehlen, wenn
die Daten in der gleichen Reihenfolge verarbeitet werden,
in der sie generiert wurden. Ein Beispiel dafür bildet eine
Gehaltsdatei, in der alle Mitarbeiter-Records einer Firma
enthalten sind
es 0440 ww6
wgs 11-02
Sequentielle Datenorganisation
Datensätze werden in der Reihenfolge der Ankunft
geschrieben. Datensätze können am Anfang oder am Ende
der Datei beginnend verarbeitet werden. Datensätze
können am Ende der Datei hinzugefügt werden. Sie können
jedoch nicht zwischen zwei vorhandenen Datensätzen
eingefügt werden. Alle Einheitentypen werden unterstützt.
Ein Datenbestand kann über mehrere Datenträger verteilt
sein.
Beispiel:
//AS DD DSN=MY.SEQ,UNIT=SYSDA,
//
DISP=(NEW,CATLG),SPACE=(8900,(100,50))
Read
Write
BSAM
Access Method
Get
Put
QSAM
Access Method
Sequential Data Set
Der Zugriff auf einen Data Set ist mit
unterschiedlichen Zugriffsmethoden möglich.
Gepufferte Ein/Ausgabe
Im Gegensatz zu READ und WRITE benutzen GET und PUT
eine gepufferte Ein/Ausgabe. Die Ein/Ausgabe Puffer
werden von der Access Method verwaltet.
Sequentiel Data Sets
Direkte Organisation
Record 1
Key 1
Record 2
Key2
Record 3
Key 3
Record 4
Key 4
Record ...
Record ...
Record
Record n
Key n
Werden alle Records des Datasets mit einem
Schlüssel (Key) versehen, können direkte (random)
Zugriffe auf die Records erfolgen. Die direkte
Organisationsform ist dann notwendig, wenn der
Zugriff auf die einzelnen Records des Datasets nicht
vorhersehbar ist.
In diesem Fall hat der nächste zu verarbeitende
Record keine physikalische Kopplung mit dem
vorhergehenden.
es 0441 ww6
wgs 11-02
Direct Organisation
Die direkte Organisation ist für Anwendungen konzipiert,
die eine wahlfreie Verarbeitung einer Datei durchführen.
Bei der Verarbeitung kann es sich um eine Lese-oder
Schreibverarbeitung handeln. Wenn Benutzer zum Beispiel
Datensätze in beliebiger Reihenfolge aus einem
Datenbestand aufruft, ist die direkte Organisation
möglicherweise für die Anwendung geeignet. Die
Anwendung liefert dann die Adresse des Datensatzes, der
genutzt werden soll.
Zwei Punkte sind bei einer Datei mit direkter Organisation
zu beachten:
 Bei der Erstellung kann keine sekundäre
BEREICHSZUORDNUNG angegeben werden.
 Beim Laden der Datei muß immer DCB=DSORG=DA
angegeben werden.
Index-sequentielle Organisation
ISAM
es 0442 ww6
wgs 11-02
Zugehörige Unterlagen
Herunterladen