กลับไปหน้าบทความ

อ่าน 5 นาที

ชุดข้อมูล (เมนเฟรม IBM)

ในบริบทของ คอมพิวเตอร์เมนเฟรมของ IBM ใน ตระกูล IBM System/360 และรุ่นต่อๆ มา ชุดข้อมูล (IBM นิยมใช้คำนี้) หรือ dataset คือ ไฟล์คอมพิวเตอร์ ที่มี การจัดระเบียบเป็นระเบียน...

ชุดข้อมูล (เมนเฟรม IBM)

ในบริบทของคอมพิวเตอร์เมนเฟรมของIBM ใน ตระกูล IBM System/360และรุ่นต่อๆ มาชุดข้อมูล (IBM นิยมใช้คำนี้) หรือ datasetคือไฟล์คอมพิวเตอร์ที่มีการจัดระเบียบเป็นระเบียนการใช้คำนี้เริ่มต้นจากระบบ เช่นDOS/360และOS/360และยังคงใช้ในระบบรุ่นต่อๆ มา รวมถึงVSEและz/OS ในปัจจุบัน เอกสารประกอบสำหรับระบบเหล่านี้ในอดีตนิยมใช้คำนี้มากกว่าคำ ว่าไฟล์

โดยทั่วไปชุดข้อมูลจะถูกจัดเก็บไว้บนอุปกรณ์จัดเก็บข้อมูลแบบเข้าถึงโดยตรง (DASD) หรือเทปแม่เหล็ก[ 1 ]อย่างไรก็ตาม อุปกรณ์บันทึกหน่วย เช่น เครื่องอ่านบัตรเจาะรู เครื่องเจาะบัตร เครื่องพิมพ์แบบบรรทัด และเครื่องพิมพ์แบบหน้า สามารถให้ข้อมูลเข้า/ออก (I/O) สำหรับชุดข้อมูล (ไฟล์) ได้[ 2 ]

ชุดข้อมูลไม่ใช่สตรีมไบต์ ที่ไม่มีโครงสร้าง แต่ถูกจัดระเบียบในโครงสร้างระเบียนเชิงตรรกะต่างๆ[ 3 ]และบล็อกที่กำหนดโดยDSORG(การจัดระเบียบชุดข้อมูล) RECFM(รูปแบบระเบียน) และพารามิเตอร์อื่นๆ พารามิเตอร์เหล่านี้ถูกระบุในขณะที่จัดสรร (สร้าง) ชุดข้อมูล ตัวอย่างเช่น ด้วย คำสั่ง ภาษาควบคุมงานDDภายในโปรแกรมที่กำลังทำงาน พารามิเตอร์เหล่านี้จะถูกจัดเก็บไว้ในบล็อกควบคุมข้อมูล (DCB) หรือบล็อกควบคุมการเข้าถึง (ACB) ซึ่งเป็นโครงสร้างข้อมูลที่ใช้ในการเข้าถึงชุดข้อมูลโดยใช้วิธี การเข้าถึง

ระเบียนในชุดข้อมูลอาจมีความยาวคงที่ แปรผัน หรือ "ไม่กำหนด" [ 4 ]

การจัดระเบียบชุดข้อมูล

สำหรับ OS/360 พารามิเตอร์ของ DCB DSORGจะระบุวิธีการจัดระเบียบชุดข้อมูล อาจเป็น[ 5 ]

ซีคิว
วิธีการเข้าถึงการสื่อสารโทรคมนาคมแบบเข้าคิว (Queued Telecommunications Access Method : QTAM) ในโปรแกรมควบคุมข้อความ (Message Control Program: MCP)
เอ็กซ์ซี
กลุ่มสายงานการสื่อสาร
ดีเอ
วิธีการเข้าถึงโดยตรงขั้นพื้นฐาน (BDAM)
จีเอส
อุปกรณ์กราฟิกสำหรับวิธีการเข้าถึงกราฟิก (GAM)
เป็น
วิธีการเข้าถึงแบบลำดับดัชนี (ISAM)
เอ็มคิว
คิวข้อความ QTAM ในแอปพลิเคชัน
พีโอ
องค์กรที่แบ่งส่วน
พีเอส
ลำดับทางกายภาพ

