در دومين مرحله بنام مرحله آزمايش، گذر تكي از طريق فايل ديگر (S) هر يك از ثبت هاي خود را براي آزمايش مخزن مناسب hash مي كند و آن ثبت با تمام ثبت هاي تطبيق پذير و برابر از R در آن مخزن تركيب مي گردد. اين توصيف ساده شده از اتصال hash ،‌فرض مي كند كه دو فايل كوچكتر كاملاً در مخازن حافظه بعد از اولين مرحله تناسب مي يابند. ما روي تغييرات اتصال – hash بحث مي كنيم كه به اين فرضيه زير نيازي ندارد.

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

در محل، تكنيك هاي J1 تا J4 ،‌با دسترسي به كل بلوكهاي ديسك فايل بغير از ثبت هاي اختصاصي اجرا مي شوند. بسته به فضاي بافر موجود در حافظه ،‌تعداد بلوكهاي خوانده شده از فايل مي تواند تنظيم گردند.

اثرات فضاي بافر موجود و عامل انتخاب اتصال روي عملكرد اتصال: فضاي بافر موجود، اثر مهمي روي الگاريتم هاي گوناگون اتصال دارد. آغاز ، روش حلقه تو در تو را در نظر بگيريد (J1) . دوباره به عمليات OP6 فوق توجه كنيد، فرض كنيد كه تعداد بافرهاي موجود در حافظه اصلي براي اجراي اتصال بلوك می باشد. براي مثال ، فرض كنيد كه فايل DEPARTMENT شامل بلوك ديسك می باشد و فايل Employee شامل ثبت ذخيره شده در بلوك ديسك می باشد. اين مزيتي در خواندن بلوك هاي بسيار در حد ممكن در حافظه از فايلي می باشد كه ثبت هاي آن براي حلقه بيروني بهره گیری مي شوند. بعد الگاريتم مي تواند يك بلوك را در زمان براي فايل حلقه دروني بخواند و از ثبت هاي خود براي آزمايش بلوكهاي حلقه بيروني در حافظه براي برابري ثبت ها بهره گیری كند. اين ، كل تعداد دستيابي هاي بلوك را كاهش مي دهد. بلوك بافر اضافي براي شامل شدن ثبت هاي حاصله بعد از اينكه بهم متصل مي شوند، لازم می باشد و فهرست و محتويات اين بلوك بافر در فايل نتيجه ضميمه مي شوند، فايل ديسكي كه شامل نتيجه اتصال می باشد، هر زماني كه آن بايگاني مي گردد. اين بلوك بافر براي حفظ ثبت هاي نتيجه اضافي مجدداً بهره گیری مي گردد.

در اتصال حلقه تودرتو آن تفاوتي را ايجاد مي كند كه كدام فايل براي حلقه بيروني انتخاب گردد و كداميك براي حلقه دروني انتخاب گردد. اگر Employee براي حلقه بيروني بكار رود، هر بلوك Employee يكبار خوانده مي گردد، كه بدين قرار می باشد: كل تعداد بلوكهاي دستيابي شده براي فايل بيروني = b­E

تعداد دفعات بلوك فايل خروجي بارگيري مي شوند =

كل تعداد بلوكهاي دستيابي شده براي فايل دروني =

از اينرو، ما كل تعداد دستيابي هاي بلوك زير را بدست مي آوريم:

بعبارت ديگر، اگر ما از ثبت هاي DEPARTMENT در حلقه بيروني بهره گیری كنيم، با تقارن ، كل تعداد دستيابي هاي بلوك زير را بدست مي آوريم:

الگاريتم اتصالي از بافر براي حفظ ثبت هاي متصل شده در فايل نتيجه بهره گیری مي كند. وقتي بافر بايگاني مي گردد، آن در ديسك نوشته مي گردد و مجدداً بهره گیری مي گردد. اگر فايل نتيجه عمليات اتصال، بلوك ديسك داشته باشد، هر بلوك يكبار نوشته مي گردد، لذا ، دستيابي بلوك اضافي بايد به فرمول هاي قبلي، به م نظور برآورد كل هزينه عمليات اتصال، افزوده گردد. كنترل هاي يكساني براي فرمول ها بعداً براي الگاريتم هاي اتصال ديگر توسعه يافت. همانطوريكه اين مثال نشان مي دهد، آن مزيتي براي بهره گیری فايل با بلوكهاي كمتر بعنوان فايل حلقه بيروني در اتصال حلقه تودرتو می باشد.

