دانلود مقاله بهینه‌سازی و پردازش پرس و جو

Word 641 KB 398 68
مشخص نشده مشخص نشده کامپیوتر - IT
قیمت قدیم:۳۰,۰۰۰ تومان
قیمت: ۲۴,۸۰۰ تومان
دانلود فایل
  • بخشی از محتوا
  • وضعیت فهرست و منابع
  • این تحقیق ما به تکنیک‌های بکار رفته توسط DMBS برای پردازش، بهینه‌سازی و اجرای پرس و جوهای سطح بالا می‌پردازیم. 

    پرس و جوی بیان شده در زبان پرس‌و جوی سطح بالا مثل SQL ابتدا باید پویش و تجزیه . معتبر شود. پویشگر (اسکنر) علامت هر زبان، مثل لغات کلیدی SQL، اساس ویژگی، و اساس رابطه، را در متن پرس و جو شناسایی می‌کند،‌ در عوض تجربه کننده، ساختار دستوری پرس و جو را برای تعیین اینکه آیا بر طبق قوانین دستوری زبان پرس و جو تدوین می‌شود یا خیر، چک می‌کند. پرس و جو باید همچنین معتبر شود، با چک کردن اینکه تمام اسامی رابطه و ویژگی معتبر هستند و اسامی معنی‌دار در طرح پایگاه اطلاعاتی ویژها‌ی پرس و جو می‌شوند. نمونه داخلی پرس و جو ایجاد می‌شود،‌‌ که تحت عنوان ساختار داده‌های درختی بنام درخت پرس و جو می‌باشد. ارائه پرس و جو با استفاده از ساختار داده‌های گراف بنام گراف پرس و جو نیز امکان پذیر است. DOMS باید استراتژی اجرایی برای بازیابی نتیجه پرس و جو از فایل‌های پایگاه اطلاعاتی را هدایت کند. پرس و جو استراتژیهای اجرایی بسیاری دارد. و مرحله انتخاب،‌ مورد مناسبی برای پردازش پرس وجو تحت عنوان بهینه‌سازی پرس و جو شناخته شده است.

     

    تصویر 1، مراحل مختلف پردازش پرس و جوی سطح بالا را نشان می‌دهد. قطعه بر نامه بهینه‌ساز پرس وجو، وظیفه ایجاد طرح اجرایی را بعهده دارد و ژنراتور (تولید کننده) که ، کد را برای اجرای آن طرح ایجاد می‌کند. پردازنده پایگاه اطلاعاتی زمان اجرا وظیفه اجرای که پرس و جو را بعهده دارد،‌ خواه در وضعیت کامپایل شده یا تفسیر شده جهت ایجاد نتیجه پرس و جو. اگر خطای زمان اجرا نتیجه شود،‌ پیام خطا توسط پایگاه اطلاعاتی زمان اجرا ایجاد می‌شود.

     

     

     

    اصطلاح بهینه‌ سازی نام بی مسمایی است چون در بعضی موارد،‌ طرح اجرایی انتخاب شده، استراتژی بهینه نمی‌باشد، آن فقط استراتژی کارآمد معقول برای اجرای پرس و جو است. یافتن استراتژی بهینه، ضامن صرف زمان زیادی است، بجز برای ساده‌ترین پرس و جوها،‌ ممکن است به اطلاعاتی روی چگونگی اجرای فایل‌ها در فهرست‌های فایل‌ها، اطلاعاتی که ممکن است کاملاً در کاتالوگ DBMS در دسترس نباشد، نیاز باشد. از اینرو،‌ برنامه‌ریزی استراتژی اجرا ممکن است توصیف درست‌تری نسبت به بهینه‌سازی پرس و جو باشد.

    برای زبانهای پایگاه اطلاعاتی (دریایی) جهت‌یابی در سطح پایینتر در سیستم‌های قانونی، مثل شبکه DML شبکه‌ای یا MOML سلسله مراتبی،‌ برنامه نویس باید، استراتی اجرای پذیرش و جو را انتخاب کند ضمن اینکه برنامه پایگاه اطلاعاتی را می‌نویسد. اگر DBMS فقط زیان جهت‌یابی را ارائه دهد. فرصت و نیاز محدودی برای بهینه‌سازی پرس وجوی وسیع توسط DBMS وجود دارد، در عوض به برنامه نویس قابلیت انتخاب استراتژی اجرایی بهینه ارائه می‌شود. بعبارت دیگر، زبان پرس و جو در سطح بالا، مثل SQL  برای DBMSهای رابطه‌ای یا OQL برای DBMS‌های مقصد،‌ در ماهیت تفریطی‌تر است. چون آنچه نتایج مورد نظر پرس و جو است بغیر از شناسایی جزئیات چگونگی بدست آمدن نتیجه،‌ را تعیین می‌کند. بهینه‌سازی پرس و جو برای پرس و جوهایی ضروی است که در زبان پرس و جوی سطح بالا تعیین می شوند. ما روی توصیف بهینه‌سازی پرس و جو در زمینه ROBMS تمرکز می‌کنیم چون بسیاری از تکنیک‌هایی که توصیف می‌ کنیم برای، برای ODBMSها تطبیق یافته‌اند. DBMS رابطه‌ای باید استراتژیهای اجرای پرس و جوی دیگری را ارزیابی کند و استراتژی بهینه یا کارآمد معقولی را انتخاب کند. هر DBMS ،‌ تعدادی الگاریتم دسترسی به پایگاه اطلاعاتی کلی دارد که علامتهای رابطه‌ای مثل SELECT یا JOIN یا ترکیبی از این عملیات ‌ها را اجرا می‌کند. تنها استراتژیهای اجرایی که می‌توانند توسط الگاریتم‌های دسترسی DBMS اجرا شوند و برای طراحی پایگاه اطلاعاتی فیزیکی ویژه و پرس و جوی خاص بکار روند،‌ می‌توانند توسط قطعه برنامه بهینه‌سازی پرس و جو در نظر گرفته شوند.

    ما با بحث کلی چگونگی ترجمه پرس و جوهای SQL به پرس و جوهای جبری رابطه‌ای و در بهینه‌شدن آنها کار را شروع می‌کنیم. بعد ما روی الگاریتم‌ها برای اجرای عملیات‌های رابطه‌ای در بخش 1802 بحث می‌کنیم. بدنبال این مطلب، بررسی از استراتژیهای بهینه‌سازی پرس و جو را ارائه می‌دهیم. دو تکنیک اصلی برای اجرای بهینه‌‌سازی پرس و جو وجود دارد. اولین تکنیک بر اساس قوانین ذهنی جهت ترتیب دادن عملیات‌ها در استراتژی اجرای پرس و جو می‌باشد. ذهن قانونی است که بخوبی در اکثر موارد عمل می‌کند ولی برای کار مناسب در هر مورد کنش تضمین نمی‌شود. قوانین عملیات‌ها را در درخت پرس وجو مجدداً ترتیب می‌دهند. دومین تکنیک شامل برآورد هزینه استراتژیهای اجرای متفاوت و انتخاب طرح اجرایی با پایین‌ترین هزینه برآورد است. دو تکنیک معمولاً در بهینه ساز پرس و جو (باهم ترکیب می‌شوند) بهم ملحق می‌گردند. بررسی مختصری از عوامل در نظر گرفته شده در طول بهینه‌سازی پرس و جو در RDBMS بازرگانی ORACLL= را ارائه می‌دهیم. در بخش بعدی نوعی بهینه‌سازی پرس و جوی معنایی را ارائه می‌دهد که در آن محدودیت‌های شناخته شده برای پرداختن به استراتژیهای اجرایی پرس و جوی کارآمد استفاده می‌شوند.

    2 – ترجمه پرس و جوهای SQL به پرس و جوهای رابطه‌ای:

    در عمل، SQL زبان پرس وجویی است که در اکثر RDBMS ‌های بازرگانی استفاده می‌شود. پرس وجوی SQL ، ابتدا به عبارت جبری رابطه‌ای توسعه یافته معادل،‌ نمایانگر ساختار داروهای درخت پرس و جو، ترجمه می‌شود و بعد بهینه‌سازی می‌شود. پرس و جوهای SQL به بلوکهای پرس و جو تجزیه می‌شوند،‌ که واحدهای اساسی را تشکیل می‌دهند که می‌توانند به عملکردهای جبری ترجمه شوند و بهینه‌سازی شوند. بلوک پرس و جو شامل عبارت SELECT- FROM-WHERE تکی و بندهای Groop By و HAVING است چنانچه این‌ها بخشی از بلوک باشند. از اینرو،‌ پرس و جوهای تو در تو در پرس و جو بعنوان بلوکهای پرس و جوی مجزا شناسایی می‌شوند. چون SQL شامل عملکردهای گروهی، مثل MAX ،‌ COUNT,SUM می‌باشد، این عملگرها باید در پرس و جوی جبری توسعه یافته‌ای شامل شوند، همانطوریکه در بخش 705 توصیف شد. پرس و جوی SQL در رابطه EMPLOEE در تصویر 705 را در نظر بگیرید:

    این پرس و جو شامل، پرس و جوی فرعی تو در تو است و از اینرو به دو بلوک تجزیه می‌شود. بلوک درونی بدین صورت است:

    و بلوک بیرونی بدین صورت می باشد:

    که C نمایانگر نتیجه حاصله از بلوک درونی است. بلوک درونی به عبارت جبری رابطه‌ای توسعه یافته زیر ترجمه شده است:

    و بلوک بیرونی به عبارت زیر  ترجمه شده است:

    بهینه‌ ساز پرس و جو، طرح اجرایی را برای هر بلوک انتخاب می‌کند. ما باید اشاره کنیم به در مثال فوق، بلوک درونی نیاز به ارزیابی شدن دارد تنها زمانی که، حداکثرحقوقی که بعکار می‌رود که بعنوان ثابت C، توسط بلوک بیرونی استفاده می‌شود. ما اینرو پرس و جوی تودرتوی غیرمرتبط نامیدیم (در فصل 8). آن برای بهینه‌سازی پرس و جوهای تو در توی مرتبط پیچیده‌تر، خیلی سخت‌تر است، جایی که متغیر Tuple از بلوک بیرونی در بند WHERE در بلوک درونی ظاهر می‌شود.

    1802- الگاریتم های انسانی برای اجرای عملیاتهای پرس و جو:

    RDBMS شامل الگاریتم‌هایی برای اجرای انواع مختلف عملیاتهای رابطه‌‌ای است که می‌توانند در استراتژی اجرای پرس و جو نمایان شوند، این عملیات‌ها شامل عملیاتهای جبری بیسیک (اصلی) و توسعه یافته مورد بحث در فصل 7 ، و در بسیاری موارد، الحاقاتی از این عملیات‌ها می‌باشد. برای هر یک از این عملیات ها یا الحاقی از عملیات‌ها، یک یا چند الگاریتم برای اجرای عملیات‌ها در دسترس قرار دارند. الگاریتم ممکن است فقط برای ساختارهای ذخیره خاص مسیرهای دستیابی بکار روند، در اینصورت ،‌ تنها در صورتی استفاده می‌شود که فایل های موجود در عملیات شامل این مسیرهای دستیابی هستند. در این بخش، ما به الگاریتم‌های نمونه بکار رفته برای اجرای SEKECT ، JOIN و دیگر عملیاتهای رابطه‌ای می‌پردازیم. ما بحث مرتب کردن خارجی را در بخش 180201 آغاز می‌کنیم که در قلب عملیاتهای رابطه‌ای قرار دارد که از استراتژیهای ادغام کردن به مرتب کردن استفاده می‌کند. بعد ما به الگاریتم‌هایی برای اجرای عملیات SELECT در بخش 180202 می‌پردازیم،‌ به عملیات ‌JOIN در بخش 180203 و عملیات PRIJECT و عملیاتهای مجموعه در بخش IE 1802 و عملیات‌های گروهی و جمعی در بخش 2 .2 . 18 می‌پردازیم.

    1. 2. 18- مرتب کردن خارجی:

    مرتب کردن، یکی از الگاریتم‌های اولیه بکار رفته در پردازش پرس و جو است. برای مثال، ‌به هر وقت پرس و جوی SQL ، بعد ORDER BY را تعیین می‌کند، نتیجه پرس و جو باید مرتب گردد. مرتب کردن، مؤلفه کلیدی در الگاریتم‌های مرتب کردن- ادغام کردن (مرتب-ادغام) بکار رفته برای Join و عملیاتهای دیگر، دور الگاریتم‌های حذف کپی برای عملیات PROYECT است. ما روی بعضی از این الگاریتم‌ها در بخش‌ 3. 2. 18 و 4. 02 18 بحث خواهیم کرد. توجه کنید که مرتب کردن در صورتی که اجتناب می‌شود که شاخص مناسب برای امکان دسترسی مرتب شده به ثبت‌ها وجود دارد.

    مرتب کردن خارجی به الگاریتم‌های مرتب کردن اشاره می‌کند که برای فایل های بزرگ ثبت ‌های ذخیره شده روی دیسک مناسب هستند که در حافظه اصلی، مثل اکثر فایل های پایگاه اطلاعاتی تناسب نمی‌‌یابد. الگاریتم‌ مرتب کردن خارجی نمونه از استراتژی مرتب- ادغام استفاده می‌کند، که با مرتب کردن- فایل‌های فرعی کوچک بنام اجراها در فایل اصلی شروع می‌شود و بعد اجراها مرتب شده ادغام می‌شوند،‌‍ فایل‌های فرعی مرتب شده بزرگتری ایجاد می‌شوند که بترتیب ادغام می‌شوند. الگاریتم ادغام –مرتب،‌ مثل دیگر الگاریتم های پایگاه اطلاعاتی به فاضی بافر در حافظه اصلی نیاز دارد،‌ جایی که مرتب کردن واقعی و ادغام اجراها انجام می‌ شود. الگاریتم اصلی (سیبک) شرح داده شده در تصویر 1802 ، شامل دو مرحله است: (1) فاز یا مرحله مرتب کردن و (2) مرحله ادغام.

  • فهرست:

    ندارد.


    منبع:

    ندارد.