เป็นต้น ชุดข้อมูลที่จัดเก็บในเทปอาจมีข้อจำกัดอยู่หลายประการDSORG=PSการเลือกรูปแบบการจัดระเบียบข้อมูลขึ้นอยู่กับวิธีการเข้าถึงข้อมูล โดยเฉพาะอย่างยิ่งวิธีการอัปเดตข้อมูล

โปรแกรมเมอร์ใช้วิธีการเข้าถึงข้อมูล ที่หลากหลาย (เช่นQSAMหรือVSAM ) ในโปรแกรมเพื่ออ่านและเขียนชุดข้อมูล วิธีการเข้าถึงจะขึ้นอยู่กับโครงสร้างของชุดข้อมูลนั้นๆ

รูปแบบการบันทึก (RECFM)

ไม่ว่าจะมีการจัดระเบียบแบบใด โครงสร้างทางกายภาพของแต่ละระเบียนโดยพื้นฐานแล้วจะเหมือนกัน และมีความสม่ำเสมอทั่วทั้งชุดข้อมูล สิ่งนี้ระบุไว้ในRECFMพารามิเตอร์ DCB RECFM=Fหมายความว่าระเบียนมีความยาวคงที่ ซึ่งระบุผ่านLRECLพารามิเตอร์RECFM=Vระบุระเบียนที่มีความยาวแปรผัน ระเบียน V เมื่อจัดเก็บในสื่อ จะมีคำนำหน้าเป็น Record Descriptor Word (RDW) ซึ่งประกอบด้วยความยาวจำนวนเต็มของระเบียนในหน่วยไบต์และบิตแฟล็ก ด้วยRECFM=FBและRECFM=VBระเบียนเชิงตรรกะหลายรายการจะถูกจัดกลุ่มเข้าด้วยกันเป็นบล็อกทางกายภาพ เดียว บนเทปหรือ DASD FB และ VB เป็นบล็อกคงที่และบล็อกแปรผันตามลำดับRECFM=U(ไม่ได้กำหนด) ก็มีความยาวแปรผันเช่นกัน แต่ความยาวของระเบียนจะถูกกำหนดโดยความยาวของบล็อกแทนที่จะเป็นฟิลด์ควบคุม

พารามิเตอร์BLKSIZEระบุความยาวสูงสุดของบล็อกRECFM=FBS[ 6 ]ยังสามารถระบุได้ ซึ่งหมายถึงมาตรฐานบล็อกคงที่ หมายความว่าบล็อกทั้งหมด ยกเว้นบล็อกสุดท้าย จะต้องมีBLKSIZEความยาว เต็ม RECFM=VBSหรือแบบบล็อกแปรผันหมายความว่าเรคอร์ดเชิงตรรกะสามารถครอบคลุมสองบล็อกขึ้นไป โดยมีแฟล็กใน RDW ที่ระบุว่าส่วนของเรคอร์ดนั้นต่อเนื่องไปยังบล็อกถัดไปและ/หรือต่อเนื่องมาจากบล็อกก่อนหน้าหรือไม่

กลไกนี้ช่วยขจัดความจำเป็นในการใช้ค่าไบต์ " ตัวคั่น " ใดๆ เพื่อแยกเรคอร์ด ดังนั้นข้อมูลจึงสามารถเป็นประเภทใดก็ได้ รวมถึงจำนวนเต็มไบนารี เลขทศนิยม หรืออักขระ โดยไม่ทำให้เกิดเงื่อนไขสิ้นสุดเรคอร์ดที่ผิดพลาด ชุดข้อมูลเป็นนามธรรมของชุดเรคอร์ด ซึ่งแตกต่างจากไฟล์ที่เป็นกระแสไบต์ที่ไม่มีโครงสร้าง

