اس فایل

مرجع دانلود فایل ,تحقیق , پروژه , پایان نامه , فایل فلش گوشی

اس فایل

مرجع دانلود فایل ,تحقیق , پروژه , پایان نامه , فایل فلش گوشی

دانلود مقاله بهینه‌سازی و معرفی انواع مختلف روش‌های آن

اختصاصی از اس فایل دانلود مقاله بهینه‌سازی و معرفی انواع مختلف روش‌های آن دانلود با لینک مستقیم و پر سرعت .

دانلود مقاله بهینه‌سازی و معرفی انواع مختلف روش‌های آن


دانلود مقاله بهینه‌سازی و معرفی انواع مختلف روش‌های آن

چکیده

بهینه‌سازی یک فعالیت مهم و تعیین‌کننده در طراحی ساختاری است. طراحان زمانی قادر خواهند بود طرح‌های بهتری تولید کنند که بتوانند با روش‌های بهینه‌سازی در صرف زمان و هزینه طراحی صرفه‌جویی نمایند. بسیاری از مسائل بهینه‌سازی در مهندسی، طبیعتاً پیچیده‌تر و مشکل‌تر از آن هستند که با روش‌های مرسوم بهینه‌سازی نظیر روش برنامه‌ریزی ریاضی و نظایر آن قابل حل باشند. بهینه‌سازی ترکیبی    (Combinational Optimization)، جستجو برای یافتن نقطه بهینه توابع با متغیرهای گسسته        (Discrete Variables) می‌باشد. امروزه بسیاری از مسائل بهینه‌سازی ترکیبی که اغلب از جمله مسائل با درجه غیر چندجمله‌ای (NP-Hard) هستند، به صورت تقریبی با کامپیوترهای موجود قابل حل می‌باشند. از جمله راه‌حل‌های موجود در برخورد با این گونه مسائل، استفاده از الگوریتم‌های تقریبی یا ابتکاری است. این الگوریتم‌ها تضمینی نمی‌دهند که جواب به دست آمده بهینه باشد و تنها با صرف زمان بسیار می‌توان جواب نسبتاً دقیقی به دست آورد و در حقیقت بسته به زمان صرف شده، دقت جواب تغییر می‌کند.

مقدمه

          هدف از بهینه‌سازی یافتن بهترین جواب قابل قبول، با توجه به محدودیت‌ها و نیازهای مسأله است. برای یک مسأله، ممکن است جواب‌های مختلفی موجود باشد که برای مقایسه آنها و انتخاب جواب بهینه، تابعی به نام تابع هدف تعریف می‌شود. انتخاب این تابع به طبیعت مسأله وابسته است. به عنوان مثال، زمان سفر یا هزینه از جمله اهداف رایج بهینه‌سازی شبکه‌های حمل و نقل می‌باشد. به هر حال، انتخاب تابع هدف مناسب یکی از مهمترین گام‌های بهینه‌سازی است. گاهی در بهینه‌سازی چند هدف به طور همزمان مد نظر قرار می‌گیرد؛ این گونه مسائل بهینه‌سازی را که دربرگیرنده چند تابع هدف هستند، مسائل چند هدفی می‌نامند. ساده‌ترین راه در برخورد با این گونه مسائل، تشکیل یک تابع هدف جدید به صورت ترکیب خطی توابع هدف اصلی است که در این ترکیب میزان اثرگذاری هر تابع با وزن اختصاص یافته به آن مشخص می‌شود. هر مسأله بهینه‌سازی دارای تعدادی متغیر مستقل است که آنها را متغیرهای طراحی می‌نامند که با بردار n بعدی x نشان داده می‌شوند.

هدف از بهینه‌سازی تعیین متغیرهای طراحی است، به گونه‌ای که تابع هدف کمینه یا بیشینه شود.


دانلود با لینک مستقیم


دانلود مقاله بهینه‌سازی و معرفی انواع مختلف روش‌های آن

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

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

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


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

 

 

 

 

 

 

لینک پرداخت و دانلود *پایین مطلب*

فرمت فایل: Word (قابل ویرایش و آماده پرینت)

تعداد صفحه :106

 

بخشی از متن مقاله

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

در این تحقیق ما به تکنیک‌های بکار رفته توسط 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 می‌پردازیم.

