Ключова разлика: В компютрите, двоичните дървета са дървови структури от данни, които съхраняват данните и позволяват на потребителя достъп, търсене, вмъкване и изтриване на данните в алгоритмичното време. Разликата между B и B + дървото е, че в B-дърво ключовете и данните могат да се съхраняват както в вътрешните, така и в листовите възли, докато в B + дървото данните и ключовете могат да се съхраняват само в листовите възли.,
Двоичните дървета са балансирани дървета за търсене, които са проектирани да работят добре на вторични устройства за съхранение с директен достъп като магнитни дискове. Рудолф Байер и Ед Маккрейт изобретяват концепцията за В-дърво.
B-дървото е обобщено двоично дърво за търсене, в което всеки възел може да има повече от две деца. Всеки вътрешен възел в B-дърво съдържа няколко клавиша. Тези клавиши отделят стойностите и допълнително формират под-дърветата. Вътрешните възли в B-дърво могат да имат променлив брой на детските възли, които са подредени в предварително зададен диапазон. В момента, когато всички данни се вмъкват или премахват от съответния възел, има промяна в броя на детските възли. За да се поддържа предварително дефинирания обхват, вътрешните възли могат да бъдат свързани или разделени. В B-дърво е позволен набор от детски възли, поради което трябва да се поддържа предварително дефинираният диапазон.
B-дърветата не трябва да се ребалансират често за разлика от други самобалансиращи се дървета за търсене. Възлите на тези дървета не винаги са пълни; следователно пространствата се консумират ненужно в тези дървета, което води до загуба на пространство. Само долната и горната граница на броя на детските възли обикновено са фиксирани за конкретна реализация. Например, в 2-3 B-дърво (често просто наричано 2-3 дърво), всеки вътрешен възел може да има само 2 или 3 детски възли.
Освен това, B-дървото е оптимизирано за системи, които четат и пишат големи блокове данни. Обикновено се използва в бази данни и файлови системи. В дървото B всички възли се съхраняват на една и съща дълбочина на балансиране от коренните възли. Тези дълбочини нарастват бавно с увеличаване броя на елементите; това води до това, че всички листови възли са още един възел по-далеч от корена. Освен това, B-дърветата са по-изгодни в сравнение с други реализации по отношение на времето за достъп до данните.
Дърво B + е дърво с n-масив с възел, който се състои от голям брой деца на възел. Коренът може да бъде лист или възел, който съдържа повече от две деца. Едно дърво B + се състои от корен, вътрешни възли и листа.
B + дърво е същото като B дърво; единствената разлика е, че в дървото В + се добавя допълнително ниво на дъното с свързани листа. Също така, за разлика от B дървото, всеки възел в B + дърво съдържа само ключове, а не двойки ключ-стойност.
Освен това, балансиращият фактор или реда на B + дърво измерва капацитета на вътрешните възли в едно дърво, т.е. броят на възлите, които те могат да имат. Действителният брой деца за възел е ограничен за вътрешни възли. Коренът обаче е изключение, тъй като е позволено да има повече от двама деца. Например, ако редът на B + дърво е 7, всеки вътрешен възел (с изключение на корена) може да има между 4 и 7 деца; докато коренът може да има между 2 и 7. Основната стойност на B + дървото е в съхранението на данни за ефективно извличане в блоково-ориентирания контекст на съхранение и по-специално в файловите системи.
Основната стойност на B + дървото е в съхранението и поддържането на данните, така че данните да не бъдат загубени. Този подход се прилага особено в блоково-ориентирания контекст на съхранение и в някои конкретни файлови системи. Листата, които са най-долните блокове на индекса на B + дървото, често са свързани помежду си в свързан списък; следователно това прави заявките за обхвата или подредената итерация по блоковете по-прости и по-ефективни. Нещо повече, космическият фактор не се губи в B + дървета. Дървото B + осигурява ефективен формат на структурата на данните за жилищата, което ги прави лесни при достъпа и съхраняването. B + дърветата са особено полезни като системен индекс на база данни, където данните обикновено се намират на диск.
Сравнение между дърво B и дърво B +:
Дърво | B + Дърво | |
Кратко описание на мрежата | AB дървото е организационна структура за съхранение и извличане на информация под формата на дърво, в което всички терминални възли са на едно и също разстояние от базата, а всички нетерминални възли имат между n и 2 n под-дървета или указатели (където n е цяло число). | B + tree е n-масив с променлива, но често голям брой деца на възел. Едно дърво B + се състои от корен, вътрешни възли и листа. Коренът може да бъде или лист, или възел с две или повече деца. |
Също известен като | Балансирано дърво. | Б плюс дърво. |
пространство | О (п) | О (п) |
Търсене | O (log n) | O (log b n) |
Insert | O (log n) | O (log b n) |
Изтрий | O (log n) | O (log b n) |
съхранение | В дърво B, ключовете за търсене и данните, съхранявани във вътрешни или листови възли. | В B + дърво данните се съхраняват само в листови възли. |
Данни | Листните възли на трите съхраняват указатели към записи, а не върху реални записи. | Листовите възли на дървото съхраняват действителния запис, а не указателите към записите. |
пространство | Тези дървета отпадъци пространство | Там дървета не губят място. |
Функция на листовите възли | В B дървото, листовия възел не може да съхранява използването на свързан списък. | В B + дървото данните от листовия възел се подреждат в последователен свързан списък. |
търсене | Тук търсенето става трудно в B-tree, тъй като данните не могат да бъдат намерени в листовия възел. | Тук търсенето на данни в B + дърво е много лесно, тъй като всички данни се намират в листовите възли. |
Търсене на достъпност | Тук в B дървото търсенето не е толкова лесно в сравнение с B + дърво. | Тук в B + дървото търсенето става лесно. |
Резервен ключ | Те не съхраняват излишен ключ за търсене. | Те съхраняват излишен ключ за търсене. |
Приложения | Те са по-стара версия и не са толкова изгодни в сравнение с дърветата B +. | Много изпълнители на системи за бази данни предпочитат структурната простота на дърво B +. |