ชุดข้อมูลที่แบ่งส่วน

ชุดข้อมูลแบบแบ่งส่วน ( PDS ) [ 7 ] คือชุดข้อมูลที่มีสมาชิก หลายตัว โดยแต่ละตัวจะเก็บชุดข้อมูลย่อยแยกต่างหาก คล้ายกับไดเร็กทอรีในระบบไฟล์ ประเภทอื่น ชุดข้อมูลประเภทนี้มักใช้สำหรับเก็บโมดูลโหลด (โปรแกรมปฏิบัติการที่ผูกกับรูปแบบเก่า) ไลบรารีโปรแกรมต้นฉบับ (โดยเฉพาะคำจำกัดความมาโครแอสเซมเบลอร์) คำจำกัดความหน้าจอ ISPFและภาษาควบคุมงาน PDS อาจเปรียบเทียบได้กับ ไฟล์ Zipหรือ ที่เก็บข้อมูลแบบมี โครงสร้าง COM

ชุดข้อมูลแบบแบ่งพาร์ติชันสามารถจัดสรรได้เฉพาะบนวอลุ่มเดียวเท่านั้น และมีขนาดสูงสุด 65,535 แทร็ก

นอกจากสมาชิกแล้ว PDS ยังประกอบด้วยไดเร็กทอรีด้วย สมาชิกแต่ละรายสามารถเข้าถึงได้โดยอ้อมผ่านโครงสร้างไดเร็กทอรี เมื่อพบสมาชิกแล้ว ข้อมูลที่จัดเก็บในสมาชิกนั้นจะถูกจัดการในลักษณะเดียวกับชุดข้อมูล PS (แบบลำดับ)

เมื่อใดก็ตามที่สมาชิกถูกลบ พื้นที่ที่สมาชิกนั้นเคยใช้จะไม่สามารถใช้เก็บข้อมูลอื่นได้ ในทำนองเดียวกัน หากมีการเขียนทับสมาชิก ข้อมูลจะถูกเก็บไว้ในตำแหน่งใหม่ที่ด้านหลังของ PDS และทิ้งพื้นที่ "ตาย" ที่สูญเปล่าไว้ตรงกลาง วิธีเดียวที่จะกู้คืนพื้นที่ "ตาย" คือการบีบอัดไฟล์[ 8 ]การบีบอัด ซึ่งทำโดยใช้ยูทิลิตี้IEBCOPY [ 9 ] จะย้ายสมาชิกทั้งหมดไปไว้ด้านหน้าของพื้นที่ข้อมูลและทิ้งพื้นที่ว่างที่ใช้งานได้ไว้ที่ด้านหลัง (โปรดทราบว่าในภาษาปัจจุบัน การดำเนินการประเภทนี้อาจเรียกว่าการจัดเรียง ข้อมูลใหม่ หรือการเก็บขยะการบีบอัดข้อมูลในปัจจุบันหมายถึงแนวคิดที่แตกต่างและซับซ้อนกว่า) ไฟล์ PDS สามารถจัดเก็บได้เฉพาะบนDASDเท่านั้น ไม่ใช่บนเทปแม่เหล็กเพื่อใช้โครงสร้างไดเร็กทอรีในการเข้าถึงสมาชิกแต่ละตัว ชุดข้อมูลที่แบ่งพาร์ติชันมักใช้สำหรับการจัดเก็บไฟล์ภาษาควบคุมงาน หลายไฟล์ คำสั่งควบคุม ยูทิลิตี้และโมดูลที่เรียกใช้งานได้

