جزئیات  
عنوان مدل سازی داده (2)
نوع منبع مقاله
گروه سایر
تاریخ انتشار 1396/10/2
خلاصه مدل های داده برای مدیریت موثر داده بسیار حیاتی می باشند . آنها یک واژگان مشترک حول و حوش داده را ایجاد می نمایند . ضبط و مستندسازی دانش موجود در ارتباط با داده و سیستم های سازمان ، ایفای نقش به عنوان یک ابزار ارتباطی اولیه در زمان انجام پروژه ها با هدف ایجاد یک زبان مشترک توصیفی از داده و روابط بین آنها و همچنین ارایه نقطه آغازین برای سفارشی سازی ، یکپارچه سازی و یا حتی جایگزین کردن یک برنامه از جمله اهداف مهم مدل سازی داده می باشد. یک مدل داده را می توان به منزله پلی در نظر گرفت که اطلاعات دنیای واقعی را به سیستم های پایگاه داده مرتبط می نماید . مدل سازی داده ، فرآیند یادگیری در رابطه با داده است و مدل داده نتایج نهایی فرآیند مدل سازی داده می باشد.

مدل های داده برای مدیریت موثر داده بسیار حیاتی می باشند . آنها یک واژگان مشترک حول و حوش داده را ایجاد می نمایند . ضبط و مستندسازی دانش موجود در ارتباط  با داده و سیستم های  سازمان  ، ایفای نقش به عنوان یک ابزار ارتباطی اولیه در زمان انجام پروژه ها با هدف ایجاد یک زبان مشترک توصیفی از داده و روابط بین آنها  و همچنین ارایه نقطه آغازین برای سفارشی سازی ، یکپارچه سازی و یا حتی جایگزین کردن یک برنامه از جمله اهداف مهم مدل سازی داده می باشد .  مدل سازی داده ، یک روش و ابزار برای توصیف نیازهای اطلاعاتی دنیای واقعی را بگونه ای ارایه می نماید  که ذینفعان یک سازمان قادر به درک آن باشند و بتوانند به سهولت با آن ارتباط برقرار نمایند  .  همچنین مدل سازی داده ها ، متخصصین پایگاه داده را قادر می سازد تا ضمن پذیرش نیازهای اطلاعاتی ، سیستم پایگاه داده را به منظور پشتیبانی از عملیات کسب و کار سازمان طراحی و پیاده سازی نمایند . یک مدل داده  را می توان  به منزله پلی در نظر گرفت که اطلاعات دنیای واقعی را به سیستم های پایگاه داده مرتبط می نماید . ساختار ، صلابت و شیوه ایجاد پل فوق دارای نقشی برجسته در حیات فعلی و آتی یک سیستم اطلاعاتی می باشد، چراکه در قلب هر سیستم اطلاعاتی از یک و یا چندین پایگاه داده استفاده می گردد . تداوم حضور موفقیت آمیز یک سیستم اطلاعاتی در ایجاد  ارزش برای سازمان  ریشه در استحکام ، امنیت ، کیفیت و انعطاف پذیری مدل های داده آن دارد که در نهایت  در قالب یک مدل داده  فیزیکی و به کمک یک سیستم رابطه ای و یا غیر رابطه ای  بانک اطلاعاتی  پیاده سازی می گردد .
 
مدل سازی داده به عنوان یک پل ارتباطی بین دنیای واقعی و سیستم های پایگاه داده
شکل 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