1 / 19

استخراج نمودارهای ER از پایگاه های داده سنتی مبتنی بر جدول

استخراج نمودارهای ER از پایگاه های داده سنتی مبتنی بر جدول. سید حامد حسینی نژاد 810187587 زمستان 88. مقدمه. تعریف مهندسی معکوس: فرآیند تحلیل سیستم به منظور مشخص کردن اجزای سیستم و روابط داخلی بین آنها برای توصیف سیستم در سطح بالاتر [3] تعریف مهندسی معکوس پایگاه داده:

Télécharger la présentation

استخراج نمودارهای ER از پایگاه های داده سنتی مبتنی بر جدول

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. استخراج نمودارهای ER از پایگاههای داده سنتی مبتنی بر جدول سید حامد حسینی نژاد 810187587 زمستان 88

  2. مقدمه • تعریف مهندسی معکوس: • فرآیند تحلیل سیستم به منظور مشخص کردن اجزای سیستم و روابط داخلی بین آنها برای توصیف سیستم در سطح بالاتر[3] • تعریف مهندسی معکوس پایگاه داده: • فرآیند استخراج داده های منطقی و مفهومی از یک مجموعه داده ذخیره شده در قالب مشی پایگاهی یا مشی فایلی، از اطلاعاتی چون کدهای DDL، داده های دیکشنری، سطرهای ذخیره شده و متن برنامه مرتبط با اطلاعات ذخیره شده [2]

  3. صورت مسئله • همواره تصور میشود که اطلاعات معنایی مرتبط با صفات، کلیدهای اصلی و خارجی به طور کامل در دسترسند. در حالیکه لزوما اینگونه نیست. • در این مقاله روشی برای استخراج نمودار ER از پایگاه داده مبتنی بر جدول مطرح میشود. • از ستون ها اطلاعات کمی در دست است و از کلیدها اطلاعاتی در دست نیست. • ورودی های اصلی مسئله: شما و سطرهای جداول

  4. مراحل کلی کار • تحلیل کدها و داده های مرتبط • مقایسه فیلدها • تجزیه فیلدها • استخراج صفات معنایی از جداول و شماها • تشخیص کلیدهای اصلی، کلیدهای خارجی و محدودیت ها • استخراج نمودار ER از طریق ترکیب جداول و یافتن روابط بین آنها

  5. فرم • یک مجموعه ساختار یافته از متغیرها • دارای فرمت مناسب برای ارتباط با پایگاه داده • کاربرد در بازیابی و نمایش داده ها • ایجاد از طریق کار با خروجی برنامه های کاربردی مرتبط با سیستم

  6. لیست مراحل کار • 1- آماده سازی پروژه • 2- استخراج ساختار داده ها • 3- مفهوم سازی ساختار داده ها

  7. آماده سازی پروژه • مرحله جمع آوری و طبقه بندی توضیحات و مشخصات مرتبط با داده های موجود در پایگاه داده • با استفاده از DDL ها، ساختار برنامه ی مرتبط با پایگاه داده و ... • این کار در قالب ساختن مجموعه ای از فرم ها صورت میگیرد. • هر فرم مجموعه ای از مشخصات مرتبط با هم دارد. • در نهایت، مجموعه ی فیلدهای فرم ها و فیلدهای پایگاه داده و داده های موجود در پایگاه داده، طی یک فرآیند وارد یک پایگاه داده SQL Server میشوند.

  8. آماده سازی پروژه (ادامه) • در پایگاه داده SQL Server، چهار جدول جدید ساخته میشود تا عمل انتقال داده ها به این جداول صورت بگیرد. • جداول • Entity: اطلاعات مرتبط با فرم ها • Attribute: اطلاعات مرتبط با فیلدهای فرم ها • TableSchema: اطلاعات مرتبط با جداول موجود در پایگاه داده • FieldSchema: اطلاعات مرتبط با فیلدهای جداول موجود

  9. آماده سازی پروژه (ادامه) • Create table Entity ( EntityNo int identity (1,1),  EntityName varchar (20), primary key (EntityNo), )

  10. آماده سازی پروژه (ادامه) • Create table Attribute (  EntityNo int,  AttributeNo int,  AttributeName varchar(20), primary key (EntityNo, AttributeNo), )

  11. آماده سازی پروژه (ادامه) • Create table TableSchema (  TableName varchar (20),  Meaning varchar (30),  primary key (TableName) )

  12. آماده سازی پروژه (ادامه) • Create table FieldSchema ( TableNamevarchar(20), FieldNamevarchar(20),  meaning varchar(30),  Data varchar(100),  primary key (TableName, FieldName) )

  13. استخراج ساختار داده • شامل سه مرحله است: • استخراج صفات • استخراج کلید • استخراج محدودیت

  14. استخراج صفات • مقایسه صفات موجود در فرم ها با صفات موجود در جداول به منظور به دست آوردن معنای اصلی صفت (ممکن است با نام صفت متفاوت باشد. • قانون اصلی: • Let an unique value, v, is inputted in a display form under the caption, c, and there exists a table, t, which contains v under a field, f, that is, vЄΠf(t), then the meaning of the field f is the same as the meaning of the caption c. • مشکل فیلدهایی که شامل چند صفت اند؟

  15. استخراج کلید • در پایگاه های داده قدیمی، مفهوم کلیدهای کاندیدا، اصلی و خارجی به طور ضمنی (و نه صریح) آمده اند. • راه حل: استفاده از فایل های ایندکس • فایل ایندکس: به کار رفته برای تسریع جستجو

  16. استخراج کلید (ادامه) • ایده: اگر تعداد سطرهای فایل ایندکس با تعداد سطرهای جدول مرتبط با فایل ایندکس برابر باشد، فیلدهایی که روی آن ایندکس زده شده، به عنوان کلید کاندیدا در نظر گرفته میشود. • اگر چند کلید کاندیدا موجود باشد، ایندکسی که کمترین تعداد فیلد را دارد، به عنوان کلید اصلی در نظر گرفته میشود. • کلیدهای اصلی هر جدول در بقیه جداول چک میشوند تا کلیدهای خارجی پیدا شوند.

  17. استخراج محدودیت • هدف اصلی: استخراج چندی رابطه های بین جداول • Query ارائه شده: • Select count(*) from ( select s.A from TA s join TB n on s.A = n.B )

  18. استخراج مفهوم • هدف تشخیص موجودیت ها و ارتباط بین آنها • شبیه تبدیل رابطه شیئ گرا به پایگاه داده رابطه ای • چند نمونه ی اصلی: • تقسیم عمودی: تبدیل فیلد چند متغیره به یک جدول جدید • تقسیم افقی: تشکیل رابطه های Generalization و ... • تبدیل رابطه ی چند به چند به یک جدول جدید • ...

  19. منابع • [1] D. Yeh, Y. Li, and W. Chu, "Extracting entity-relationship diagram from a table-based legacy database," Journal of Systems and Software, vol. 81, 2008, pp. 764-775. • [2] [Online] http://wiki.ercim.eu/wg/Software -Evolution/index.php/Terminology#D • [3] [Online] http://wiki.ercim.eu/wg/Software -Evolution/index.php/Terminology#R • [4] S. Strobl, M. Bernhart, T. Grechenig, W. Kleinert, and I.T. Services, "Digging Deep: Software Reengineering Supported by Database Reverse Engineering of a System with 30+ Years of Legacy," Reverse Engineering, 2009, pp. 407-410.

More Related