IMS DB - Blok Kontrol

Blok Kontrol IMS menentukan struktur database IMS dan akses program ke sana. Diagram berikut menunjukkan struktur blok kontrol IMS.

DL / I menggunakan tiga jenis Blok Kontrol berikut -

  • Deskriptor Basis Data (DBD)
  • Blok Spesifikasi Program (PSB)
  • Blok Kontrol Akses (ACB)

Deskriptor Basis Data (DBD)

Poin yang perlu diperhatikan -

  • DBD menjelaskan struktur fisik lengkap dari database setelah semua segmen telah ditentukan.

  • Saat menginstal database DL / I, satu DBD harus dibuat karena diperlukan untuk mengakses database IMS.

  • Aplikasi dapat menggunakan tampilan DBD yang berbeda. Mereka disebut Struktur Data Aplikasi dan ditentukan dalam Blok Spesifikasi Program.

  • Administrator Database membuat DBD dengan pengkodean DBDGEN pernyataan kontrol.

DBDGEN

DBDGEN adalah Generator Deskriptor Database. Membuat blok kontrol adalah tanggung jawab Administrator Database. Semua modul beban disimpan di pustaka IMS. Pernyataan makro Bahasa Perakitan digunakan untuk membuat blok kontrol. Diberikan di bawah ini adalah contoh kode yang menunjukkan cara membuat DBD menggunakan pernyataan kontrol DBDGEN -

PRINT	NOGEN
DBD	NAME=LIBRARY,ACCESS=HIDAM
DATASET	DD1=LIB,DEVICE=3380
SEGM	NAME=LIBSEG,PARENT=0,BYTES=10
FIELD	NAME=(LIBRARY,SEQ,U),BYTES=10,START=1,TYPE=C
SEGM	NAME=BOOKSEG,PARENT=LIBSEG,BYTES=5
FIELD	NAME=(BOOKS,SEQ,U),BYTES=10,START=1,TYPE=C
SEGM	NAME=MAGSEG,PARENT=LIBSEG,BYTES=9
FIELD	NAME=(MAGZINES,SEQ),BYTES=8,START=1,TYPE=C
DBDGEN
FINISH
END

Mari kita pahami istilah yang digunakan dalam DBDGEN di atas -

  • Saat Anda menjalankan pernyataan kontrol di atas di JCL, itu menciptakan struktur fisik di mana PERPUSTAKAAN adalah segmen akar, dan BUKU dan MAGZIN adalah segmen anaknya.

  • Pernyataan makro DBD pertama mengidentifikasi database. Di sini, kami perlu menyebutkan NAMA dan AKSES yang digunakan oleh DL / I untuk mengakses database ini.

  • Pernyataan makro DATASET kedua mengidentifikasi file yang berisi database.

  • Jenis segmen ditentukan menggunakan pernyataan makro SEGM. Kita perlu menentukan ORANG TUA dari segmen itu. Jika itu adalah segmen Root, sebutkan ORANGTUA = 0.

Tabel berikut menunjukkan parameter yang digunakan dalam pernyataan makro FIELD -

S.No Parameter & Deskripsi
1

Name

Nama bidang, biasanya sepanjang 1 hingga 8 karakter

2

Bytes

Panjang lapangan

3

Start

Posisi lapangan dalam segmen

4

Type

Jenis data lapangan

5

Type C

Tipe data karakter

6

Type P

Tipe data desimal yang dikemas

7

Type Z

Tipe data desimal yang dikategorikan

8

Type X

Tipe data heksadesimal

9

Type H

Tipe data biner setengah kata

10

Type F

Tipe data biner kata penuh

Blok Spesifikasi Program (PSB)

Dasar-dasar PSB adalah sebagai berikut -

  • Database memiliki struktur fisik tunggal yang ditentukan oleh DBD tetapi program aplikasi yang memprosesnya dapat memiliki tampilan database yang berbeda. Tampilan ini disebut struktur data aplikasi dan ditentukan dalam PSB.

  • Tidak ada program yang dapat menggunakan lebih dari satu PSB dalam satu eksekusi.

  • Program aplikasi memiliki PSB sendiri dan program aplikasi yang memiliki persyaratan pemrosesan database serupa untuk berbagi PSB adalah hal yang umum.

  • PSB terdiri dari satu atau lebih blok kontrol yang disebut Program Communication Block (PCBs). PSB berisi satu PCB untuk setiap database DL / I yang akan diakses program aplikasi. Kami akan membahas lebih lanjut tentang PCB di modul mendatang.

  • PSBGEN harus dilakukan untuk membuat PSB untuk program tersebut.

PSBGEN

PSBGEN dikenal sebagai Generator Blok Spesifikasi Program. Contoh berikut membuat PSB menggunakan PSBGEN -

PRINT   NOGEN
PCB     TYPE=DB,DBDNAME=LIBRARY,KEYLEN=10,PROCOPT=LS
SENSEG  NAME=LIBSEG
SENSEG  NAME=BOOKSEG,PARENT=LIBSEG
SENSEG  NAME=MAGSEG,PARENT=LIBSEG
PSBGEN  PSBNAME=LIBPSB,LANG=COBOL
END

Mari kita pahami istilah yang digunakan dalam DBDGEN di atas -

  • Pernyataan makro pertama adalah Program Communication Block (PCB) yang menjelaskan Jenis database, Nama, Panjang Kunci, dan Opsi Pemrosesan.

  • Parameter DBDNAME pada makro PCB menentukan nama DBD. KEYLEN menentukan panjang kunci gabungan terpanjang. Program dapat memproses di database. Parameter PROCOPT menentukan opsi pemrosesan program. Misalnya, LS berarti Operasi LOAD saja.

  • SENSEG dikenal sebagai Sensitivitas Tingkat Segmen. Ini mendefinisikan akses program ke bagian database dan diidentifikasi pada tingkat segmen. Program ini memiliki akses ke semua bidang dalam segmen yang sensitif. Suatu program juga dapat memiliki sensitivitas tingkat lapangan. Dalam hal ini, kami mendefinisikan nama segmen dan nama induk dari segmen tersebut.

  • Pernyataan makro terakhir adalah PCBGEN. PSBGEN adalah pernyataan terakhir yang mengatakan bahwa tidak ada lagi pernyataan untuk diproses. PSBNAME mendefinisikan nama yang diberikan ke modul PSB keluaran. Parameter LANG menentukan bahasa di mana program aplikasi ditulis, misalnya, COBOL.

Blok Kontrol Akses (ACB)

Di bawah ini adalah hal-hal yang perlu diperhatikan tentang blok kontrol akses -

  • Blok Kontrol Akses untuk program aplikasi menggabungkan Deskriptor Database dan Blok Spesifikasi Program ke dalam bentuk yang dapat dieksekusi.

  • ACBGEN dikenal sebagai Access Control Blocks Generator. Ini digunakan untuk menghasilkan ACB.

  • Untuk program online, kami perlu membuat ACB sebelumnya. Karenanya utilitas ACBGEN dijalankan sebelum menjalankan program aplikasi.

  • Untuk program batch, ACB juga dapat dibuat pada waktu eksekusi.