Árvore B+
Equipe
João Gabriel
Pericles Narbal
Suzane Souto
Rodrigo Cândido
O que é?
● Consiste numa variante da árvore B
que,como sugere o nome, apresenta
vantagens em relação à estrutura original.
Árvore
● Registro ou Chave.
● A organização das páginas internas ou no
inglês index set é semelhante a de uma árvore
B(chaves, ponteiros e um contador de chaves),
este, por sua vez, armazena cópias de chaves
para referênciar as buscas, mas não contém
as chaves em si.
● No sequence set estão as páginas folha que
contém as chaves inseridas na árvore e
funciona como uma lista encadeada
permitindo o acesso sequencial ordenado às
chaves independente do index set.
Definição
Página Interna
ou
Index Set
● Funcionam como um índice que apenas
apontam para a localização exata de uma
chave e sua construção é semelhante ao de
uma árvore B com número mínimo de chaves
igual a ⌈n/2⌉-1 e máximo de n-1 por página.
● Estão abrigadas todas as chaves inseridas e
durante o processo de inserção e remoção de
chaves, estas podem sofrer overflows ou
underflows conforme estas violem o número
máximo igual a n-1 ou mínimo igual a ⌈n/2⌉-1
permitido de chaves.
Página Folha
ou
Sequence Set
Estrutura
● Todas as folhas aparecem no mesmo
nível.
● Uma página não folha com K filhos
contem K-1 chaves.
Árvore B+ de ordem 3
● Nas árvores B+ os registros completos
são armazenados exclusivamente nas
folhas.
● Os nós não terminais atuam como índices
de acesso aos dados contidos nos nós
terminais.
Características
Resumo
● Uma árvore B+ é uma árvore B em que
os registros de dados são mantidos nos
nós folhas e os nós não terminais
constituem somente chaves que servem
como índices de acesso aos dados.
● Mantém a eficiência da busca e da
inserção da árvore B.
● Aumenta a eficiência da localização do
próximo registro na árvore de O(log2n)
para O(1).
● Não é preciso manter nenhum ponteiro de
registro em nós não-folha.
● As árvores B+ apresentam menor
profundidade que as árvores B com
mesmos dados, pois nas B+ há aumento
do número de entradas mantidas por nó.
Vantagens
Utilização
● Muitos bancos de dados são construídos
usando o mecanismo de árvore B+: SQL
Server e Oracle
● Sistemas de arquivos como o NTFS
para o Microsoft Windows, o sistema de
ficheiros ReiserFS para Unix, o XFS
para IRIX e Linux, e o JFS2 para AIX,
OS/2 e Linux, usam este tipo de árvore.
Busca
● Linear ou Binária
● Pela raiz ou “sequence set”
Inserção
A operação de inserção consiste em 4
passos:
1. Localizar a folha dentro da qual a chave
deve ser inserida;
1. Localizar a posição de inserção dentro
da folha;
1. Inserir a chave;
1. E se, após a inserção, a folha estiver
completa, realizar a cisão (divisão) da
página.
Exclusão
A operação de exclusão consiste em:
1. Localizar a folha onde a chave deverá
ser deletada;
1. Localizar a posição da chave dentro da
folha;
1. Deletar chave;
1. Concatenar ou redistribuir as chaves na
folha; (se a chave aparecer também nos
índices)
Exclusão
Caso 1:
A chave aparece em apenas um nó.
A chave é simplesmente excluída e a folha é
reorganizada.
No caso do nó ficar com menos chaves do
que o permitido, haverá uma concatenação
índice atual com o índice imediatamente
anterior e o reagrupamento dos valores.
Exclusão
Caso 2:
A chave também aparece nos índices.
A chave é excluída e o índice de igual valor
é substituído pela chave de maior valor da
folha, se o número de chaves restantes no
nó respeitar o limite mínimo.
No caso do nó ficar com menos chaves do
que o permitido, haverá uma concatenação
índice atual com o índice imediatamente
anterior e o reagrupamento dos valores.
Exclusão
Exclusão
Exclusão