รูปแบบที่ได้รับการปรับปรุงจากโครงสร้างนี้คือPartitioned Data Set Extended (PDSE หรือ PDS/E บางครั้งเรียกว่าไลบรารี ) ซึ่งถูกนำมาใช้ในDFSMSdfpสำหรับ ระบบ MVS/XAและMVS/ESAไลบรารี PDS/E สามารถจัดเก็บอ็อบเจ็กต์โปรแกรมหรือสมาชิกประเภทอื่นได้ แต่ไม่สามารถจัดเก็บทั้งสองอย่างพร้อมกันได้ BPAM ไม่สามารถประมวลผล PDS/E ที่มีอ็อบเจ็กต์โปรแกรมได้

โครงสร้าง PDS/E คล้ายกับ PDS และใช้ในการจัดเก็บข้อมูลประเภทเดียวกัน อย่างไรก็ตาม ไฟล์ PDS/E มีโครงสร้างไดเร็กทอรีที่ดีกว่า ซึ่งไม่จำเป็นต้องจัดสรรบล็อกไดเร็กทอรีล่วงหน้าเมื่อกำหนด PDS/E (และด้วยเหตุนี้จึงไม่เกิดปัญหาบล็อกไดเร็กทอรีหมดหากไม่ได้ระบุไว้เพียงพอ) นอกจากนี้ PDS/E ยังจัดเก็บสมาชิกโดยอัตโนมัติในลักษณะที่ไม่จำเป็นต้องใช้การบีบอัดเพื่อเรียกคืนพื้นที่ "ตาย" [ 8 ]ไฟล์ PDS/E สามารถอยู่บน DASD เท่านั้น เพื่อใช้โครงสร้างไดเร็กทอรีในการเข้าถึงสมาชิกแต่ละรายการ

กลุ่มข้อมูลเจเนอเรชั่น

กลุ่มข้อมูลรุ่น[ 10 ] ( GDG ) [ 11 ]คือกลุ่มของชุดข้อมูลที่ไม่ใช่ VSAM [ 12 ]ซึ่งเป็นข้อมูลรุ่นต่อๆ ไปที่มีความสัมพันธ์ทางประวัติศาสตร์[ 13 ]ที่จัดเก็บไว้บนเมนเฟรม IBM (ที่ใช้OS/360 และรุ่นต่อๆ มาหรือDOS/360 และรุ่นต่อๆ มา ) [ 14 ]

โดยทั่วไป GDG จะถูกจัดทำเป็นรายการ[ 13 ]

สมาชิกแต่ละรายของชุด GDG เรียกว่า " ชุดข้อมูลรุ่น " [ 13 ] [ 15 ]ซึ่งอาจระบุได้ด้วยตัวเลขสัมบูรณ์ACCTG.OURGDG(1234)หรือตัวเลขสัมพัทธ์: (-1)สำหรับรุ่นก่อนหน้า(0)สำหรับรุ่นปัจจุบัน และสำหรับ(+1)รุ่นถัดไป[ 16 ]

GDG ระบุจำนวนรุ่นของชุดข้อมูลที่จะเก็บรักษาไว้ และอายุที่จะลบรุ่นแต่ละรุ่น เมื่อใดก็ตามที่มีการสร้างรุ่นใหม่ ระบบจะตรวจสอบว่ามีรุ่นที่ล้าสมัยอย่างน้อยหนึ่งรุ่นที่ควรลบหรือไม่

วัตถุประสงค์ของ GDG คือการทำให้กระบวนการจัดเก็บข้อมูลเป็นไปโดยอัตโนมัติ โดยใช้ภาษาคำสั่งJCLชื่อชุดข้อมูลที่ให้มาเป็นชื่อทั่วไป เมื่อ DSN ปรากฏขึ้น ชุดข้อมูล GDG จะปรากฏขึ้นพร้อมกับหมายเลขประวัติ โดยที่

(0) คือเวอร์ชันล่าสุด

(-1), (-2), ... คือรุ่นก่อนหน้า

(+1) คนรุ่นใหม่ (ดู DD)

