1 / 32

به نام خدا

به نام خدا. Managing and Querying Transaction-time Databases under Schema Evolution. اسماعیل خامه یار. 88/2/19. فهرست. مقدمه پایگاه داده های Transaction-time XML و XQuery تحولات schema Query Reformulation (Rewrite) PRIMA خلاصه. 88/2/19. مقدمه.

radwan
Download Presentation

به نام خدا

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. به نام خدا • Managing and Querying Transaction-time Databases under Schema Evolution • اسماعیل خامه یار 88/2/19

  2. فهرست • مقدمه • پایگاه داده های Transaction-time • XML و XQuery • تحولات schema • Query Reformulation (Rewrite) • PRIMA • خلاصه 88/2/19

  3. مقدمه • حاد تر شدن مشکل قدیمی کنترل تاریخچه پایگاه داده ها با گسترش سیستم های اطلاعاتی مانند Wikipedia • نیاز به آرشیو سازی داده های قدیمی و ایجاد query روی آن ها • تغییرات schema در Wikipedia بیش از 170 بار در 4/5 سال • تلاش برای حل مشکل با معرفی سیستمی به نام PRIMA • (PantaRhei Information Management & Archival) • متدی برای تبدیل تاریخچه پایگاه داده های رابطه ای به XML • شفافیت تغییرات schema از دید کاربر 88/2/19

  4. پایگاه داده های Transaction-time • پایگاه داده های Transaction-time • حفظ و دسترسی به داده های قدیمی را فراهم می کند • فواید: آنالیز تاریخچه، ترمیم خطاها، پشتیبانی از رسیدگی • Immortal DB، ArchIS 88/2/19

  5. آرشیو سازی با تغییرات schema ؟ • کار های پیشین: راه حل های رابطه ای • single pool و multi pool • مشکل: temporally ungrouped یعنی افزونگی و خلاصه سازی پرهزینه، محدود سازنده ذخیره داده ها و شِمای آن ها • راه حل بررسی شده در این مقاله • نمایش یکپارچه DB و schema تحت مستندات XML به نام MV-document و ایجاد query روی آن ها با XQuery • temporally grouped 88/2/19

  6. نمایش بصری داده های موقتی(temporal) 88/2/19

  7. XML برای داده های موقتی(temporal) • Multiversion V-document یا MV-document • نمایش سلسله مراتبی با XML 88/2/19

  8. XQery برای query های XML • XQuery یک زبان خوب برای query های XML • یک زبان قدرتمند مبتنی بر XPath • یک نمایش یکپارچه از تاریخچه پایگاه داده ها و شمای آن • یک مدل برای نمایش داده ها و ساده سازی query ها با استفاده از استاندارد XQuery 88/2/19

  9. XQuery برای query های XML (مثال) • XQuery برای Sr. Engineering قبل از سال 2005 • مثالی دیگر Query 1: Temporal projection. Retrieve the title history of employee “Bob” for $t in doc(“emp.xml”)/db/empacct/row [name=“Bob”]/title return $t 88/2/19

  10. تحولات schema • تغییرات schema. چرا؟ • بازشناسی داده ها • طراحی منطقی بهتر، کارایی بالاتر • تغییرات مدل ها • کلکسیون جدید داده ها، بازسازی داده ها، قوانین دولتی • تغییرات schema در پایگاه داده Wikipedia 88/2/19

  11. تعداد جداول در پایگاه داده های Wikipedia 88/2/19

  12. Schema Modification Operators (SMOs) • زبانی برای تغییر schema • مجموعه ای از دستورات برای تغییرات schema 88/2/19

  13. یک مثال از تغییرات schema 88/2/19

  14. یک مثال از تغییرات schema (نمایش XML) 88/2/19

  15. یک مثال از تغییرات schema (نمایش 2 XML) • قادر به نمایش محتوا و تاریخچه DB با استفاده از XML 88/2/19

  16. XQuery • تلاش اولیه برای بازیابی لیست نام دپارتمان ها • این query فقط همین ورژن schema را مورد بررسی قرار می دهد. 88/2/19

  17. بازنویسی XQuery • query درست همه ورژن های schema را مورد بررسی قرار می دهد. • این گونه ترجمه باید از دید کاربر شفاف باشد. 88/2/19

  18. بازنویسی XQuery (ادامه) • معماری بازنویسی query 88/2/19

  19. XML Integrity Constraints • چگونگی تولید نگاشت های متفاوت از SMO • ترجمه SMO ها به XIS ها 88/2/19

  20. بازنویسی XQuery (ادامه) • بازنویسی query به ورژن متفاوت کار آسانی نیست • طبقه بندی query برای انواع متفاوت آن 88/2/19

  21. طبقه بندی temporal query • سه رده تقسیم بندی برای query • آیا query از یک نسخه منبع است یا بیشتر؟ • الگوریتم MinSourceFind برای یافتن تعداد نسخه های منبع • query به یک جدول دسترسی دارد یا بیشتر؟ • نوع ارتباط بین جداول query وقتی به بیش از یک جدول نیاز دارد • all temporal joins • all non-temporal joins • هر دو مورد فوق 88/2/19

  22. Query reformulation • فرمول بندی مجدد query های single source • MARS برای موتور بازنویسی query [VLDB03] • قیود جامعیت XML (XISc) • فرمول بندی مجدد query های class-5 • فرمول بندی مجدد query های class-6 • فرمول بندی مجدد query های class-7 • فرمول بندی مجدد query های class-8 88/2/19

  23. MinSourceFind • برای شناسایی کلاس های مشابه و کارا ساختن query • شناسایی مجموعه کمینه از ورژن هایی که query را دربر می گیرد و در نتیجه ورژن های اضافه را هرس می کند. • باعث بالا رفتن کارایی می شود 88/2/19

  24. بهینه سازی بازنویسی query • مشکل: پرهزینه بودن بازنویسی با قیود زیاد • هدف: کمینه سازی قیودی که مورد استفاده در بازنویسی • هرس کردن (prune) SMO • استفاده از SMO هایی که روی query ورودی تأثیر گذارند • فشرده سازی SMO • تبدیل تعدادی از SMO ها به یک SMO 88/2/19

  25. PRIMA • PantaRhei Information Management and Archival • استفاده از پایگاه داده Transactional-time • نمایش یکپارچه پایگاه داده ها و شِمای آن • در ابتدا مبتنی بر پایگاه داده های XML بود • اکنون مبتنی بر H-PRIMA (پایگاه داده های رابطه ای) است 88/2/19

  26. اعمال PRIMA • پیاده سازی XML بر روی DBMS های رابطه ای • ترجمه query، به query معادل تمام ورژم های schema • کارایی هنوز به طور کامل مورد سنجش واقع نشده است 88/2/19

  27. خصوصیات PRIMA • PRIMA: • یک سیستم پایگاه داده ای functional به طور کامل • پشتیبانی از تغییرات schema تحت پایگاه داده مورد نظر • استفاده از XML برای نمایش اطلاعات و تحولات schema • شفافیت تغییرات schema از دید کاربر • هنوز برای برنامه های بزرگ قابل استفاده نیست 88/2/19

  28. معماری PRIMA 88/2/19

  29. نتایج آزمایش ها در PRIMA • زمان بازنویسی query در Wikipedia >100s <0.5s 88/2/19

  30. چالش های تحول schema و PantaRhei Framework • زحمت زیاد در مهاجرت های پایگاه داده ها و تطبیق query • زحمت زیاد در آرشیو سازی و querying تاریخچه داده ها • مدیریت تاریخچه schema توسط خودش 88/2/19

  31. خلاصه • transaction-time DB مسئله مهمی است • ولی schema های در حال رشد را پشتیبانی نمی کند • این مقاله یک راه حل مؤثر و کارا ارائه داده است • مدل temporal data برای تحول schema • پاسخ نسبتا کارا به query با بازنویسی آن • بهینه سازی query و بازنویسی آن 88/2/19

  32. با تشکر سؤال یا پیشنهاد 88/2/19

More Related