*** متن کامل را می توانید بعد از پرداخت آنلاین ، آنی دانلود نمائید، چون فقط تکه هایی از متن به صورت نمونه در این صفحه درج شده است ***


دانلود با لینک مستقیم


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

مقاله کامل در مورد بهینه‌سازی و معرفی انواع مختلف روش‌های آن

اختصاصی از اس فایل مقاله کامل در مورد بهینه‌سازی و معرفی انواع مختلف روش‌های آن دانلود با لینک مستقیم و پر سرعت .

مقاله کامل در مورد بهینه‌سازی و معرفی انواع مختلف روش‌های آن


مقاله کامل در مورد بهینه‌سازی و معرفی انواع مختلف روش‌های آن

لینک پرداخت و دانلود *پایین مطلب*
فرمت فایل:Word (قابل ویرایش و آماده پرینت)
تعداد صفحه: 32
فهرست مطالب:

چکیده

مقدمه

بررسی روش‌های جستجو و بهینه‌سازی

روش‌های شمارشی

روش‌های محاسباتی

روش‌های ابتکاری و فرا ابتکاری (جستجوی تصادفی)

مسائل بهینه‌سازی ترکیبی

روش حل مسائل بهینه‌سازی ترکیبی

روش‌های اصلی ابتکاری

1- آزاد‌سازی

2- تجزیه

2-1- تکرار

2-2- روش تولید ستون  (Column Generation)

جستجوی سازنده (Constructive Search)

جستجوی بهبود یافته (Improving Search)

روش جستجوی همسایه ( NS= Neighbourhood Search)

روش‌های فرا ابتکاری برگرفته از طبیعت

انواع روش‌های فرا ابتکاری برگرفته از طبیعت

الگوریتم ژنتیک

آنیلینگ شبیهسازی شده

شبکه‌های عصبی

چکیده

بهینه‌سازی یک فعالیت مهم و تعیین‌کننده در طراحی ساختاری است. طراحان زمانی قادر خواهند بود طرح‌های بهتری تولید کنند که بتوانند با روش‌های بهینه‌سازی در صرف زمان و هزینه طراحی صرفه‌جویی نمایند. بسیاری از مسائل بهینه‌سازی در مهندسی، طبیعتاً پیچیده‌تر و مشکل‌تر از آن هستند که با روش‌های مرسوم بهینه‌سازی نظیر روش برنامه‌ریزی ریاضی و نظایر آن قابل حل باشند. بهینه‌سازی ترکیبی    (Combinational Optimization)، جستجو برای یافتن نقطه بهینه توابع با متغیرهای گسسته (Discrete Variables) می‌باشد. امروزه بسیاری از مسائل بهینه‌سازی ترکیبی که اغلب از جمله مسائل با درجه غیر چندجمله‌ای (NP-Hard) هستند، به صورت تقریبی با کامپیوترهای موجود قابل حل می‌باشند. از جمله راه‌حل‌های موجود در برخورد با این گونه مسائل، استفاده از الگوریتم‌های تقریبی یا ابتکاری است. این الگوریتم‌ها تضمینی نمی‌دهند که جواب به دست آمده بهینه باشد و تنها با صرف زمان بسیار می‌توان جواب نسبتاً دقیقی به دست آورد و در حقیقت بسته به زمان صرف شده، دقت جواب تغییر می‌کند.

 

 

                                                                                                                                                                                                                                               


دانلود با لینک مستقیم


مقاله کامل در مورد بهینه‌سازی و معرفی انواع مختلف روش‌های آن

تحقیق در مورد مطالعه کارآیی فن‌آوری داس الایزا در بهینه‌سازی مبارزه شیمیایی با بیماری بلاچ برگی گندم ناشی از Septoria trit

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

تحقیق در مورد مطالعه کارآیی فن‌آوری داس الایزا در بهینه‌سازی مبارزه شیمیایی با بیماری بلاچ برگی گندم ناشی از Septoria trit


تحقیق در مورد مطالعه  کارآیی فن‌آوری داس الایزا در بهینه‌سازی مبارزه شیمیایی با بیماری بلاچ برگی گندم ناشی از  Septoria trit

لینک پرداخت و دانلود *پایین مطلب*

 

فرمت فایل:Word (قابل ویرایش و آماده پرینت)

  

تعداد صفحه18

 

فهرست مطالب

  چکیده               مواد و روش ها

انجام شد.

