پایگاه داده آی‌ام‌اس

**آی‌ام‌اس** (IMS) یک سیستم مدیریت و نگهداری اطلاعات است که توسط شرکت IBM ارائه شده‌است. سیستمی که می‌توان آن را مرکب از پایگاه داده با ساختار سلسله مراتبی، سیستم مدیریت اطلاعات با قابلیتهای بسیار گسترده‌ای در پردازش تراکنشها (درخواست اطلاعات یا منابع) دانست. شرکت IBM برای اولین بار در سال ۱۹۶۶ طراحی IMS را با همراهی و همکاری شرکتهای مشهوری از جمله Rockwell و Caterpillar به منظور استفاده در برنامه‌های سازمان فضایی ناسا (Apollo Program) آغازنمود. در ابتدا بزرگ‌ترین دغدغه این شرکتها مدیریت اطلاعات، کنترل موجودی (BOM) قطعات الکترونیکی و مکانیکی بسیار زیادی بوده که ادوات و لوازم ساخت موشک Saturn V و سفینه فضایی آپولو بوده‌اند. نخستین باری که IMS به‌طور رسمی شروع به کار نمود و پیغام IMS Ready در پایانه خروجی ماشین مربوطه مشاهده گردید در ۱۴ اوت ۱۹۶۸ و در ترمینال مدل IBM 2740 مستقر در شهر Downey ایالت کالیفرنیا بوده‌است. از آن موقع تا کنون و پس از ۶۰ سال IMS همچنان پرقدرت پابرجا بوده و متولی پیشرفتهای بسیاری برای IBM از جمله ارائه تکنولوژیهایی مثل System z9 و z10 از تکنولوژی‌های قدیمی تری مثل System/360 بوده‌است. پشتیبانی از زبان برنامه‌نویسی جاوا، XML و سرویسهای وب از جمله نکات قوت دیگری از IMS است که امروزه مورد توجه کارشناسان مربوطه قرار می‌گیرد.
آقای Vern Watts را می‌توان برای سالیان متمادی یکی از اصلی‌ترین معماران و توسعه دهدنگان IMS به‌شمار آورد. این شخص از سال ۱۹۵۶ به شرکت IBM پیوست و تا زمان ازدنیا رفتنش در آوریل ۲۰۰۹، در لابراتوار توسعه این شرکت در Silicon Valley مشغول فعالیت بوده‌است. او از سال ۱۹۶۰ به‌طور مستمر در IBM فعالیت می‌کرده‌است. اکنون IMS بزگترین و درآمد زاترین محصول نرم‌افزاری برای IBM گزارش شده و این روند رو به رشد همچنان ادامه‌دار است.
در پایگاه داده سلسله مراتبی چیدمان اطلاعات برای داده‌های مورد نظر براساس دسته‌بندی خاص با ایجاد رابطه پدر- فرزندی (Parent – Child) برای موجودیتهای مختلف صورت می‌پذیرد. این چیدمان برای ما تداعی کننده ساختار درختی یا درختواره در مبحث ساختمان داده‌است. در این ساختار هر گره یا نود اطلاعاتی به‌طور قطع دارای یک ارتباط با گره بالاتر خود است. به گره بالاتر پدر و به گره‌های پایئن تر فرزند گفته می‌شود این نودهای اطلاعاتی در IMS تحت عنوان سگمنت شناخته می‌شوند. به سگمنتهایی از انواع مختلف که دارای پدر واحد باشند Siblings و به سگمنتهایی از یک نوع که دارای پدر واحد هستند Twins گفته می‌شود. در این ساختار بالاترین سطح سگمنت سگمنت ریشه است که ارتباط آن تنها با سگمنتهای پایئن دست بوده و از منظری دیگرراس هرم ساختار سلسله مراتبی است. سگمنتها با توجه به طبقه قرارگیری در این ساختار دارای مشخصه ای به نام شماره سطح (Level number) هستند. در واقع مرتبه قرارگیری سگمنتها نسبت به سگمنت ریشه مبیّن شماره سطح آنهاست.
سگمنت ریشه در سطح ۱ قرار دارد و همچنان که به سمت پایئن ساختار درختی پیش می‌رویم به ترتیب سگمنت سطح ۲، سگمنت سطح ۳ و . . . آخرین سطح سگمنت قابل آدرس دهی می‌باشند. در هر درختواره از ساختار سلسله مراتبی IMSای ۲۵۵ نوع سگمنت مختلف قابل تعریف است و حداکثر تعداد سطوح سگمنتی که در ساختار سلسله مراتبی IMSای پشتیبانی می‌شود ۱۵ سطح است. آنچه روشن است اینکه در هر درختواره تنها امکان تعیین یک عدد سگمنت سطح ۱ با عنوان سگمنت ریشه وجود دارد ولی در سطوح بعد از نظر منطقی محدودیتی در تعریف نمونه سگمنتها از گونه‌های مختلف وجود نخواهد داشت مگر اینکه از نظر فیزیکی محدودیتهایی برای دسترسی به آنها وجود داشته باشد که این مسئله هم به طبعٌ وابستگی مستقیم به سخت‌افزار، نوع یا مدل رسانه ذخیره‌سازی دارد.