árvore b+

  • 1.
  • 2.
  • 3.
    O que é? ●Consiste numa variante da árvore B que,como sugere o nome, apresenta vantagens em relação à estrutura original.
  • 4.
  • 5.
    ● A organizaçãodas páginas internas ou no inglês index set é semelhante a de uma árvore B(chaves, ponteiros e um contador de chaves), este, por sua vez, armazena cópias de chaves para referênciar as buscas, mas não contém as chaves em si. ● No sequence set estão as páginas folha que contém as chaves inseridas na árvore e funciona como uma lista encadeada permitindo o acesso sequencial ordenado às chaves independente do index set. Definição
  • 6.
    Página Interna ou Index Set ●Funcionam como um índice que apenas apontam para a localização exata de uma chave e sua construção é semelhante ao de uma árvore B com número mínimo de chaves igual a ⌈n/2⌉-1 e máximo de n-1 por página.
  • 7.
    ● Estão abrigadastodas as chaves inseridas e durante o processo de inserção e remoção de chaves, estas podem sofrer overflows ou underflows conforme estas violem o número máximo igual a n-1 ou mínimo igual a ⌈n/2⌉-1 permitido de chaves. Página Folha ou Sequence Set
  • 8.
    Estrutura ● Todas asfolhas aparecem no mesmo nível. ● Uma página não folha com K filhos contem K-1 chaves. Árvore B+ de ordem 3
  • 9.
    ● Nas árvoresB+ os registros completos são armazenados exclusivamente nas folhas. ● Os nós não terminais atuam como índices de acesso aos dados contidos nos nós terminais. Características
  • 10.
    Resumo ● Uma árvoreB+ é uma árvore B em que os registros de dados são mantidos nos nós folhas e os nós não terminais constituem somente chaves que servem como índices de acesso aos dados.
  • 11.
    ● Mantém aeficiência da busca e da inserção da árvore B. ● Aumenta a eficiência da localização do próximo registro na árvore de O(log2n) para O(1). ● Não é preciso manter nenhum ponteiro de registro em nós não-folha. ● As árvores B+ apresentam menor profundidade que as árvores B com mesmos dados, pois nas B+ há aumento do número de entradas mantidas por nó. Vantagens
  • 12.
    Utilização ● Muitos bancosde dados são construídos usando o mecanismo de árvore B+: SQL Server e Oracle ● Sistemas de arquivos como o NTFS para o Microsoft Windows, o sistema de ficheiros ReiserFS para Unix, o XFS para IRIX e Linux, e o JFS2 para AIX, OS/2 e Linux, usam este tipo de árvore.
  • 13.
    Busca ● Linear ouBinária ● Pela raiz ou “sequence set”
  • 14.
    Inserção A operação deinserção consiste em 4 passos: 1. Localizar a folha dentro da qual a chave deve ser inserida; 1. Localizar a posição de inserção dentro da folha; 1. Inserir a chave; 1. E se, após a inserção, a folha estiver completa, realizar a cisão (divisão) da página.
  • 15.
    Exclusão A operação deexclusão consiste em: 1. Localizar a folha onde a chave deverá ser deletada; 1. Localizar a posição da chave dentro da folha; 1. Deletar chave; 1. Concatenar ou redistribuir as chaves na folha; (se a chave aparecer também nos índices)
  • 16.
    Exclusão Caso 1: A chaveaparece em apenas um nó. A chave é simplesmente excluída e a folha é reorganizada. No caso do nó ficar com menos chaves do que o permitido, haverá uma concatenação índice atual com o índice imediatamente anterior e o reagrupamento dos valores.
  • 17.
    Exclusão Caso 2: A chavetambém aparece nos índices. A chave é excluída e o índice de igual valor é substituído pela chave de maior valor da folha, se o número de chaves restantes no nó respeitar o limite mínimo. No caso do nó ficar com menos chaves do que o permitido, haverá uma concatenação índice atual com o índice imediatamente anterior e o reagrupamento dos valores.
  • 18.
  • 19.
  • 20.