1 / 13

Lecture 16 More on B+Trees: Maintenance, Loading, Perspectives (Sections 10.6 -10.11)

In the Name of God. Lecture 16 More on B+Trees: Maintenance, Loading, Perspectives (Sections 10.6 -10.11). More on B+Trees. نگاهدار ي يک ايندکس Simple Prefix B+tree چگونه است؟ شرايط انتخاب اندازه هر بلوک Index Set چگونه است؟ ساختاريک ايندکس Variable-Order B+tree چگونه است؟

khan
Download Presentation

Lecture 16 More on B+Trees: Maintenance, Loading, Perspectives (Sections 10.6 -10.11)

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. In the Name of God Lecture 16More on B+Trees:Maintenance, Loading, Perspectives(Sections 10.6 -10.11)

  2. More on B+Trees نگاهداري يک ايندکس SimplePrefixB+tree چگونه است؟ شرايط انتخاب اندازه هر بلوکIndex Setچگونه است؟ ساختاريک ايندکس Variable-Order B+tree چگونه است؟ مزايا و معايب Variable Order B+Tree کدامند؟ روش بهينه ايجاد ( loading) يک B+Tree چگونه است؟ خواص مشترک انواع B-Tree و B+Tree کدامند؟

  3. Simple Prefix B+Tree E E Index set BO CAM F FOLKS BO CAM F FOLKS ADAMS -BERNE BOLEN -CAGE CAMP -DUTTON EMBRY -EVANS FABER -FOLK FOLKS -GADDIS ADAMS -BERNE BOLEN -CAGE CAMP -DUTTON ERVIN -EVANS FABER -FOLK FROST -GADDIS 1 2 3 4 5 6 1 2 3 4 5 6 نگاهداري يک ايندکس SimplePrefixB+tree چگونه است؟ مثال (1):حذف رکوردها: (صفحه 436 کتاب شکل 8- 10) Deletion of the EMBRY and FOLKS from the sequence set leaves the index setunchanged. Prof. Hyoung-Joo Kim, Comp Eng, Seoul National Univ

  4. Simple Prefix B+Tree BO E E BO CAM F FOLKS AY CAM F FOLKS ADAMS -AVERY ADAMS -BERNE AYERS -BERNE BOLEN -CAGE BOLEN -CAGE CAMP -DUTTON CAMP -DUTTON ERVIN -EVANS ERVIN -EVANS FABER -FOLK FABER -FOLK FROST -GADDIS FROST -GADDIS 1 1 7 2 2 3 3 4 4 5 5 6 6 نگاهداري يک ايندکس SimplePrefixB+tree چگونه است؟ مثال (2):شکستن بلوکها: (صفحه 437 کتاب شکل 9- 10) An insertion into block 1 causes a split, the consequent addition of block 7 and the index set changes. Prof. Hyoung-Joo Kim, Comp Eng, Seoul National Univ

  5. Simple Prefix B+Tree BO E E AY AY BO CAM F FOLKS F FOLKS ADAMS -AVERY ADAMS -AVERY AYERS -BERNE BOLEN -DUTTON ERVIN -EVANS FABER -FOLK FROST -GADDIS AYERS -BERNE BOLEN -CAGE CAMP -DUTTON ERVIN -EVANS FABER -FOLK FROST -GADDIS 1 7 2 4 5 6 3 1 7 2 4 5 6 نگاهداري يک ايندکس SimplePrefixB+tree چگونه است؟ مثال (3):ادغام بلوکها: (صفحه 438 کتاب شکل 10- 10) Adeletionfromblock 2causes Underflow, the consequent mergeof blocks2 and 3 and the index set changes. Prof. Hyoung-Joo Kim, Comp Eng, Seoul National Univ

  6. انتخاب اندازه بلوکهاي Index Set شرايط انتخاب اندازه هر بلوکIndex Setچگونه است؟ چرا بهتر است که اندازه بلوکهايindex setبرابر با اندازه بلوکهايsequence setباشد؟ • انتخاب اندازه بلوکهاي sequence set با در نظر گرفتن عواملي بوده است مثل: • ظرفيت حافظه RAM و • مشخصات مربوط به ديسک ها. • استفاده از بافرهاي مشترک براي نگهداري بلوکها در حافظه (Caching) ساده تر ميشود.(چرا؟) • بلوکهاي ايندکس و داده مي توانند در يک فايل ذخيره شده و به يکديگر نزديکتر باشند.(چرا؟)

  7. separators As, Ba, Bro, C, Ch, Cra, Dele, Edi, Err, Fa, File AsBaBroCChCraDeleEdiErrFaFile 00 02 04 07 08 10 13 17 20 23 25 Variable-lengthseparators and corresponding index Variable-Order B+Tree ساختاريک ايندکس Variable-Order B+tree چگونه است؟ نوعي B+Tree که در آن: • ظرفيت (order) نودهاي ايندکس متغير ميباشد و • اطلاعات موجود در اين نودها حتي الامکان فشرده شده ميباشد. مثال: (صفحه 441 کتاب شکل11- 10) Prof. Hyoung-Joo Kim, Comp Eng, Seoul National Univ

  8. Separator count Total length of separators 11 28 AsBaBroCChCraDeleEdiErrFaFile 00 02 04 07 08 10 13 17 20 23 25 B00 B01 ..... B10 B11 Relative block numbers Separators Index to separators Structure of an index set block Variable-Order B+Tree ساختاريک ايندکس Variable-Order B+tree چگونه است؟ در اين ساختار: • فضاي موجود براي نگهداري separator ها بطور کامل استفاده شده است. • ايندکس مربوط به separator ها امکان جستجوي دودويي را ميدهد. • بلوکها بوسيله (Relative Block Number) بطور مستقيم قابلآدرس دهي هستند. مثال: (صفحه 442 کتاب شکل12 - 10) Prof. Hyoung-Joo Kim, Comp Eng, Seoul National Univ

  9. Variable-Order B+Tree ساختاريک ايندکس Variable-Order B+tree چگونه است؟ مثال: (صفحه 445 کتاب شکل 10.15 )

  10. Variable-Order B+Tree مزايايVariable Order B+Tree کدامند؟ • درجه يا order ايندکس به ماکزيمم ممکن ( با توجه به اندازه بلوک ) رسيدهو • عمق درخت ( depth ) به مينيمم ممکن خود ميرسد و • بنابراين در تعداد I/Oصرفه جويي ميشود. ( seek ) معايب Variable Order B+Tree کدامند؟ • تشخيص اينکه چه زماني يک بلوک به ظرفيت مينيمم يا ماکزيمم خود رسيده مشکل ميباشد. • اعمال مربوط به تجزيه،ادغام و توزيع مجدد کليدها در گره هاي مختلف مشکل تر خواهندبود.

  11. Loading a B+Tree روش بهينه ايجاد ( loading) يک B+Tree چگونه است؟ براي تبديل يک فايل بزرگ به B+Tree بهتر است که: • از روش معمولي ايجاد رکورد ها به طور randomاستفاده نشود، • چون عملي بسيار طولاني و سنگين خواهد بود.(چرا؟) روش بهتر اين خواهد بود که : • ابتدا، رکوردهاي فايل مرتب شوند ( sort ) • سپس،رکوردهاي متوالي که مي توانند در هر بلوک قرار بگيرند دسته بندي شده و بطور يکجانوشته شوند. (يعني با يک I/O براي هر بلوک داده ) • در ضمن separator هاي بلوک هاي متوالي به مرور جمع آوري شده و در حافظه نگهداري شوند و هر نود ايندکس پس از تکميل ظرفيت بطوريکجا نوشته شود. (يعني با يک I/O براي هر نود ايندکس )

  12. Loading a B+Tree مزاياي اين روش loading چيست؟ • نوشتن بلوک ها بصورت سري (sequential ) انجام ميشود. • فقط يک بار احتياج به خواندن داده ها ( و فقط داده ها ) ميباشد. • احتياجي به تجزيه،ادغام و توزيع مجدد کليدها در بلوک هاي مختلف نميباشد. • درجه استفاده از ظرفيت بلوک ها (order) براحتي قابل کنترل است ودر صورت لزوم ميتواند حتي %100نيز تعيين شود. • بلوک ها از نظر فيزيکي نيز مجاوريکديگر قرار مي گيرند و • زمان seek هنگام استفاده مجدد کوتاه تر خواهد بود.

  13. خواص انواع B-Tree و B+Tree خواص مشترک انواع B-Tree و B+Tree کدامند؟ • همه از روش paged indexاستفاده ميکنند، در نتيجه: • با هر I/Oبلوک هاي بزرگي از مجموعه کليدها را به حافظه مي آورند، • فرم درختواره آنها broad & shallow يعني وسيع و باعمق (level) کم ميباشد. • عمق آنها متوازن مي باشد. ( Height-Balanced Trees) • به روش Bottom-Up و با اعمال تجزيه،ادغام و توزيع مجدد کليدها رشد ميکنند. • کارآيي آنها با روش هاي تجزيه،ادغام و توزيع مجدد کليدها بين 2 تا 3نودبسيار بهتر ميشود. • کارآيي آنها با روشهاي caching يعني نگهداري تعدادي از بلوک ها در حافظهبهتر ميشود. • قابليت تطبيق با رکوردهاي با طول متغير را دارند.

More Related