نتایج و بحث

        پیش‌آگاهی از وقوع بیماری بلاچ برگی گندم ناشی از Septoria tritici در تنظیم و طراحی دقیق مبارزه شیمیایی بسیار حائز اهمیت است. یکی از روشهای شناسایی این بیماری پیش از بروز علایم، استفاده از فن‌آوری ایمنی‌سنجی است. در این تحقیق اهمیت بهره‌گیری از این فن‌آوری در تعیین نوع، مقدار مصرف قارچکش و زمان سمپاشی مورد بررسی قرار گرفته است. برای این منظور در 44 ظرف کاشت، گندم رقم روشن کاشته شد. گیاهچه‌ها در مرحله 12 روزگی با سوسپانسیونی از اسپوریدی‌های قارچ مایه زنی شدند. 20 ظرف کاشت پیش از بروز علایم بیماری و 20 ظرف دیگر پس از بروز آن با سه میزان 2، 1 و 5/0 درهزار از قارچکش‌های پروپیکونازول و سایپروکونازول با سه تکرار سمپاشی شدند. چهار ظرف کاشت باقیمانده در هر دسته نیز بعنوان شاهد با آب معمولی تیمار گردید. این طرح بصورت طرح فاکتوریل و در قالب طرح کاملاً تصادفی به اجرا درآمد. چگالی نوری نمونه‌های برگی پس از عصاره گیری و انجام آزمون الایزا تعیین و به مقادیر واحدهای پادگنی قارچ تبدیل شده و تاثیر هر یک از تیمارها بر این مقادیر مورد مقایسه قرار گرفت. نتایج نشان داد که بین مقادیر درصد کاهش واحدهای پادگنی در صورت اعمال سمپاشی پیش و پس از بروز علایم اختلاف معنی داری وجود دارد. همچنین درصورت استفاده از قارچکش پروپیکونازول و سایپروکونازول با پیش‌آگاهی بیماری می‌توان میزان سمپاشی و در نتیجه هزینه سمپاشی با هر دو قارچکش را تا 4 برابر کاهش داد. اختلاف معنی داری بین درصد کاهش واحدهای پادگنی در دو قارچکش سایپروکونازول و پروپیکونازول دیده نشد. استفاده از این فن‌آوری علاوه بر تعیین زمان دقیق اعمال تیمارها، به


دانلود با لینک مستقیم


تحقیق در مورد مطالعه کارآیی فن‌آوری داس الایزا در بهینه‌سازی مبارزه شیمیایی با بیماری بلاچ برگی گندم ناشی از Septoria trit

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

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

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


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

فرمت فایل : word(قابل ویرایش)تعداد صفحات:104

 

در این تحقیق ما به تکنیک‌های بکار رفته توسط DMBS برای پردازش، بهینه‌سازی و اجرای پرس و جوهای سطح بالا می‌پردازیم.

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

نکته مهم : برای استفاده از متن کامل تحقیق یا مقاله می توانید فایل ارجینال آن را از پایین صفحه دانلود کنید. سایت ما حاوی تعداد بسیار زیادی مقاله و تحقیق دانشگاهی در رشته های مختلف است که می توانید آن ها را به رایگان دانلود کنید

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

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

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

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

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

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

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

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

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

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

۱۸۰۲- الگاریتم های انسانی برای اجرای عملیاتهای پرس و جو:

RDBMS شامل الگاریتم‌هایی برای اجرای انواع مختلف عملیاتهای رابطه‌‌ای است که می‌توانند در استراتژی اجرای پرس و جو نمایان شوند، این عملیات‌ها شامل عملیاتهای جبری بیسیک (اصلی) و توسعه یافته مورد بحث در فصل ۷ ، و در بسیاری موارد، الحاقاتی از این عملیات‌ها می‌باشد. برای هر یک از این عملیات ها یا الحاقی از عملیات‌ها، یک یا چند الگاریتم برای اجرای عملیات‌ها در دسترس قرار دارند. الگاریتم ممکن است فقط برای ساختارهای ذخیره خاص مسیرهای دستیابی بکار روند، در اینصورت ،‌ تنها در صورتی استفاده می‌شود که فایل های موجود در عملیات شامل این مسیرهای دستیابی هستند. در این بخش، ما به الگاریتم‌های نمونه بکار رفته برای اجرای SEKECT ، JOIN و دیگر عملیاتهای رابطه‌ای می‌پردازیم. ما بحث مرتب کردن خارجی را در بخش ۱۸۰۲۰۱ آغاز می‌کنیم که در قلب عملیاتهای رابطه‌ای قرار دارد که از استراتژیهای ادغام کردن به مرتب کردن استفاده می‌کند. بعد ما به الگاریتم‌هایی برای اجرای عملیات SELECT در بخش ۱۸۰۲۰۲ می‌پردازیم،‌ به عملیات ‌JOIN در بخش ۱۸۰۲۰۳ و عملیات PRIJECT و عملیاتهای مجموعه در بخش IE 1802 و عملیات‌های گروهی و جمعی در بخش ۲ .۲ . ۱۸ می‌پردازیم.

