মেইনফ্রেম সিস্টেমে, ইউটিলিটি প্রোগ্রামগুলো সাধারণত গুরুত্বপূর্ণ কাজ যেমন ডেটা হ্যান্ডলিং, ফাইল ম্যানিপুলেশন, জব কন্ট্রোল এবং আরো অনেক কিছু সম্পাদন করতে ব্যবহৃত হয়। এই ইউটিলিটি প্রোগ্রামগুলো সাধারণত JCL (Job Control Language) এর মাধ্যমে নির্দিষ্ট অপারেশন করার জন্য ব্যবহার করা হয়। মেইনফ্রেম পরিবেশে ব্যবহৃত সবচেয়ে সাধারণ ইউটিলিটি প্রোগ্রামগুলোর মধ্যে IEBGENER, IEFBR14, এবং IDCAMS অন্যতম। আসুন আমরা এই ইউটিলিটি প্রোগ্রামগুলোর কার্যাবলী এবং ব্যবহারের পদ্ধতি জানি।
১. IEBGENER
IEBGENER একটি ইউটিলিটি প্রোগ্রাম যা একটি ডেটাসেট থেকে অন্য ডেটাসেটে ডেটা কপি করতে ব্যবহৃত হয়। এটি সাধারণত সিকোয়েনশিয়াল ডেটাসেট কপি করার জন্য ব্যবহৃত হয়, তবে এটি অন্যান্য ফাইল অপারেশন যেমন কনক্যাটিনেশনও করতে পারে। এই ইউটিলিটি ডেটা ট্রান্সফার, ডেটাসেটের ব্যাকআপ, অথবা ডেটাসেটের কনটেন্ট প্রিন্ট করার জন্য ব্যবহার করা যেতে পারে।
মূল ব্যবহারের ক্ষেত্র:
- ডেটাসেট কপি করা: একটি ডেটাসেট থেকে অন্য ডেটাসেটে ডেটা কপি করা (যেমন একটি সিকোয়েনশিয়াল ডেটাসেট থেকে অন্য একটি সিকোয়েনশিয়াল ডেটাসেটে)।
- ডেটাসেট কনক্যাটিনেশন: একাধিক ডেটাসেট একসাথে কনক্যাটিনেট করা।
- ডেটা এক্সট্রাকশন: ডেটাসেট থেকে নির্দিষ্ট রেকর্ড বের করা।
সিনট্যাক্স:
//STEP1 EXEC PGM=IEBGENER
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD DSN=INPUT.DATASET,DISP=SHR
//SYSUT2 DD DSN=OUTPUT.DATASET,DISP=NEW
//SYSIN DD DUMMY- SYSPRINT: কপি অপারেশনের স্ট্যাটাস প্রিন্ট করার জন্য ব্যবহৃত হয়।
- SYSUT1: ইনপুট ডেটাসেট।
- SYSUT2: আউটপুট ডেটাসেট।
- SYSIN: কন্ট্রোল স্টেটমেন্ট (DUMMY মানে কোন কন্ট্রোল স্টেটমেন্ট নেই)।
উদাহরণ:
//STEP1 EXEC PGM=IEBGENER
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD DSN=MY.INPUT.DATA, DISP=SHR
//SYSUT2 DD DSN=MY.OUTPUT.DATA, DISP=NEW
//SYSIN DD DUMMYএই উদাহরণে MY.INPUT.DATA থেকে MY.OUTPUT.DATA এ ডেটা কপি করা হচ্ছে।
২. IEFBR14
IEFBR14 একটি অত্যন্ত সাধারণ ইউটিলিটি প্রোগ্রাম যা কোনো কাজ না করে শুধু সিস্টেমের কাছে নিয়ন্ত্রণ ফিরে দেয়। এটি সাধারণত JCL এ প্লেসহোল্ডার হিসেবে ব্যবহৃত হয়, যেখানে কোন বিশেষ কাজ করার প্রয়োজন নেই, কিন্তু কিছু রিসোর্স বা ডেটাসেট আলোকিত বা মুছে ফেলতে হবে।
মূল ব্যবহারের ক্ষেত্র:
- ডেটাসেট বরাদ্দ: যখন আপনি শুধুমাত্র একটি ডেটাসেট বরাদ্দ বা মুছে ফেলতে চান, কিন্তু কোন ডেটা প্রসেসিং করতে চান না।
- সিস্টেম রিসোর্স ডিলোকেশন: কাজ শেষ হওয়ার পর রিসোর্স বা ডেটাসেটগুলো মুক্ত করতে।
সিনট্যাক্স:
//STEP1 EXEC PGM=IEFBR14
//DD1 DD DSN=MY.DATASET,DISP=DELETEIEFBR14 তখন ব্যবহৃত হয় যখন আপনাকে ডেটাসেট মুছে ফেলতে, বরাদ্দ করতে বা ডিসপোজিশন পরিবর্তন করতে হয়, কিন্তু কোন ডেটা প্রসেসিং দরকার নেই।
উদাহরণ:
//STEP1 EXEC PGM=IEFBR14
//DD1 DD DSN=MY.NEW.DATA, DISP=(NEW,CATLG,DELETE), UNIT=SYSDA, SPACE=(TRK,5)এই উদাহরণে একটি নতুন ডেটাসেট MY.NEW.DATA বরাদ্দ করা হচ্ছে, যেখানে নির্দিষ্ট স্পেস এবং ইউনিট বরাদ্দ করা হয়েছে, এবং কাজ শেষ হলে এটি ক্যাটালগ করা হবে।
৩. IDCAMS
IDCAMS (Integrated Data Cluster Access Method Services) একটি ইউটিলিটি প্রোগ্রাম যা প্রধানত VSAM (Virtual Storage Access Method) ডেটাসেটগুলি পরিচালনা এবং কন্ট্রোল করতে ব্যবহৃত হয়। এটি VSAM ফাইলের তৈরি, মুছে ফেলা, এবং রক্ষণাবেক্ষণের জন্য একটি গুরুত্বপূর্ণ টুল।
মূল ব্যবহারের ক্ষেত্র:
- VSAM ডেটাসেট তৈরি: IDCAMS ব্যবহার করে নতুন VSAM ডেটাসেট তৈরি করা।
- ডেটাসেট সংজ্ঞায়িত করা: VSAM ডেটাসেটের স্ট্রাকচার সংজ্ঞায়িত করা।
- অ্যাক্সেস কন্ট্রোল: VSAM ডেটাসেটের অ্যাট্রিবিউট পরিবর্তন বা রক্ষণাবেক্ষণ।
- ডেটা ম্যানেজমেন্ট: ইনডেক্স, ক্লাস্টার এবং অন্যান্য ডেটা উপাদান পরিচালনা করা।
সাধারণ কমান্ড:
- DEFINE: নতুন VSAM ডেটাসেট তৈরি করার জন্য ব্যবহৃত হয়।
- DELETE: VSAM ডেটাসেট মুছে ফেলতে ব্যবহৃত হয়।
- REPRO: VSAM ডেটাসেটে ডেটা কপি করার জন্য ব্যবহৃত হয়।
- ALTER: বিদ্যমান VSAM ডেটাসেটের অ্যাট্রিবিউট পরিবর্তন করার জন্য ব্যবহৃত হয়।
সিনট্যাক্স:
//STEP1 EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
DEFINE CLUSTER (NAME(MY.VSAM.DATA) -
INDEXED -
RECORDSIZE(80,160) -
RECSIZE(80) -
SHAREOPTIONS(3 3) )
/*এই উদাহরণে একটি নতুন VSAM ডেটাসেট MY.VSAM.DATA সংজ্ঞায়িত করা হচ্ছে, যেখানে রেকর্ড সাইজ, ইনডেক্স অপশন এবং শেয়ার অপশন নির্দিষ্ট করা হয়েছে।
সারসংক্ষেপ
- IEBGENER: একটি ইউটিলিটি যা ডেটাসেটের মধ্যে ডেটা কপি করতে, একাধিক ডেটাসেট কনক্যাটিনেট করতে এবং ডেটা এক্সট্রাক্ট করতে ব্যবহৃত হয়।
- IEFBR14: একটি প্লেসহোল্ডার ইউটিলিটি যা কোনো কাজ না করে শুধু সিস্টেমের কাছে নিয়ন্ত্রণ ফেরত দেয়। এটি ডেটাসেট বরাদ্দ বা মুছে ফেলার জন্য ব্যবহৃত হয়।
- IDCAMS: একটি শক্তিশালী ইউটিলিটি যা VSAM ডেটাসেট তৈরি, মুছে ফেলা এবং পরিচালনা করতে ব্যবহৃত হয়। এটি ডেটাসেট সংজ্ঞায়িত করা, ডেটা কপি করা এবং অ্যাট্রিবিউট পরিবর্তন করতে ব্যবহৃত হয়।
এই ইউটিলিটি প্রোগ্রামগুলো JCL এর গুরুত্বপূর্ণ অংশ এবং মেইনফ্রেম কম্পিউটার সিস্টেমে ডেটা হ্যান্ডলিং, ডেটাসেট ম্যানেজমেন্ট এবং সিস্টেম রিসোর্স অ্যালোকেশনের জন্য অপরিহার্য।
Read more