อีกหนึ่งประโยชน์ของ GDG คือการสามารถอ้างอิงถึงทุกรุ่นพร้อมกันภายในสคริปต์ JCL โดยไม่ต้องทราบจำนวนรุ่นที่ใช้งานได้ในปัจจุบัน ในการทำเช่นนี้ คุณต้องละเว้นวงเล็บและหมายเลขรุ่นใน JCL เมื่อระบุชุดข้อมูล

GDG JCL และคุณสมบัติ

กลุ่มข้อมูลรุ่นถูกกำหนดโดยใช้คำสั่ง BLDG [ 17 ]ของ ยูทิลิตี้ IEHPROGMหรือDEFINE GENERATIONGROUPคำสั่ง[ 18 ]ของยูทิลิตี้IDCAMS รุ่นใหม่กว่า [ 19 ]ซึ่งอนุญาตให้ตั้งค่าพารามิเตอร์ต่างๆ ได้

  • LIMIT(10)จะจำกัดจำนวนรุ่นไว้ที่ 10 รุ่น
  • SCRATCH FOR (91)จะคงสมาชิกแต่ละคนไว้เป็นเวลาอย่างน้อย 91 วัน จนถึงจำนวนรุ่นที่จำกัด

IDCAMS ยังสามารถลบ (และอาจยกเลิกการจัดทำแคตตาล็อก) GDG ได้อีกด้วย[ 20 ]

ตัวอย่าง

การสร้างมาตรฐาน GDG สำหรับขอบเขตความปลอดภัยห้าประการ โดยแต่ละประการต้องมีอายุอย่างน้อย 35 วัน:

// STEP1 EXEC PGM = IDCAMS // SYSPRINT DD SYSOUT = * // SYSIN DD * DEFINE GDG (NAME('DB2.FULLCOPY.DSNDB04.TSTEST') LIMIT(5) SCRATCH FOR(35)) /*

ลบ GDG มาตรฐาน:

// ขั้นตอนที่ 3 EXEC PGM = IDCAMS // SYSPRINT DD SYSOUT = * // SYSIN DD * DELETE DB2.FULLCOPY.DSNDB04.TSTEST GDG FORCE /*
ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=Data_set_(IBM_mainframe)&oldid=1339629261#Data_set_organization "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ ชุดข้อมูล (เมนเฟรม IBM)

ในบริบทของ คอมพิวเตอร์เมนเฟรมของ IBM ใน ตระกูล IBM System/360 และรุ่นต่อๆ มา ชุดข้อมูล (IBM นิยมใช้คำนี้) หรือ dataset คือ ไฟล์คอมพิวเตอร์ ที่มี การจัดระเบียบเป็นระเบียน...

การจัดระเบียบชุดข้อมูล

สำหรับ OS/360 พารามิเตอร์ของ DCB DSORG จะระบุวิธีการจัดระเบียบชุดข้อมูล อาจเป็น [ 5 ]

รูปแบบการบันทึก (RECFM)

ไม่ว่าจะมีการจัดระเบียบแบบใด โครงสร้างทางกายภาพของแต่ละระเบียนโดยพื้นฐานแล้วจะเหมือนกัน และมีความสม่ำเสมอทั่วทั้งชุดข้อมูล สิ่งนี้ระบุไว้ใน RECFM พารามิเตอร์ DCB RECFM=F หมายความว่าระเบียนมีความยาวคงที่ ซึ่งระบุผ่าน LRECL พารามิเตอร์ RECFM=V...

กลุ่มข้อมูลเจเนอเรชั่น

กลุ่ม ข้อมูลรุ่น [ 10 ] ( GDG ) [ 11 ] คือกลุ่มของชุดข้อมูลที่ไม่ใช่ VSAM [ 12 ] ซึ่งเป็นข้อมูลรุ่นต่อๆ ไปที่มีความสัมพันธ์ทางประวัติศาสตร์ [ 13 ] ที่จัดเก็บไว้บนเมนเฟรม IBM (ที่ใช้ OS/360 และรุ่นต่อๆ มา หรือ DOS/360 และรุ่นต่อๆ มา ) [ 14 ]