۱٫ ۲٫ ۱۸- مرتب کردن خارجی:

مرتب کردن، یکی از الگاریتم‌های اولیه بکار رفته در پردازش پرس و جو است. برای مثال، ‌به هر وقت پرس و جوی SQL ، بعد ORDER BY را تعیین می‌کند، نتیجه پرس و جو باید مرتب گردد. مرتب کردن، مؤلفه کلیدی در الگاریتم‌های مرتب کردن- ادغام کردن (مرتب-ادغام) بکار رفته برای Join و عملیاتهای دیگر، دور الگاریتم‌های حذف کپی برای عملیات PROYECT است. ما روی بعضی از این الگاریتم‌ها در بخش‌ ۳٫ ۲٫ ۱۸ و ۴٫ ۰۲ ۱۸ بحث خواهیم کرد. توجه کنید که مرتب کردن در صورتی که اجتناب می‌شود که شاخص مناسب برای امکان دسترسی مرتب شده به ثبت‌ها وجود دارد.

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

در مرحله مرتب کردن، اجراهای فایلی که می‌تواند در فضای باز موجود تناسب یابد در حافظه اصلی خوانده می‌شوند و با استفاده از الگاریتم مرتب کردن داخلی مرتب می‌شود عقب دیسک بعنوان فایل‌های فرعی مرتب شده متوفی نوشته می‌شود. اندازه اجرا و تعداد اجراهای آغازین توسط تعداد بلوکهای فایل (b) و فضای بافر موجود (NB) بیان می‌شود. برای مثال اگر بلوکو اندازه قایل ۱۰۲۴=b بلوک باشد،‌ بعد یا ۲۰۵ اجرای آغازین در هر اندازه ۵ بلوک است. از اینرو، بعد از مرحله مرتب کردن، ۲۰۵ اجرای مرتب شده بعنوان فایل‌های فرعی موقتی روی دیسک ذخیره می‌شوند. اجرای مرتب شده بعنوان فایل‌های فرعی موقتی و روی دیسک ذخیره می‌شوند.

در مرحله ادغام شدن، اجراهای مرتب شده،‌ در طول یک یا چند گذر ادغام می‌‌شوند. درجه ادغام شدن تعداد اجراهایی است که می‌توانند با همدیگر در هر گذر ادغام شوند. در هر گذر، یک بلوک بافر، برای حفظ یک بلوک از هر اجرای ادغام شده نیاز می‌باشد، و یک بلوک برای تشکیل یک بلوک نتیجه ادغام لازم است . از اینرو،‌ کوچکتر از و است و تعداد گذرها، است. در مثالها، است. لذا،‌ ۲۰۵ اجرای مرتب شده آغازین در ۲۵ تا در پایان اولیه گذر ادغام می‌شود: که بعد به ۱۲، بعد ۴ بعد یک اجرا ادغام می‌شوند، که بدین معنی است که چهارگذر لازم می‌باشد. حداقل از ۲،‌ عملکرد بدترین مورد الگاریتم را ارائه می‌دهد که بدین قرار است:

اولین جمله، تعداد دسترسی‌های بلوک برای مرحله مرتب سازی را نشان می‌دهد، چون هر بلوک فایل دو برابر دسترسی می‌شود، یکبار برای خواندن در حافظه،‌ یکبار برای نوشتن ثبت‌ها دیسک بعد از مرتب کردن. دومین جمله، تعداد دسترسی‌های بلوک برای مرحله ادغام کردن را نشان می‌دهد، با فرض اینکه بدترین مورد از ۲ وجود دارد. بطور کلی، ثبت وقایع در مبنای و عبارت برای تعداد دسترسی‌های بلوک نوین قرار می‌شود:

تصویر ۱۸۰۲- شرح الگاریتم ادغام – مرتب کردن برای مرتب کردن خارجی:

۲٫ ۲٫ ۱۸- اجرا و پیاده‌سازی عملیات SELECT :

تعداد Option‌هایی ( انتخاب‌ها) برای اجرای عملیات SELECT وجود دارد، که بعضی به فایل دارای مسیرهای دستیابی خاص بستگی دارند و تنها برای انواع معین شرایط انتخاب بکار می‌رود. ما به الگاریتم‌هایی جهت اجرای SELECT در این بخش می‌پردازیم. ما از عملیاتهای زیر استفاده می‌کنیم که روی پایگاه اطلاعاتی رابطه‌ای در تصویر ۵۰۷ مشخص شده و بحث ما را روشن می‌سازد:

متدهای جستجو برای انتخاب ساده:

تعدادی الگاریتم های جستجو برای انتخاب ثبت‌ها از فایل امکان‌پذیر می‌باشند،‌ چون ثبت‌‌های فایل نامیده می شوند، چون ثبت‌‌های فایل را برای جستجو و بازیابی ثبت‌هایی که شرایط انتخاب را برآورده می‌سازند، پویش می‌کنند. اگر الگاریتم جستجو شامل کاربرد شاخص باشد،‌ جستحوی شاخص پویش شاخص نامیده می‌شد. متدهای جستجوی زیر ( ۱S تا s6 ) مثالهایی از الگاریتم‌های جستجو هستند که می‌توانند برای اجرای عملیات انتخاب بکار روند:

  • s1 : جستجوی خطی (روش برنامه‌سازی پر قدرت): بازیابی هر ثبت در فایل، و تست اینکه آیا مقادیر ویژگی آن،‌ شرط انتخاب را براورده می‌سازد یا خیر.
  • S2: جستجوی بنیادی (دودویی):‌ اگر شرط انخاب شامل قیاس تساوی روی ویژگی کلیدی باشد که روی آن فایل مرتب می‌شود، جستجوی بنیادی، که نسبت به جستجوی خطی کارآمدتر است، می‌تواند بکار رود. مثال OP1 است چنانچه ssn ، ‌ویژگی کلیدی با شاخص اولیه‌( یا کلید hash) باشد،‌ برای مثال، SNN-‘۱۲۳۴۵۶۷۸۹’ در opt، شاخص اولیه یا کلید hosh) برای بازیابی ثبت استفاده می‌شود، توجه کنید که این شرط، ثبت تکی را بازیابی می‌کند.
  • S4: کاربرد شاخص اولیه برای بازیابی ثبت‌های متعدد: اگر شرط انتخاب شدن قیاس تساوی روی ویژگی غیر کلیدی با شاخص خدشه‌سازی باشد،‌ برای مثال در ، شاخص را برای بازیابی کل ثبت‌ها در برآورده ساختن شرط،‌ استفاده کنید.
  • S6: بکارگیری شاخص ثانویه (درخت ) روی قیاس تساوی: این متد جستجو می‌تواند برای بازیابی ثبت تکی بکار رود چنانچه فیلد نمایه‌سازی (شاخص‌سازی) کلید باشد یا برای بازیابی ثبت‌های متعدد بکار می‌رود چنانچه فیلد شاخص‌سازی کلید نباشد،‌ این می‌تواند برای مقایساتی شامل یا بکار رود. در بخش ۳٫ ۴٫ ۱۸، ما به چگونگی توسعه فرمول‌هایی می‌پردازیم که هزینه‌دستیابی این متدهای جستجو را در اصطلاحات تعداد دستیابی‌های بلوک و زمان دستیابی برآورد می‌کند. Method S!برای هر فایلی استفاده می‌شود ولی تمام متدهای دیگر به داشتن مسیر دستیابی مناسب روی ویژگی‌بکار رفته در شرط انتخاب بستگی دارند. متدهای S4 و ۶،‌ می‌توانند برای بازیابی ثبت‌ها در دامنه معین بکار روند برای مثال پرس و جوها شامل این شرط‌ها، پرس وجوهای دامنه نیامد به می‌شوند.

دانلود با لینک مستقیم


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