در این فصل، به تکنیک‌های بکار رفته توسط DMBS برای پردازش، بهینه‌سازی و اجرای پرس و جو های سطح بالا می‌پردازیم. پرس و جوی بیان شده در زبان پرس‌و جوی سطح بالا مثل SQL ابتدا باید پویش و تجزیه . معتبر شود. پویشگر (اسکنر) علامت هر زبان، مثل لغات کلیدی SQL، اساس ویژگی، و اساس رابطه، را در متن پرس و جو شناسایی می‌کند،‌ در عوض تجربه کننده، ساختار دستوری پرس و جو را برای تعیین اینکه آیا ...

بهینه‌ ساز پرس‌ و جو از اهمیت زیادی برای پایگاه داده ارتباطی برخوردار است، مخصوصا برای اجرای دستورات پیچیده SQL . یک بهینه ساز پرس‌وجو بهترین استراتژی بر اجرای هر پرس‌وجو را تعیین می‌کند. بهینه‌ساز پرس و جو به عنوان مثال انتخاب می‌کند آیا از شاخص برای یک پرس‌وجو مشخص استفاده کند یا نه، وکدام تکنیک الحاق هنگامی که جداول با هم الحاق می‌شوند استفاده شود. این تصمیم تاثیری بسیار ...

چکیده این پروژه برنامه ساخت یک وب سایت شخصی برای استاد است . که شامل صفحات ایستا و پویای وب می باشد . برنامه نویسی اسیتای آن توسط نرم افزار Dreamweaver و زبان HTML و برنامه نویسی پویای آن توسط زبان PHP انجام گرفته است . بانک اصلاعاتی مرتبط با آن MYSQL می باشد . امکانات این وب سایت شامل موارد زیر می باشد : 1 ) اطلاعات شخص استاد برای آشنایی بیشتر دانشجویان با سوابق استاد خود . 2 ) ...