عامل ديگري كه روي عملكرد اتصال اثر مي گذارد ، بويژه متد حلقه تكي J2 ، درصد ثبت ها در فايلي می باشد كه با ثبت ها در فايل ديگر متصل مي گردد. ما اينرا فاكتور انتخاب اتصال فايل با در نظر داشتن شرط اتصال مساوي با فايل ديگر مي ناميم. اين فاكتور به شرط اتصال مساوي ويژه بين دوفايل بستگي دارد. براي نشان دادن اين ، عمليات op7 را در نظر بگيريد، كه هر ثبت DEPARTMENT را با ثبت Employee براي مدير آن دپارتمان متصل مي كند. در اينجا، هر ثبت DEPARTMENT انتظار مي رود با ثبت تكي employee متصل شده، ولي بسياري از ثبت هاي Employee متصل نخواهند گردید. فرض كنيد كه شاخص هاي ثانويه در هر دو ويژگي هاي SSN از Employee و MGRSSN از OEPARTMENT ، با تعداد سطوح شاخص4 = XSSN و 2XMGRSSN = هست. ما درو انتخاب براي اجحراي متد J2 داريم. اولي هر ثبت Empyzb را بازيابي مي كند و بعد از شاخص روي MGRSSN از DEPARTMGNT براي يافتن ثبت تطبيق پذيري DEPARTMGNT براي يافتن ثبت تطبيق پذيري DEPARTMGNT بهره گیری مي كند. در اين مورد، هيچ ثبت تطبيق پذيري براي كارمنداني كه بر دپارتمان مديريت نمي كنند، نظاره نمي گردد. تعداد دستيابي هاي بلوك براي اين مورد تقريباً بدين قرار می باشد:

دومين انتخاب هر ثبت DEPARTMGNT را بازاريابي مي كند و بعد از شاخص روي EMPLOYEE براي يافتن ثبت EMPLOYEE مير تطبيق پذيري بهره گیری مي كند. در اين خصوص، هر ثبت DEPARTMGNT، يك ثبت تطبيق پذيري Empoyee دارد. تعداد دستيابي هاي بلوك براي اين مورد، بدين قرار ميشود:

دومين انتخاب كارآمدتر می باشد زیرا فاكتور انتخاب اتصال DEPARTMGNT با در نظر داشتن شرط اتصال SSN=MGRSSN ، يك می باشد، در عوض فاكتور انتخاب اتصال Employee با در نظر داشتن همان شرط اتصال يكسان (S0/S000) يا 01/0 می باشد. براي متد J2 ، يا فايل كوچكتر از فايلي كه براي هر ثبت تطبيق و برابري دارد، بايد در حلقه اتصال (بيروني) بهره گیری گردد. اين براي ايجاد شاخص براي اجراي عمليات اتصال امكان پذير می باشد اگر يك وجود نداشته باشد. اتصال ادغام – مرتب كردن J3، كاملاً كارآمد می باشد چنانچه هر دو فايل توسط ويژگي اتصال خود مرتب شوند. فقط گذر تكي از طريق هر فايل ايجاد مي گردد. از اينرو تعداد بلوكهاي دستيابي شده، ؟؟ با مجموع تعداد بلوك ها در هر دو فايل می باشد. براي اين متد، هر دو op7, op6 به دستيابي هاي بلوك نياز دارند. بهر حال، هر دو فايل به مرتب شدن توسط ويژگي هاي اتصال نياز دارند، اگر يكي يا هر دو اينطور نباشند، آنها ممكن می باشد براي اجراي عمليات اتصال مرتب شوند. اگر هزينه مرتب كردن فايل خارجي را با (blog2b) دستيابي بلوك برآورد كنيم و اگر هر دو فايل نياز به مرتب شدن داشته باشند، كل هزينه اتصال ادغام – مرتب كردن مي تواند توسط برآورد گردد.

اتصال hash پارتيشن و اتصال hash دو رگه :‌متد اتصال hash ، J4 نيز كاملاً متفاوت می باشد. در اين مورد ، فقط گذر تكي از طريق هر فايل صورت مي گيرد، خواه فايل ها مرتب باشند يا مرتب نباشند. اگر جدول hash براي كوچكتر از دو فايل در حافظه اصلي بتواند بعد از hashing روي ويژگي اتصال آن حفظ گردد، اجرا بسادگي صورت مي گيرد. بهر حال اگر بخشهايي از فايل hash روي ديسك ذخيره شوند، متد پيچيده تر مي گردد، و تعدادي تغييرات براي بهبود كارآيي پيشنهاد شده می باشد. ما روي دو تكنيك بحث مي كنيم: اتصال hash پارتيشن ، و تغييراتي بنام اتصال hash دو رگه ، كه كاملاً كارآمد نشان داده شده می باشد.

شما می توانید مطالب مشابه این مطلب را با جستجو در همین سایت بخوانید                     

در الگاريتم اتصال hash پارتيشن ، هر فايلي آغاز به M پارتيشن با بهره گیری از تابع hash تقسيم كردن، روي ويژگيهاي اتصال، تقسيم مي گردد. بعد هر جفت پارتيشن ها متصل مي شوند. براي مثال ، فرض كنيد ارتباط هاي S,R را روي ويژگيهاي اتصال S.B , R.A متصل مي كنيم:

شما می توانید تکه های دیگری از این مطلب را در شماره بندی انتهای صفحه بخوانید              

دیدگاهتان را بنویسید