Loading...

پاورپوینت روش Hashing قابل توسعه

پاورپوینت روش Hashing قابل توسعه (pptx) 14 اسلاید


دسته بندی : پاورپوینت

نوع فایل : PowerPoint (.pptx) ( قابل ویرایش و آماده پرینت )

تعداد اسلاید: 14 اسلاید

قسمتی از متن PowerPoint (.pptx) :

Lecture 19 Extendible Hashing, tries (Sections 12.1-12.4) File Structure روش Hashing قابل توسعه مشکلات روش Hashing با فضای ثابت (Static) چيست؟ انواع روشهاي ديگر Hashing کدامند؟ روش Hashing با فضای قابل توسعه (Extendible) چيست؟ روش Hashing با فضای پويا (Dynamic) چيست؟ روش Hashing با توسعه خطي (Linear) چيست؟ File Structure روش Hashing با فضای قابل توسعه مشکلات روش Hashing با فضای ثابت (Static) چيست؟ فضاي ايجاد شده در آغاز ممکن است بسيار بيش ازحد نياز باشد. (چرا؟) ممکن است مرتبا نياز به تجديد ساختار داشته باشد. (چرا؟) در مقايسه با B-tree برای فايل های داده پويا (Dynamic) مناسب نميباشد. تعداد زياد عمليات حذف و اضافه کليدها باعث پايين آمدن راندمان ميشود. (چرا؟) روش Hashing با فضای قابل توسعه (Extendible) چيست؟ در اين روش فضاي رزرو شده برحسب نياز بزرگتر يا کوچکتر ميشود. تعداد زياد عمليات حذف و اضافه کليدها باعث پايين آمدن راندمان نمي شود. (چرا؟) برای فايل های داده پويا (Dynamic) مناسب تر ميباشد. (درمقايسه با؟) File Structure روش Hashing با فضای قابل توسعه ساختار Hashing با فضای قابل توسعه چگونه است؟ ترکيبي از روش Hashing با ساختاري به نام Trie ميباشد. کليدها در تعدادي Bucket قرار مي گيرند. Bucketها به صورت اجزاء مستقل از يکديگر روي فضاي موجود ديسکها رزرو شده اند. کليدهايي که آدرس Hash آنها Prefix مشترکي داشته باشد در يک Bucket قرار مي گيرند. File Structure ساختار Trie ساختار Trie چيست؟ نوعي ساختار درختواره ای که براي دسته بندی کليدها استفاده ميشود. اين ساختار را به نام Radix Searching نيز مي شناسند. شکل زير يک ساختار Trie موسوم به Radix 26 را نشان ميدهد. در اين مثال هر نود بر مبناي يکي از حروف Prefix کليد، آنرا به يکي از 26 شاخه زيرين خود تخصيص ميدهد. (شکل 12.1 در صفحه 526) Prof. Hyoung-Joo Kim, Comp Eng, Seoul National Univ. File Structure ساختار Trie ساختار Trie چيست؟ شکل زير نيز يک نوع ساختار Trie به نام Radix 10 را نشان ميدهد. در اين مثال هر نود بر مبناي يکي از ارقام Prefix کليد، آنرا به يکي از ده شاخه زيرين خود تخصيص مي دهد. File Structure روش استفاده از ساختار Trie در Hashing چگونه از ساختار Trie در Hashing استفاده ميشود؟ در روش Hashing از نوعي ساختار Trie به نام Radix 2 استفاده مي کنيم. در اين ساختار، هر نود بر مبناي يکي از بيتهاي Prefix کليد ، آنرا به يکي از دو شاخه زيرين خود تخصيص مي دهد. مثال: شکل زير نمونه ای از اين ساختار را نشان مي دهد. Bucket A شامل کليدهايي خواهد بود که دو بيت اول کليد Hash آنها 00 يا 01 باشد. Bucket B شامل کليدهايي خواهد بود که دو بيت اول کليد Hash آنها 10 باشد. Bucket C شامل کليدهايي خواهد بود که دو بيت اول کليد Hash آنها 11 باشد. (شکل 12.3 در صفحه 527) File Structure نگهداري ساختار Trie روي ديسک روش نگهداري يک ساختار Trie روي ديسک چگونه است؟ هنگاميکه حجم داده ها بالا برود و فضاي RAM برای کليه نودها کافي نباشد، بايستي بتوان به هريک از نودهاي اين ساختار مستقيما روي ديسک دسترسي پيدا نمود. دراينصورت مسائلي مشابه با ساختارهاي B-Tree دوباره مطرح مي گردند و مکانيزم Hashing مزيت خود را در مقابل B-Tree از دست ميدهد. (شکل 12.3 در صفحه 527) File Structure نگهداري ساختار Trie روي ديسک تبديل يک ساختار Trie به Directory چگونه است؟ براي حفظ مزيتهاي مکانيزم Hashing لازم است که ساختار درختواره اي Trie را به يک ساختار مسطح و يکپارچه تبديل کنيم. در اين صورت کافيست که ساختار Trie را بسط داده تا يک Binary Tree کامل بدست آوريم و سپس آنرا بصورت يک Array پياده سازي نماييم. اين ساختار جديد (Array) بعنوان يک Directory که به Bucketهاي مختلف اشاره ميکند استفاده خواهد شد. (شکل 12.4 در صفحه 527)

نظرات کاربران

نظرتان را ارسال کنید

captcha

فایل های دیگر این دسته