مدل های داده برای مدیریت موثر داده بسیار حیاتی می باشند . آنها یک واژگان مشترک حول و حوش داده را ایجاد می نمایند . ضبط و مستندسازی دانش موجود در ارتباط با داده و سیستم های سازمان ، ایفای نقش به عنوان یک ابزار ارتباطی اولیه در زمان انجام پروژه ها با هدف ایجاد یک زبان مشترک توصیفی از داده و روابط بین آنها و همچنین ارایه نقطه آغازین برای سفارشی سازی ، یکپارچه سازی و یا حتی جایگزین کردن یک برنامه از جمله اهداف مهم مدل سازی داده می باشد . مدل سازی داده ، یک روش و ابزار برای توصیف نیازهای اطلاعاتی دنیای واقعی را بگونه ای ارایه می نماید که ذینفعان یک سازمان قادر به درک آن باشند و بتوانند به سهولت با آن ارتباط برقرار نمایند . همچنین مدل سازی داده ها ، متخصصین پایگاه داده را قادر می سازد تا ضمن پذیرش نیازهای اطلاعاتی ، سیستم پایگاه داده را به منظور پشتیبانی از عملیات کسب و کار سازمان طراحی و پیاده سازی نمایند . یک مدل داده را می توان به منزله پلی در نظر گرفت که اطلاعات دنیای واقعی را به سیستم های پایگاه داده مرتبط می نماید .
ساختار ، صلابت و شیوه ایجاد پل فوق دارای نقشی برجسته در حیات فعلی و آتی یک سیستم اطلاعاتی می باشد، چراکه در قلب هر سیستم اطلاعاتی از یک و یا چندین پایگاه داده استفاده می گردد . تداوم حضور موفقیت آمیز یک سیستم اطلاعاتی در ایجاد ارزش برای سازمان ریشه در استحکام ، امنیت ، کیفیت و انعطاف پذیری مدل های داده آن دارد که در نهایت در قالب یک مدل داده فیزیکی و به کمک یک سیستم رابطه ای و یا غیر رابطه ای بانک اطلاعاتی پیاده سازی می گردد .
شکل 1 : مدل سازی داده به عنوان یک پل ارتباطی بین دنیای واقعی و سیستم های پایگاه داده
در
بخش اول ، با مفهوم مدل سازی داده و ضرورت های استفاده از آن و همچنین دستاوردهای ملموس و ناملموس آن برای یک سازمان اشاره گردید . در این بخش با اجزاء مدل سازی داده و همچنین مدل های داده مفهومی ، منطقی و فیزیکی آشنا خواهیم شد .
اجزاء مدل سازی داده
نوع های مختلف مدل های داده ، داده را از طریق قراردادهای متفاوتی نمایش می دهند . اکثر مدل های داده شامل بلوک های اساسی اولیه موجودیت ها (
entities) ، روابط (
relationships ) ، ویژگی ها (
attributes) و دامنه ها (
domains ) می باشند . در ادامه بطور مختصر به هر یک از موارد فوق اشاره می گردد .
موجودیت : خارج از دنیای مدل سازی داده ، موجودیت به چیزی اطلاق می گردد که از چیزهای دیگر مجزا شده است . در دنیای مدل سازی داده ، یک موجودیت چیزی است که یک سازمان در خصوص آن اطلاعاتی را جمع آوری می کند . به موجودیت در برخی موارد به عنوان اسامی یک سازمان رجوع می شود . یک موجودیت می تواند پاسخی باشد به یک پرسش اساسی : چه کسی ، چی ، کجا ، چه زمانی ، چرا ، چگونه و یا ترکیبی از پرسش های فوق . در شکل 2 ، گروه های متداول موجودیت ها نشان داده شده است .
شکل 2 : گروه های متداول موجودیت ها
ارتباط : بیانگر یک نوع رابطه بین موجودیت ها است . یک رابطه، تعاملات سطح بالا بین موجودیت های مفهومی، تعاملات دقیق بین موجودیت های منطقی و محدودیت ها بین موجودیت های فیزیکی را نشان می دهد.روابط به صورت خطوط در دیاگرام مدل سازی داده نشان داده می شوند . در شکل 3 ، یک نمونه دیاگرام رابطه بین موجودیت ها نشان داده شده است .
شکل 3 : ارتباط بین موجودیت ها و ترجمه قواعد کسب و کار
در مثال فوق ، رابطه بین دانشجو و درس ، بیانگر این قاعده است که یک دانشجو ممکن است در
یک و یا چندین درس ثبت نام کند . رابطه بین مربی و درس بیانگر این واقعیت است که یک مربی ممکن یک و یا چندین درس را تدریس کند . نمادهای نشان داده شده بر روی خطوط که به آنها کاردینالیتی گفته می شود ، قواعد تعریف شده بین دو موجودیت را نشان می دهد . در واقع ، از کاردینالیتی برای نمایش شیوه ارتباط بین دو موجودیت استفاده می گردد تا مشخص گردد که چه تعداد از یک موجودیت ( صفر ، یک یا چندین مورد که منظور بیش از یک مورد است ) در ارتباط با چه تعداد از موجودیت دیگر می باشد . یک رابطه از طریق کلیدهای خارجی در یک بانک اطلاعاتی رابطه ای و روش های جایگزین در بانک های اطلاعاتی
NoSQL نظیر لینک ها نمایش داده می شود .
ویژگی : خصلتی است که یک موجودیت را شناسایی ، تشریح و یا اندازه گیری می نماید . ویژگی ها ممکن است دارای حوزه هایی باشند . برای نمایش فیزیکی یک ویژگی در موجودیت از ستون ، فیلد ، تگ و یا گره در یک جدول ، سند ، گراف ،
view و یا فایل استفاده می گردد . برای نمایش گرافیکی ویژگی ها در مدل های داده ، از یک لیست حاوی ویژگی ها درون موجودیت مستطیل استفاده می شود . در شکل 4 ویژگی های موجودیت دانشجو نشان داده شده است که شامل شماره دانشجویی ، نام دانشجو ، نام خانواگی دانشجو و تاریخ تولد دانشجو می باشد .
شکل 4 : موجودیت دانشجو به همراه ویژگی های آن
دامنه : مجموعه ای از مقادیر ممکن که بتوان به یک ویژگی نسبت داد را مشحص می کند . یک دامنه ممکن است به روش های مختلفی بیان شود و در عمل استانداردسازی خصایص ویژگی ها را ارایه می نماید . به عنوان نمونه حوزه تاریخ (
Date ) ، ممکن است شامل تمامی مقادیر ممکن برای تاریخ باشد که بتوان آنها را به هر مدل داده نسبت داد . تمامی مقادیر درون دامنه ، مقادیر مجاز می باشند و مقادیر خارج از دامنه به عنوان مقادیر نامعتبر درنظر گرفته می شوند . برای مشخص کردن دامنه می توان از روش های مختلفی نظیر نوع داده ، قالب داده ، لیست کردن مجموعه مقادیر مجاز ، محدوده مجاز و قابل قبول و یا تعریف قواعد مورد نظر استفاده کرد .
سطوح جزئیات مدل داده
جزئیات مدل سازی داده در سطوح مختلف تشریح می گردد . مدل داده مفهومی (
CDM ) ، مدل داده منطقی (
LDM) و مدل داده فیزیکی (
PDM) سه نوع متداول برای تشریح سطح جزئیات مدل سازی داده می باشند . در بالاترین سطح ، مدل داده مفهومی قرار دارد که یک دید سطح بالا ( از ارتفاع بسیار بالا ) از راه حل کسب و کار را نشان می دهد . مدل داده مفهومی ، زمینه و دامنه مدل داده منطقی را فراهم می نماید . در واقع در مدل داده منطقی ، راه حل کسب و کار با جزئیات بیش تری تشریح می گردد . مدل داده منطقی ، نقطه شروع اثرگذاری فناوری بر روی مدل داده را فراهم می کند که در نهایت به شکل گیری مدل داده فیزیکی ختم می گردد . مدل داده فیزیکی ، بیانگر ساختارهای واقعی بانک اطلاعاتی استفاده شده می باشد .
در شکل 5 ، سطوح سه گانه مفهومی ، منطقی و فیزیکی نشان داده شده است .
شکل 5 : سلسله مراتب مدل های داده مفهومی ، منطقی و فیزیکی
- مدل داده مفهومی : بالاترین سطح رابطه بین موجودیت های حیاتی و مهم کسب و کار شناسایی می گردد و شامل مواردی نظیر موجودیت های مهم به همراه روابط بین آنها می باشد . در مدل داده مفهومی ویژگی ها و کلید اولیه مشخص نمی گردند .
- مدل داده منطقی : در این مدل سعی می گردد حتی المقدور داده با جزئیات بیش تر و بدون توجه به شیوه پیاده سازی فیزیکی در بانک اطلاعاتی تشریح گردد . مشخص کردن موجودیت ها و روابط بین آنها ، لیست تمامی ویژگی ها برای هر یک از موجودیت های مشخص شده ، کلید اولیه برای هریک از موجودیت های مشخص شده و همچنین مشخص کردن کلیدهای خارجی از جمله ویژگی های مهم مدل داده منطقی می باشد .
- مدل داده فیزیکی : در این مدل نحوه ایجاد مدل در بانک اطلاعاتی رابطه ای و یا غیررابطه ای تشریح می گردد . ساختار تمامی جداول شامل اسامی ستون ها ، نوع داده هر ستون ، محدودیت های ستون ها ، کلید اولیه ، کلید خارجی و ارتباط بین جداول مشخص می گردد . مدل داده فیزیکی برای سیستم های مدیریت بانک اطلاعاتی رابطه ای ( RDBMS ) متفاوت خواهد بود . به عنوان نمونه نوع داده برای یک ستون ممکن است در MySQL و SQL Server متفاوت باشد .
در شکل 6 تفاوت بین سه مدل فوق نشان داده شده است .
شکل 6 : تفاوت مدل های داده مفهومی ، منطقی و فیزیکی
خلاصه
مدل سازی داده ، فرآیند یادگیری در رابطه با داده می باشد و مدل داده نتایج نهایی فرآیند مدل سازی داده است . یک مدل داده شامل مجموعه ای از نمادها و متن به منظور تشریح دقیق و صریح چشم انداز اطلاعات کسب و کار است . شاید مهم ترین دلیل برای مدل سازی داده ، تایید و مستند سازی درک ما از دیدگاه های مختلف است . مدل داده یک ابزار ارتباطی است . برای ایجاد حتی یک برنامه ساده ، افراد متعددی با نقش های مختلف درگیر می شوند : متخصصین کسب و کار ، تحلیل گران کسب و کار ، مدل سازان داده ، معماران داده ، پیاده کنندگان بانک اطلاعاتی ، مدیران بانک اطلاعاتی ، پیاده کنندگان ، مدیران و ... هر یک از افراد فوق دارای تجارب مختلفی در سطوح متفاوتی از دانش کسب و کار و مسائل فنی سازمان می باشند . مدل داده این امکان را فراهم می نماید که تا ضمن تایید دانش حوزه کاری ، افراد مختلف بتوانند یک برداشت و دیدگاه مشترک نسبت به چشم انداز اطلاعاتی سازمان پیدا کنند . یک مدل داده
قادر به تشریح یک چشم انداز جدید اطلاعات و یا تشریح یک چشم انداز اطلاعاتی از وضعیت موجود است .
در این بخش با تمرکز بر روی اجزاء مدل سازی داده با جایگاه هر یک از بازیگران مهم آشنا شدیم . همچنین به این موضوع اشاره گردید که برای تشریح مدل سازی داده به همراه جزئیات مربوطه ، می توان از سه سطح مختلف مفهومی ، منطقی و فیزیکی استفاده کرد . هر یک از سطوح فوق با توجه به ماموریت تعریف شده ، جزئیات مختلفی از مدل سازی داده را تشریح می نمایند . در بخش سوم به سراغ طرح های مدل سازی داده و همچنین معیارهای ارزیابی کیفیت و امنیت یک مدل داده خواهیم رفت و با آنها آشنا خواهیم شد.
منابع :
Steve Hoberman , Data Modeling Made Simple: A Practical Guide for Business and IT Professionals ,Technics Publications , 2009
Steve Hoberman , Data Modeling for MOngoDB ,Technics Publications , 2014
Paulraj Ponniah, Data Modeling Fundementals A Practical Guide for IT Professionals, Wiley , 2007
Dama International , DAMA-DMBOK: Data Management Body of Knowledge (2nd Edition),Technics Publications; Second edition, Technics Publications , July 5 2017