بخش 1 : مقدمه 1-1 مقدمه اي بر بانک اطلاعاتي دادِگان (پايگاه داده‌ها يا بانک اطلاعاتي) به مجموعه‌اي از اطلاعات با ساختار منظم و سامانمند گفته مي‌شود. اين پايگاه‌هاي اطلاعاتي معمولاً در قالبي که براي دستگاه‌ها و رايانه‌ها قابل خواندن و قابل

تا چندین سال قبل فقط کسانی که به سیستم های بزرگ و گران قیمت دسترسی داشتند، می توانستند از برنامه های مدیریت بانک اطلاعاتی استفاده کنند ولی با پا به عرصه گذاشتن کامپیوتر های شخصی در نوع ، اندازه و سرعت های مختلف ، برنامه های متعددی هم ، همراه اینان وارد میدان شدند که هر کدام دارای خصوصیات منحصر به فرد خود بودند. در این میان dBASE می توانست جلوگیری از بسیاری از مشکلات مدیران و ...

در اين مقاله بر کاربرد SQL Server 2000 و VB.NET به طور مختصر توضيحاتي خواهيم داد و هم چنين عملکرد نرم افزار کتابخانه را بررسي خواهيم نمود . SQL Server MS مرتباً سهم بيشتري از بازار را به خود اختصاص مي دهد و يک سيستم مديريت پايگاه داده رابطه اي سروي