## اجزای IMS
IMS به عنوان یک سیستم مدیریت اطلاعاتی توابعی را برای مدیریت تراکنش و مدیریت پایگاه داده سلسله مراتبی در اختیار کاربران قرار می‌دهد. اگر بخواهیم دید کلان تری به IMS داشته باشیم و ازنقطه نظر سیستمی آن را تقسیم‌بندی کنیم دو بخش اصلی در IMS وجود دارد:
# سیستم مدیریت ارتباط و تبادل اطلاعات (IMS DC)
# سیستم مدیریت پایگاه داده (IMS DB)
می‌توان از IMS سرویس‌هایی را جهت بالا بردن قابلیتهای پردازشی بیشتر استفاده نمود و از مزایای آن بهره‌مند شد که IMS TM نمونه ای از آن سرویس‌ها می‌باشد.
IMS TM یک پردازشگر تراکنش مبتنی بر پیام است که برای استفاده در محیطهایی مثل Z/OS یا OS/390 طراحی شده تا کاربران از امکانات و مزایای بسیار آن در ارتباط با سیستم عامل بهره‌مند گردند.
همزمان با پیشرفتهایی که IMS داشته‌است، رابطهای کاربری جدیدتری نیز متناسب با تجارتهای‌های مختلف و Applicationهای گوناگون پا به عرصه گذاشت و اکنون شاهد آن هستیم که امکان دسترسی به منابع و اجزای IMS از طریق رابطهای کاربری متعددی فراهم آمده‌است.

## اشکال پیاده‌سازی IMS
IMS می‌تواند با یکی از تکنولوژیهای زیر پیاده‌سازی شود:
# IMS DEDBs یا همان Fast Path databases
# DL/1 database یا همان Full Function databases
# IMS MSDB یا Main Storage databases
هر یک از ۳ مدل فوق مشخصه‌ها و قابلیتهای خاص خود را دارند و بسته به نیاز می‌توان از هر کدام از آنها یا ترکیبی از آنها استفاده نمود به عنوان مثال برای داشتن دیتابیس‌هایی با قابلیت دسترسی آسان و حجم ذخیره‌سازی بالا استفاده از قابلیت Full Function یا FF مد نظر قرار می‌گیرد. این شکل از IMS مطلوب و مورد استفاده در سیستمهای رایج بانکی می‌باشد. در این گونهٔ پیاده‌سازی ازIMS دسترسی به رکوردها از طریق کلیدهای یکتا یا غیر یکتا صورت می‌پذیرد و تا ۱۵ سطح مختلف از سگمنتها را می‌توان در دسترس داشت.

همانند سایر زیر سیستمهایی که در یک سیستم عامل اجرایی می‌شوند هسته IMS نیز در فضاهایی از حافظه ماشین که سیستم عامل آن را در اختیار دارد بارگذاری شده و اجرایی می‌گردد. به این فضاها اصطلاحاً [//en.wikipedia.org/wiki/Address_space| Address space] (فضای آدرس) گفته می‌شود. این فضاها با توجه به نوع کار و محتویاتشان به طبقات و نواحی گوناگونی تقسیم‌بندی می‌شوند که IMS Control region اصلی‌ترین و بنیادی‌ترین فضای حافظه در سیستم عامل مجری IMS است.

## منابع

## پیوند به بیرون
*IMS Family IBM Z software
*Information Management Software for z/OS Solutions Information Center
*IBM Redbook: IMS Primer
* 
*IBM InfoSphere Guardium S-TAP for IMS on z/OS for detection of policy violations and compliance auditing
*An Introduction to IMS: Second Edition 

رده:ذخیره‌سازی ساخت‌یافته
رده:سامانه‌های مدیریت پایگاه داده مالکیتی
رده:مأموریت‌های آپولو
رده:نواس‌کیوال
رده:موتورهای پایگاه داده