slide1
Download
Skip this Video
Download Presentation
استخراج نمودارهای ER از پایگاه های داده سنتی مبتنی بر جدول

Loading in 2 Seconds...

play fullscreen
1 / 19

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


  • 168 Views
  • Uploaded on

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

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' استخراج نمودارهای ER از پایگاه های داده سنتی مبتنی بر جدول' - katelyn-vaughan


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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide1

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

سید حامد حسینی نژاد

810187587

زمستان 88

slide2
مقدمه
  • تعریف مهندسی معکوس:
    • فرآیند تحلیل سیستم به منظور مشخص کردن اجزای سیستم و روابط داخلی بین آنها برای توصیف سیستم در سطح بالاتر[3]
  • تعریف مهندسی معکوس پایگاه داده:
    • فرآیند استخراج داده های منطقی و مفهومی از یک مجموعه داده ذخیره شده در قالب مشی پایگاهی یا مشی فایلی، از اطلاعاتی چون کدهای DDL، داده های دیکشنری، سطرهای ذخیره شده و متن برنامه مرتبط با اطلاعات ذخیره شده [2]
slide3
صورت مسئله
  • همواره تصور میشود که اطلاعات معنایی مرتبط با صفات، کلیدهای اصلی و خارجی به طور کامل در دسترسند. در حالیکه لزوما اینگونه نیست.
  • در این مقاله روشی برای استخراج نمودار ER از پایگاه داده مبتنی بر جدول مطرح میشود.
  • از ستون ها اطلاعات کمی در دست است و از کلیدها اطلاعاتی در دست نیست.
  • ورودی های اصلی مسئله: شما و سطرهای جداول
slide4
مراحل کلی کار
  • تحلیل کدها و داده های مرتبط
    • مقایسه فیلدها
    • تجزیه فیلدها
    • استخراج صفات معنایی از جداول و شماها
    • تشخیص کلیدهای اصلی، کلیدهای خارجی و محدودیت ها
  • استخراج نمودار ER از طریق ترکیب جداول و یافتن روابط بین آنها
slide5
فرم
  • یک مجموعه ساختار یافته از متغیرها
  • دارای فرمت مناسب برای ارتباط با پایگاه داده
  • کاربرد در بازیابی و نمایش داده ها
  • ایجاد از طریق کار با خروجی برنامه های کاربردی مرتبط با سیستم
slide6
لیست مراحل کار
  • 1- آماده سازی پروژه
  • 2- استخراج ساختار داده ها
  • 3- مفهوم سازی ساختار داده ها
slide7
آماده سازی پروژه
  • مرحله جمع آوری و طبقه بندی توضیحات و مشخصات مرتبط با داده های موجود در پایگاه داده
  • با استفاده از DDL ها، ساختار برنامه ی مرتبط با پایگاه داده و ...
  • این کار در قالب ساختن مجموعه ای از فرم ها صورت میگیرد.
  • هر فرم مجموعه ای از مشخصات مرتبط با هم دارد.
  • در نهایت، مجموعه ی فیلدهای فرم ها و فیلدهای پایگاه داده و داده های موجود در پایگاه داده، طی یک فرآیند وارد یک پایگاه داده SQL Server میشوند.
slide8
آماده سازی پروژه (ادامه)
  • در پایگاه داده SQL Server، چهار جدول جدید ساخته میشود تا عمل انتقال داده ها به این جداول صورت بگیرد.
  • جداول
    • Entity: اطلاعات مرتبط با فرم ها
    • Attribute: اطلاعات مرتبط با فیلدهای فرم ها
    • TableSchema: اطلاعات مرتبط با جداول موجود در پایگاه داده
    • FieldSchema: اطلاعات مرتبط با فیلدهای جداول موجود
slide9
آماده سازی پروژه (ادامه)
  • Create table Entity

(

EntityNo int identity (1,1),

 EntityName varchar (20),

primary key (EntityNo),

)

slide10
آماده سازی پروژه (ادامه)
  • Create table Attribute

(

 EntityNo int,

 AttributeNo int,

 AttributeName varchar(20),

primary key (EntityNo, AttributeNo),

)

slide11
آماده سازی پروژه (ادامه)
  • Create table TableSchema

(

 TableName varchar (20),

 Meaning varchar (30),

 primary key (TableName)

)

slide12
آماده سازی پروژه (ادامه)
  • Create table FieldSchema

(

TableNamevarchar(20),

FieldNamevarchar(20),

 meaning varchar(30),

 Data varchar(100),

 primary key (TableName, FieldName)

)

slide13
استخراج ساختار داده
  • شامل سه مرحله است:
    • استخراج صفات
    • استخراج کلید
    • استخراج محدودیت
slide14
استخراج صفات
  • مقایسه صفات موجود در فرم ها با صفات موجود در جداول به منظور به دست آوردن معنای اصلی صفت (ممکن است با نام صفت متفاوت باشد.
  • قانون اصلی:
  • 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.
  • مشکل فیلدهایی که شامل چند صفت اند؟
slide15
استخراج کلید
  • در پایگاه های داده قدیمی، مفهوم کلیدهای کاندیدا، اصلی و خارجی به طور ضمنی (و نه صریح) آمده اند.
  • راه حل: استفاده از فایل های ایندکس
  • فایل ایندکس: به کار رفته برای تسریع جستجو
slide16
استخراج کلید (ادامه)
  • ایده:

اگر تعداد سطرهای فایل ایندکس با تعداد سطرهای جدول مرتبط با فایل ایندکس برابر باشد، فیلدهایی که روی آن ایندکس زده شده، به عنوان کلید کاندیدا در نظر گرفته میشود.

  • اگر چند کلید کاندیدا موجود باشد، ایندکسی که کمترین تعداد فیلد را دارد، به عنوان کلید اصلی در نظر گرفته میشود.
  • کلیدهای اصلی هر جدول در بقیه جداول چک میشوند تا کلیدهای خارجی پیدا شوند.
slide17
استخراج محدودیت
  • هدف اصلی: استخراج چندی رابطه های بین جداول
  • Query ارائه شده:
  • Select count(*) from

(

select s.A

from TA s

join TB n on s.A = n.B

)

slide18
استخراج مفهوم
  • هدف تشخیص موجودیت ها و ارتباط بین آنها
    • شبیه تبدیل رابطه شیئ گرا به پایگاه داده رابطه ای
  • چند نمونه ی اصلی:
    • تقسیم عمودی: تبدیل فیلد چند متغیره به یک جدول جدید
    • تقسیم افقی: تشکیل رابطه های Generalization و ...
    • تبدیل رابطه ی چند به چند به یک جدول جدید
    • ...
slide19
منابع
  • [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.
ad