در زمان گذشته براي کار با نقشه ها از نقشه‌هاي کاغذي که اغلب بسيار عريض و طويل بودند استفاده مي‌‌شد و کاربران مجبور بودند براي اينکه نقشه اي با جزئيات کامل داشته باشند، يا شهر ها را به مناطق مختلف تقسيم کنند و نقشه هر يک را به صورت جداگانه داشته باشن

دادِگان (پايگاه داده‌ها يا بانک اطلاعاتي) به مجموعه‌اي از اطلاعات با ساختار منظم و سامانمند گفته مي‌شود. اين پايگاه‌هاي اطلاعاتي معمولاً در قالبي که براي دستگاه‌ها و رايانه‌ها قابل خواندن و قابل دسترسي باشند ذخيره مي‌شوند. البته چنين شيوه ذخيره‌سازي

طراحي و پياده سازي مديريت 1) Design and Implementation 2) Administrator بانکهاي اطلاعاتي به دو دسته تقسيم بندي مي شوند که عبارتند از: 1) Desktop Access-paradox, foxpro-Dbase 2) client/server sql-oracl/ مدل Desktop براي کامپيوتهاي singl

ما از query optimizing براي حل مسائل زيادي استفاده مي کنيم. زماني که يک query مطرح مي شود، سيستم مديريت بانک اطلاعاتي (DBMS ) مي تواند از روش هاي مختلفي براي پردازش آن query و رسيدن به جواب استفاده کند. همه آن روش ها در نهايت يک نتيجه را توليد مي کن

ثبت سفارش
تعداد
عنوان محصول