Cap. 4 Indexação Estruturada em Árvore
|
|
- Marcelo da Rocha Bonilha
- 7 Há anos
- Visualizações:
Transcrição
1 Cap. 4 Indexação Estruturada em Árvore If I had eight hours to chop down a tree, I d spent sharpening my ax. -- Abraham Lincoln Abel J.P. Gomes Bibliography: 1. R. Ramakrishnan and J. Gehrke. Database Management Systems. Addison-Wesley, 2003 (cap.10). 1
2 1. Objectivos Intuitivamente, o que está por detrás dos índices estruturados em árvore? Porque é que são adequados para selecções (SELECT) por gama de valores? Como é que faz pesquisa (SELECT), inserção (INSERT) e eliminação (DELETE) de registos num índice ISAM? Como é que faz pesquisa (SELECT), inserção (INSERT) e eliminação (DELETE) de registos num índice em árvore B+? Qual é o impacto de valores duplicados da chave na im plementação de índices? O que é a compressão de índices, e porque é que são importantes? O que é que acontece aos idntificadores de registos quando índices dinâmicos são actualizados? Como é que isto afecta os índices conglomerados (clustered indexes)? 2
3 2. Ficheiros,Páginas e Registos: uma revisão A abstracção de dados armazenados é a de ficheiros de registos. l l Registos (records) residem em páginas (pages) Physical Record ID (RID) = <page#, slot#> Dados de tamanho variável requerem estruturas mais sofisticadas para registos e páginas. (porquê?) l l registos: offset array no header páginas: Slotted pages com internal offsets & área de espaço livre Muitas vezes é melhor ser permissivo relativamente a questões como gestão de espaço livre, ordenação exacta, etc. (porquê?) Ficheiros podem ser não-ordenados (heap), ordenados, ou algum tipo de ficheiro ordenado (i.e., conglomerado ) por uma chave de pesquisa (search key). l Os compromissos são entre o custo de actualização/manutenção e a velocidade dos acessos via chave de pesquisa. l Ficheiros podem ser conglomerados (sorted) no máximo de uma maneira. Índices podem ser usados para tornar mais rápidos muitos tipos de acessos (i.e., percursos de acesso ) 3
4 2. Indexação: Conceitos Básicos Mecanismos de indexação usados para acelerar o acesso aos dados. l p.ex., catálogo de autores numa biblioteca Chave de pesquisa - atributo ou conjunto de atributos usados para procurar records num ficheiro. Um ficheiro de indexação ou, simplesmente, índice é constituído por records (chamados verbetes de indexação) com a seguinte forma: search-key pointer Os índices são normalmente mais pequenos que o ficheiro original Dois tipos essenciais de índices: l Índices ordenados: as chaves de pesquisa são armazenadas numa dada ordem l Índices de hashing: as chaves de pesquisa são distribuídas uniformemente por buckets usando uma hash function. 4
5 3. Métricas de avaliação de índices Tipos de acesso suportados eficientemente; p.ex., l records com um valor específico no atributo l ou records com um valor de atributo numa dada gama de valores. Tempo de acesso Tempo de inserção Tempo de eliminação Sobrecarga (overhead) de espaço 5
6 4. Índices ordenados Técnicas de indexação avaliadas com base em: Num índice ordenado, verbetes de indexação são armazenados e ordenados segundo o valor da chave de pesquisa; p.ex., catálogo de autores numa biblioteca. Índice primário: num ficheiro sequencialmente ordenado, o índice cuja chave de pesquisa especifica a ordem sequencial do ficheiro. l Também designado por índice de aglomeração l A chave de pesquisa dum índice primário é usual mas não necessariamente a chave primária. Índice secundário: um índice cuja chave de pesquisa especifica uma ordem diferente da ordem sequencial do ficheiro. Também designado por índice de não-aglomeração. Ficheiro de índice sequencial: ficheiro ordenado sequencialmente com um índice primário. 6
7 5. Ficheiros de indexação densos Índice denso um record de indexação aparece para todo o valor da chave de pesquisa no ficheiro. 7
8 Ficheiros de indexação esparsos Menos espaço e menor sobrecarga de manutenção para inserções e eliminações. Normalmente mais lento que o índice denso em localizar records. Bom compromisso: índice esparso com verbete de indexação para todo o bloco num ficheiro, correspondendo a menor valor da chave de pesquisa num bloco. 8
9 6. Índice Multi-nível Se índice primário não cabe na memória, o acesso torna-se dispendioso. Para reduzir o número de acessos ao disco à procura de records de indexação, trata-se índice primário mantido em disco como um ficheiro sequencial e constrói-se um índice esparso sobre ele. Índice exterior um índice esparso do índice primário Índice interior o índice primário Mesmo se o índice exterior é demasiado grande para caber na memória principal, um outro nível de indexação pode ser criado, e assim por diante. Índices de todos os níveis têm de ser actualizados face a uma inserção ou eliminação dum record dum ficheiro. 9
10 7. Índices Estruturados em Árvore: Introdução Técnicas de indexação estruturada em árvore suportam quer selecções por gama quer selecções por igualdade. l ISAM (Indexed Sequential Access Method): estrutura estática; tecnologia de indexação primitiva. l B+ tree: dinâmica; ajusta-se graciosamente face a inserções e eliminações. Selecções da forma field <op> constant Selecções por igualdade (op é =) l Quer índices em árvore quer índices em hashing podem ser usados, mas os índices baseados em hashing são mais eficientes. Selecções por gama (op é um de <, >, <=, >=, BETWEEN) l Índices hash não funcionam nestes casos. 10
11 7.1 Uma nota de precaução ISAM é uma ideia fora de moda l As árvores B+ são normalmente melhores, mas como veremos nem sempre assim é. Contudo, os índices ISAM são importantes para começar a compreender as técnicas de indexação l São mais simples que as árvores B+, mas basicamente desfrutam das mesmas ideias 11
12 8. Pesquisas por Gama de Valores: motivação para os índices em árvore Consideremos um ficheiro de estudantes ordenados por gpa. Encontre todos os estudantes com gpa > 3.0 l Se os dados estão num ficheiro ordenado, faça pesquisa binária para encontrar o primeiro estudante que satisfaz aquela condição; a partir daí, percorra sequencialmente o ficheiro até ao fim para encontrar todos os outros alunos. l O custo da pesquisa binária numa base de dados pode ser muito elevado. (porquê?) A ideia simples por detrás de uma solução: l crie um segundo ficheiro, chamado ficheiro de indexação (index file); l é estruturado em registos da forma <first key on page, pointer to page> cada um dos quais se refere a uma página do ficheiro (de dados) original; l É ordenado pelo atributo chave (p.e. gpa); l o formato duma página do ficheiro de indexação é o seguinte: verbete de indexação P 0 k 1 P 1 k 2 P 2 k m P m 12
13 8. Pesquisas por Gama: motivação para os índices em árvore(cont.) Assim, a pesquisa binária ocorre agora no ficheiro de indexação para identificar a página que contém o primeiro valor da chave (gpa) que satisfaz a selecção por gama (no nosso exemplo, o primeiro estudante com gpa>3.0). Depois, seguimos o ponteiro para a página que contém o primeiro registo de dados com aquele valor da chave. Podemos então percorrer o ficheiro de dados sequencialmente a partir daquele ponto em diante para devolver os outros registos que satisfazem a mesma condição. One-level Index Structure k1 k2 kn Ficheiro de Indexação Page 1 Page 2 Page 3 Page N Ficheiro de Dados Faz-se a pesquisa binária sobre um ficheiro de indexação que é mais pequeno do que o ficheiro de dados! 13
14 9. ISAM (Indexed Sequential Access Method) A possibilidade de o ficheiro de indexação ter um tamanho muito grande fez surgir a ideia da indexação em árvore. Basicamente, o que se fez foi aplicar a ideia primitiva de indexação (do acetato anterior) repetidamente por forma a criar uma estrutura de indexação multi-nível! Non-leaf Pages Leaf Pages Overflow page Primary pages Páginas-folha contêm verbetes de dados (data entries). 14
15 9.1 Árvore ISAM: exemplo Verbetes de indexação:<search key value, page id>; direccionam a pesquisa para os verbetes de dados existentes nas folhas da árvore. Exemplo em que cada nó tem 2 verbetes: Root * 15* 20* 27* 33* 37* 40* 46* 51* 55* 63* 97* 15
16 9.2 Insert: exemplo para registos cujas chaves têm os valores 23, 48, 41 e 42 Index Pages Root Primary Leaf Pages 10* 15* 20* 27* 33* 37* 40* 46* 51* 55* 63* 97* Overflow Pages 23* 48* 41* 42* Assunção: cada página folha pode conter 2 verbetes 16
17 9.3 Delete: exemplo para os verbetes 42*, 51* e 97* Index Pages Root Primary Leaf Pages 10* 15* 20* 27* 33* 37* 40* 46* 55* 63* Overflow Pages 23* 48* 41* Note que 51* aparece nos níveis de indexação, mas não no nível dos dados 17
18 9.4 ISAM é uma estrutura estática Estrutura estática: inserções/eliminações afectam só as páginas folha. Criação de ficheiros: páginas folha (dos dados) são alocadas sequencialmente e ordenadas pela chave de pesquisa; depois, as páginas de indexação são alocadas, seguindo-se as páginas de transbordo (overflow pages). Pesquisa: começa na raiz; usa-se comparações da chave para atravessar a árvore até à folha. Custo = log F N ; F = #verbetes/página (i.e., fanout), N = #páginas folha. Não há necessidade de ponteiros`nextleaf-page. (porquê?) Inserção: encontre a folha à qual o verbete de dados pertence, e coloque-o lá. Use uma página de transbordo se for necessário. Eliminação: encontre e remova o verbete de dados da sua folha; se a folha ficar vazia, liberte-a da memória. Data Pages Index Pages Overflow pages Page allocation in ISAM 18
19 9.5 ISAM: prós & contras Inserções e remoções afectam só o conteúdo das páginas folha. Contras? l Longas cadeias de transbordo podem desenvolver-se se um número significativo de inserções é feito na mesma folha tempo de devolução dum registo numa cadeia de transbordo tem um custo adicional. l Para remediar este problema, a árvore é inicialmente criada de tal modo que 20% do espaço de cada página é deixado livre. Prós? l O facto que só páginas folha são modificadas também tem uma vantagem importante relativamente ao acesso concorrente à base de dados. Assim, só as páginas folha têm de ser trancadas por forma a permitir o acesso exclusivo durante as transacções. l Esta é uma vantagem significativa relativamente a uma árvore B +. 19
20 10. Árvore B+: o índice mais usado Como no ISAM, todas as pesquisas atravessam a árvore desde a raiz até às folhas, mas a estrutura é dinâmica. Ela ajusta-se graciosamente a inserções e eliminações. Inserção/eliminação com um custo de log F N; mantém a árvore equilibrada-em-altura. l F = fanout, N = #páginas folha Ocupação mínima de 50% (excepto na raiz). Cada nó contém m verbetes, d m 2d; d é chamada a ordem da árvore. Suporta pesquisas por igualdade e por gama duma forma eficiente. Index Entries (to direct search) Index File double linked list Data Entries ("Sequence set") 20
21 10. Árvores B+: pesquisa de verbetes de dados A pesquisa começa na raiz, cabendo às comparações da chave direccioná-la para uma folha (como acontece no ISAM). Pesquisa para 5*, 15* e todos os verbetes de dados >= 24*... Root Tree order d=2 Tree height = * 3* 5* 7* 14* 16* 19* 20* 22* 24* 27* 29* 33* 34* 38* 39* Com base na pesquisa para 15*, sabemos que ele não está na árvore! 21
22 10. Árvores B+ Trees na Prática Ordem típica: 100. l Factor típico de preenchimento: 67%. l fanout médio= 133 Capacidades típicas: l Altura 2: = 2,352,637 verbetes l Altura 3: = 312,900,700 verbetes Muitas vezes mantém-se níveis de topo da árvore na buffer pool: l Nível 1 = 1 página = 8 Kbytes l Nível 2 = 133 páginas = 1 Mbyte l Nível 3 = 17,689 páginas = 133 MBytes 22
23 11. Algoritmo Insert de um Verbete de Dados numa Árvore B+ Encontre a folha certa L. Coloque o verbete de dados em L. l Se L tem espaço suficiente, termina! l Senão, tem de particionar L (em L e num novo nó L2) Redistribui verbetes equitativamente, e copia a chave intermédia para cima. Insere verbete de indexação que aponta para L2 no nó pai de L. Isto pode acontecer recursivamente: l Para particionar um nó de indexação, redistribua verbetes equitativamente, mas translade para cima a chave intermédia. (Faça o contraste com a partição dum nó folha.) Partições de nós fazem crescer a árvore; a partição da raiz faz crescer a árvore em altura. l Crescimento da árvore: em largura ou em altura. 23
24 11.1 Exemplo: inserção do verbete de dados 8* Root * 3* 5* 7* 14* 16* 19* 20* 22* 24* 27* 29* 33* 34* 38* 39* Root * 3* 5* 7* 8* 14* 16* 19* 20* 22* 24* 27* 29* 33* 34* 38* 39* 24
25 12. Partição de Página de Dados vs. Página de Indexação: do exemplo anterior relativo à inserção de 8* Observe como a ocupação mínima é garantida quer na partição duma página folha quer duma página de indexação. Note a diferença entre copiar-paracima e transladarpara-cima. 2* 3* 5* 7* 8* Partição duma Página de Dados 5 2* 3* 5* 7* Verbete a inserir no nó pai. (Note que 5 é copiado para cima e continua a aparecer na folha.) Partição duma Página de Indexação * Verbete a inserir no nó pai. (Note que 17 é transladado para cima e só aparece uma vez no índice.) 25
26 13. Algoritmo Delete dum Verbete de Dados de uma Árvore B+ Comece na raiz; encontre a folha L à qual o verbete pertence. Remova o verbete. l l Se L está pelo menos preenchida por metade, termina! Se L tem só d-1 verbetes, Tente re-distribuir verbetes entre L e o seu nó irmão (nó adjacente com o mesmo nó pai que L). Se re-distribuição falha, coalesça L com o irmão. Se ocorreu coalescência, há que eliminar verbete (apontando para L ou irmão) a partir do nó pai de L. Coalescência pode propagar-se à raiz, com a consequente diminuição da altura da árvore. 26
27 13.1 Exemplo: eliminação dos verbetes de dados 19* e 20* Root * 3* 5* 7* 8* 14* 16* 19* 20* 22* 24* 27* 29* 33* 34* 38* 39* Eliminação de 19* é fácil. Eliminação de 20* é feita com re-distribuição. Noltese como a chave intermédia é copiada para cima Root * 3* 5* 7* 8* 14* 16* 22* 24* 27* 29* 33* 34* 38* 39* 27
28 13.2 Exemplo: e depois eliminar o verbete de dados 24* Root * 3* 5* 7* 8* 14* 16* 22* 24* 27* 29* 33* 34* 38* 39* Eliminação de 24* é feita com coalescência das folhas. Observe o atirar fora do verbete de dados (à direita), e transladar para baixo do verbete de indexação (no acetato seguinte) * 27* 29* 33* 34* 38* 39* 28
29 13.2 Exemplo (cont.): e depois a eliminação do verbete de dados 24* Root * 3* 5* 7* 8* 14* 16* 22* 27* 29* 33* 34* 38* 39* Eliminação de 24* é também feita com coalescência de páginas não-folha. Os exemplos anteriores ilustram o seguinte: Re-distribuição de verbetes entre folhas, e Coalescência entre páginas folha e entre páginas não-folha. Vejamos agora o quarto e último caso referente à re-distribuição de verbetes entre páginas não-folha 29
30 13.3 Exemplo: re-distribuição entre páginas não-folha Consideremos a árvore mostrada em baixo durante a eliminação de 24*, com a diferença que o nó não-folha que contém a chave 30 tem um nó irmão que pode dispensar verbetes (17 e 20). (Qual poderia ser a árvore inicial?) Em contraste com o exemplo anterior, podemos re-distribuir verbetes do nó filho esquerdo da raiz para o nó irmão à direita. Root * 3* 5* 7* 8* 14* 16* 17* 18* 20* 21* 22* 27* 29* 33* 34* 38* 39* 30
31 13.3 Exemplo (cont.): re-distribuição entre páginas não-folha Root * 3* 5* 7* 8* 14* 16* 17* 18* 20* 21* 22* 27* 29* 33* 34* 38* 39* Intuitivamente, verbetes são redistribuídos em consequência da translação do verbete de partição para o nó pai. Isto implica a re-distribuição do verbete de indexação com chave 20 para o nó irmão Root * 3* 5* 7* 8* 14* 16* 17* 18* 20* 21* 22* 27* 29* 33* 34* 38* 39* 31
32 14. Questões Pragmáticas das Árvores B+ Compressão de chaves Carregamento em massa (bulk-loading) duma árvore B + 32
33 14.1 Compressão de chaves É importante para aumentar o fan-out. (porquê?) Os valores da chave nos verbetes de indexação só direccionam o tráfego ; muitas das vezes, podemos comprimi-las. l p.e., se temos verbetes de indexação adjacentes com as chaves Dannon Yogurt, David Smith e Devarakonda Murthy, podemos abreviar David Smith para Dav. (As outras chaves podem ser comprimidas também...) É isto correcto? Não propriamente! O que acontece se exite um verbete de dados Davey Jones? (Só podemos comprimir David Smith para Davi) Em geral, durante a compressão, temos de deixar cada verbete de indexação maior do que qualquer valor da chave (em qualquer sub-árvore) à sua esquerda. Inserção/eliminação têm de ser modificadas em conformidade. 33
34 14.2 Carregamento em massa de uma árvore B+ Se temos uma grande colecção de registos, e queremos criar uma árvore B+ sobre algum campo ou atributo duma tabela, a inserção registo a registo torna-se uma operação muito lenta. l Também conduz à utilização mínima de folhas --- porquê? Carregamento em massa pode tornar este processo muito mais eficiente. 34
35 14.2 Carregamento em massa de uma árvore B+ (cont.) Initialização: ordene todos os verbetes de dados; insira ponteiro para a primeira página (folha) numa nova página que alojará a raiz. Raiz Páginas ordenadas de verbetes de dados; ainda não existentes na árvore B+ 3* 4* 6* 9* 10* 11* 12* 13* 20* 22* 23* 31* 35* 36* 38* 41* 44* 35
36 14.2 Carregamento em massa de uma árvore B+ (cont. 1) Verbetes de indexação para as páginas folha dão sempre entrada à direita da página de indexação mais à direita, imediatamente acima do nível de folhas. Quando fica cheio, particiona-se. (A partição pode propagar-se no sentido ascendente da árvore até à raiz.) Raiz Páginas de verbetes de dados que ainda não estão na árvore 3* 4* 6* 9* 10* 11* 12* 13* 20* 22* 23* 31* 35* 36* 38* 41* 44* 36
37 14.2 Carregamento em massa de uma árvore B+ (cont.2) Muito mais rápido que inserções repetidas, em particular quando se tem em conta o trancamento (locking) de páginas para acesso exclusivo! Raiz Páginas de verbetes de dados que ainda não estão na árvore * 4* 6* 9* 10* 11* 12* 13* 20* 22* 23* 31* 35* 36* 38* 41* 44* 37
38 14.2 Carregamento em massa de uma árvore B+ : sumário Opção 1: inserções múltiplas. l Lenta. l Não permite armazenamento sequencial das folhas. Opção 2: carregamento em massa l Tem vantagens no que respeita ao controlo da concorrência. l Menor número de I/Os durante a construção da árvore. l Folhas podem ser armazenadas sequencialmente (e ligadas, obviamente). l Pode controlar-se o factor de preenchimento das páginas. 38
39 Sumário Índices estruturados em árvore sáo ideais para pesquisas por gama, mas também são adequados para pesquisas por igualdade. ISAM é uma estrutura estática. l l Só as páginas folha são modificadas; páginas de transbordo são necessárias. Cadeias de transbordo podem degradar o desempenho, a não ser que o tamanho do conjunto de dados e a distribuição de dados permaneçam constantes. Árvore B+ é uma estrutura dinâmica. l l l l l l Inserções/eliminações deixam a árvore equilibrada em altura; o custo é log F N. Fanout (F) elevado significa que a profundidade da árvore raramente será mais do que 3 ou 4. Quase sempre melhor que manter um ficheiro ordenado. Tipicamente, 67% de ocupação média do espaço. Normalmente é preferível à ISAM, à parte das considerações de locking; ajusta-se graciosamente ao crescimento. Se os verbetes de dados são registos de dados, as partições podem mudar os rids! 39
40 FIM DE CAPÍTULO Sumário (cont.) A compressão de chaves aumenta o fanout, o que reduz a altura. O carregamento em massa pode tornar mais rápida a criação duma árvore B+ quando o conjunto de dados é muito grande. É o índice mais usado nos sistemas de gestão de bases de dados devido à sua versatilidade. Um dos componentes mais optimizados dum DBMS. 40
Cap. 5 Indexação Baseada em Hashing
Cap. 5 Indexação Baseada em Hashing Not cahos-like, together crushed and bruised, But, as the world harmoniously confused: Where order in variety we see. -- Alexander Pope Abel J.P. Gomes Bibliography:
Leia maisGBC053 Gerenciamento de Banco de Dados Índices baseados em Árvores
GBC053 Gerenciamento de Banco de Dados Índices baseados em Árvores Ilmério Reis da Silva ilmerio@facom.ufu.br www.facom.ufu.br/~ilmerio/gbd UFU/FACOM/BCC ROTEIRO Fundamentos Estrutura estática (ISAM) Estrutura
Leia maisBases de Dados. Índices. Discos. transferência rápida e aos bytes. transferência lenta e em blocos (512B ~ 4KB) memória. disco BD / aplicação
Bases de Dados Índices Discos transferência lenta e em blocos (512B ~ 4KB) transferência rápida e aos bytes memória disco BD / aplicação 2 1 Discos 7200rpm = 120 rot/s 1 5 platters Ø 8.9 cm 50000 ~ 100000
Leia maisBases de Dados. Índices. Discos. transferência lenta. transferência rápida e em blocos (512B ~ 4KB) e aos bytes. memória.
Bases de Dados Índices Discos transferência lenta transferência rápida e em blocos (512B ~ 4KB) e aos bytes memória disco aplicação 2 1 Discos 7200rpm = 120 rot/s 1 5 platters Ø 8.9 cm 50000 ~ 100000 tracks
Leia maisBases de Dados. Algoritmos. Custo de operação. Algoritmos de selecção. Algoritmo de ordenação. Algoritmos de junção.
Bases de Dados Algoritmos Custo de operação Algoritmos de selecção Algoritmo de ordenação Algoritmos de junção Outras operações Materialização e pipelining 2 1 Bases de Dados Algoritmos de selecção Algoritmos
Leia maisACH2025. Laboratório de Bases de Dados Aula 8. Indexação e Hashing Parte 1. Professora: Fátima L. S. Nunes SISTEMAS DE INFORMAÇÃO
ACH2025 Laboratório de Bases de Dados Aula 8 Indexação e Hashing Parte 1 Professora: Fátima L. S. Nunes Conceitos básicos Boa parte das consultas a BD referem-se a apenas uma parte pequena dos registros.
Leia maisBANCO DE DADOS II Prof. Ricardo Rodrigues Barcelar
- Aula 2 - ÍNDICE 1. INTRODUÇÃO Quando criamos a estrutura de um banco de dados temos que usar artifícios que melhorem a performance na recuperação dos dados que lá serão armazenados. Dentre várias técnicas
Leia maisSumário. Índices Ordenados: Nível Único. Índices Primários. Bancos de Dados Avançados Índices. Índices: Ordenados em nível único Multiníveis
Sumário Bancos de Dados Avançados Índices DCC030 - TCC: Bancos de Dados Avançados (Ciência Computação) DCC049 - TSI: Bancos de Dados Avançados (Sistemas Informação) DCC842 - Bancos de Dados (Pós-Graduação)
Leia maisDois parâmetros essenciais t T tempo de transferência de um bloco. assume-se igual para operações de leitura e escrita
Bases de Dados Algoritmos de processamento Custo de operação Dois parâmetros essenciais t T tempo de transferência de um bloco assume-se igual para operações de leitura e escrita t S tempo de localização
Leia maisBases de Dados. Remoções em árvores B + Remoção em árvores B +
Bases de Dados Remoções em árvores B + Remoção em árvores B + Remoção procurar o registo e removê-lo do ficheiro se o apontador ou contentor ficar vazio, remover a entrada (valor, apontador) da folha se
Leia maisBANCO DE DADOS Índices em BD Árvores B+
BANCO DE DADOS Índices em BD Árvores B+ Bacharelado em Ciência da Computação IFCE - Campus Aracati - Semestre 2018.2 Prof. Érica Gallindo - erica.gallindo@ifce.edu.br Arquivos de banco de dados Um arquivo
Leia maisACH2024. Aula 22 Hashing Externo - Hashing estático e dinâmico (extensível) Prof Helton Hideraldo Bíscaro
ACH04 Aula Hashing Externo - Hashing estático e dinâmico (extensível) Prof Helton Hideraldo Bíscaro 1 Tipos de organização de arquivos Sequencial Lista ligada (com ou sem tabela de alocação) Indexada Um
Leia maisindexação e hashing Construção de Índices e Funções Hash Diego Gomes Tomé - MSc. Informática Orientador: Prof. Dr. Eduardo Almeida October 13, 2016
indexação e hashing Construção de Índices e Funções Hash Diego Gomes Tomé - MSc. Informática Orientador: Prof. Dr. Eduardo Almeida October 13, 2016 Universidade Federal do Paraná indexação e hashing Índices
Leia maisBanco de Dados. Módulo 15 - Estruturas de Indexação
Banco de Dados Módulo 15 - Estruturas de Indexação Tópicos Introdução Árvores-B + Hashing Hashing Expansível Introdução Índice Primário (ou índice de clustering): índice cuja chave especifica a ordem sequencial
Leia maisCap. 3 Organização de Ficheiros e Indexação
Cap. 3 Organização de Ficheiros e Indexação If you don t find it in the index, look very carefully through the entire catalogue. -- Sears, Roebuck, and Co., Consumer s Guide, 1897 Abel J.P. Gomes Bibliografia:
Leia maisOrganização de Arquivos
Construção de Sistemas de Gerência de Bancos de Dados DI PUC-Rio Prof: Sérgio Lifschitz Organização de Arquivos Organização de Arquivos Tipos básicos de arquivos: heap files (entry sequenced files) sorted
Leia maisÁrvores. Thiago Martins, Fabio Gagliardi Cozman. PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo
PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo Árvore: estrutura composta por nós e arestas entre nós. As arestas são direcionadas ( setas ) e: um nó (e apenas um) é a raiz; todo nó
Leia maisUniversidade Estadual do Oeste do Parana - UNIOESTE Jhonata R.de Peder Marcelo Schuck
Universidade Estadual do Oeste do Parana - UNIOESTE Jhonata R.de Peder Marcelo Schuck Banco dedados I Estruturas de Índices para Arquivos Cascavel - Pr 2009 Sumário Introdução; Índices Ordenados de nível
Leia maisTipos de Índices. Profa. Dra. Cristina Dutra de Aguiar Ciferri
Tipos de Índices Cristina Dutra de Aguiar Ciferri Tipos de Índice Ordenados em um único nível primário agrupamento (cluster) secundário Estruturas de dados de árvores índices multiníveis árvores-b, árvores-b+
Leia maisINF70 Gerenciamento de Banco de Dados 2 Índices baseados em Hash
INF70 Gerenciamento de Banco de Dados Índices baseados em Hash Ilmério Reis da Silva ilmerio@facom.ufu.br www.facom.ufu.br/~ilmerio/gbd Roteiro Fundamentos Hash Estático Hash Extensível Hash Linear Considerações
Leia maisÁrvore-B. Árvore B. Características Gerais. Sistemas de Banco de Dados. Características Gerais. Revisão
Árvore B Profa. Dra. Cristina Dutra de Aguiar Ciferri Método genérico para o armazenamento e a recuperação de dados voltado para arquivos volumosos proporciona rápido acesso aos dados possui custo mínimo
Leia maisAcesso Sequencial Indexado
Acesso Sequencial Indexado Utiliza o princípio da pesquisa seqüencial cada registro é lido seqüencialmente até encontrar uma chave maior ou igual a chave de pesquisa. Providências necessárias para aumentar
Leia maisGBC053 Gerenciamento de Banco de Dados Índices baseados em Hash
GBC053 Gerenciamento de Banco de Dados Índices baseados em Hash Ilmério Reis da Silva ilmerio@facom.ufu.br www.facom.ufu.br/~ilmerio/gbd UFU/FACOM/BCC UFU/FACOM/BCC GBD Página: Roteiro Fundamentos Hash
Leia maisÁrvores. Thiago Martins, Fabio Gagliardi Cozman. PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo
PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo Árvore: estrutura composta por nós e arestas entre nós. As arestas são direcionadas ( setas ) e: um nó (e apenas um) é a raiz; todo nó
Leia maisÁrvores. Fabio Gagliardi Cozman. PMR2300 Escola Politécnica da Universidade de São Paulo
PMR2300 Escola Politécnica da Universidade de São Paulo Árvore: estrutura composta por nós e arestas entre nós. As arestas são direcionadas ( setas ) e: um nó (e apenas um) é a raiz; todo nó (exceto a
Leia maisÁrvores B. Prof. Márcio Bueno. / Fonte: Material da Prof a Ana Eliza Lopes Moura
Árvores B Prof. Márcio Bueno ed2tarde@marciobueno.com / ed2noite@marciobueno.com Fonte: Material da Prof a Ana Eliza Lopes Moura Situação Problema Memória Principal Volátil e limitada Aplicações Grandes
Leia maisÁrvores-B (Parte IV) Leandro C. Cintra M.C.F. de Oliveira Fonte: Folk & Zoelick, File Structures
Árvores-B (Parte IV) Leandro C. Cintra M.C.F. de Oliveira 2004 Fonte: Folk & Zoelick, File Structures http://www.icmc.sc.usp.br/~sce183 Definição e Propriedades de árvores-b Ordem A ordem de uma árvore-b
Leia maisOrdem. Árvores-B (Parte IV) Número mínimo de chaves por página. Definição formal das Propriedades de árvores-b /30 1
Ordem Árvores-B (Parte IV) Leandro C. Cintra M.C.F. de Oliveira Fonte: Folk & Zoelick, File Structures A ordem de uma árvore-b é dada pelo número máximo de descendentes que uma página, ou nó, pode possuir
Leia mais1. Em relação à organização de arquivos e índices, responda: (a) Dado um arquivo de dados, o que é a chave de um índice para o arquivo?
UFU/FACOM/BCC Gerenciamento de Bancos de Dados 2018/2-2 a Lista de Exercícios Prof. Ilmério Reis da Silva 1. Em relação à organização de arquivos e índices, responda: (a) Dado um arquivo de dados, o que
Leia maisB-tree. B-Trees. Estrutura do nodo da B-tree. Balanceamento. Disposição dos elementos ordenados na B-tree. Exemplo de uma B-tree de ordem 3
B-tree B-Trees Material da Prof. Denise Bandeira, aula de Christian Hofsetz B-Trees são árvores balanceadas. Diferente das árvores binárias, os nós de uma B-tree podem ter um número variável de nodos filho.
Leia maisÁRVORE B. Vanessa Braganholo Estruturas de Dados e Seus Algoritmos
ÁRVORE B Vanessa Braganholo Estruturas de Dados e Seus Algoritmos INTRODUÇÃO 2 ARQUIVOS DE ACESSO DIRETO Basicamente, duas formas de acesso a um registro: Acesso via cálculo do endereço do registro (hashing)
Leia maisÁrvores B. Prof. Leandro C. Fernandes. Estruturas de Dados. Adaptado de: Leandro C. Cintra e M.C.F. de Oliveira
Árvores B Prof. Leandro C. Fernandes Estruturas de Dados Adaptado de: Leandro C. Cintra e M.C.F. de Oliveira A invenção da árvore-b Bayer and McGreight, 1972, publicaram o artigo: "Organization and Maintenance
Leia maisÁrvores B. Prof. Flávio Humberto Cabral Nunes
Árvores B Prof. Flávio Humberto Cabral Nunes Conteúdo 1. Introdução 2. Busca 3. Inserção 4. Remoção 5. B* 6. B+ Capítulo: 8 (APOSTILA). Introdução Em muitas aplicações, a tabela considerada é muito grande
Leia maisÁrvores-B (Parte I) SCC-503 Algoritmos e Estruturas de Dados II. Thiago A. S. Pardo Leandro C. Cintra M.C.F. de Oliveira
Árvores-B (Parte I) SCC-503 Algoritmos e Estruturas de Dados II Thiago A. S. Pardo Leandro C. Cintra M.C.F. de Oliveira Problema Cenário até então Acesso a disco é caro (lento) Pesquisa binária é útil
Leia maisAlgoritmo: Split. Árvores B Parte IV. Algoritmo: Split. Algoritmo: Split. Algoritmo: Split. Procedimento inicial. Parâmetros
Algoritmos e Estruturas de Dados II Prof. Debora Medeiros Árvores B Parte IV Algoritmos de Split e Procedimento inicial Eliminação, Redistribuição & Concatenação Adaptado dos Originais de: Ricardo J. G.
Leia maisÁrvores Genéricas de Busca
Árvores Genéricas de Busca Árvores não binárias também podem ser usadas para buscar elementos. Essas árvores são chamadas de árvores genéricas de busca, e elas podem ser de dois tipos: árvore de busca
Leia maisSistemas de Bases de Dados 1.º teste (com consulta limitada: 2 folhas identificadas) - Duração: 2 horas
DI-FCT/UNL 28 de abril de 2018 Sistemas de Bases de Dados 1.º teste (com consulta limitada: 2 folhas identificadas) - Duração: 2 horas N. º : Nome: Grupo 1 (7 valores) 1 a) Para cada uma das seguintes
Leia maisÍndices. SCE-203 Algoritmos e Estruturas de Dados II
Índices SCE-203 Algoritmos e Estruturas de Dados II Índice Em geral, um índice fornece mecanismos para localizar informações Índice de um livro ou catálogo de uma biblioteca Facilitam muito o trabalho
Leia mais11/8/2010. Tópicos. Organização e Indexação de Dados em Memória Secundária
/8/00 Tópicos Organização e Indexação de Dados em Memória Secundária Disciplina Bancos de Dados II Prof Renato Fileto INE/CTC/UF Bancos de dados e acesso a memória secundária Noções de organização de dados
Leia maisÍndice. Índices. Índice simples. Em geral, um índice fornece mecanismos para localizar informações
Índice Índices Leandro C. Cintra M.C.F. de Oliveira Fonte: Folk & Zoelick, File Structures Em geral, um índice fornece mecanismos para localizar informações No caso de arquivos, permite localizar registros
Leia maisChapter 11: Indexing and Hashing. José Alferes Sistemas de Bases de Dados - ISCTEM janeiro de 2017
Chapter 11: Indexing and Hashing José Alferes Sistemas de Bases de Dados - ISCTEM janeiro de 2017 36 Chapter 11: Indexing and Hashing - Conceitos de base - Índices ordenados - B + -Tree Index B-Tree Index
Leia maisHashing externo (II) Graça Nunes. Fonte: Folk & Zoelick, File Structures
Hashing externo (II) Graça Nunes Fonte: Folk & Zoelick, File Structures 1 Hashing Extensível Espalhamento Extensível (Extendible Hashing): permite um auto-ajuste do espaço de endereçamento do espalhamento
Leia maisHashing convencional...
Hashing M.C.F. de Oliveira & Cristina Ciferri 2006/2007 Fonte: Folk & Zoelick, File Structures 1 Hashing convencional... Revisão... 2 1 Hashing 0 chave de busca K = LOWELL h(k) endereço 4 1 2 3 4 5...
Leia maisÁrvore-B* Profa. Dra. Cristina Dutra de Aguiar Ciferri
Árvore-B* Profa. Dra. Cristina Dutra de Aguiar Ciferri Árvore-B* Proposta por Knuth em 1973 variação de árvore-b Característica cada nó contém, no mínimo, 2/3 do número máximo de chaves Posterga o split
Leia maisB-Árvores. Siang Wun Song - Universidade de São Paulo - IME/USP. MAC Estruturas de Dados
MAC 5710 - Estruturas de Dados - 2008 Referência bibliográfica Os slides sobre este assunto são parcialmente baseados nos artigos Bayer, R. and E. McCreight. Organization and maintenance of large ordered
Leia maisSistemas de Bases de Dados 1.º teste (com consulta limitada: 2 folhas identificadas) - Duração: 2 horas
DI-FCT/UNL 28 de abril de 2018 Sistemas de Bases de Dados 1.º teste (com consulta limitada: 2 folhas identificadas) - Duração: 2 horas N. º : Nome: Grupo 1 (7 valores) 1 a) Para cada uma das seguintes
Leia maisEtapa III - Implementação de Operadores da Álgebra Relacional; Etapa IV - Comparação experimental de varredura sequencial x acesso aleatório
UFU/FACOM/BCC GBC053 - Gerenciamento de Banco de Dados - 2018/2 Trabalho de Implementação Prof. Ilmério Reis da Silva O trabalho semestral da disciplina em epígrafe tem como objetivo a implementação de
Leia maisÁrvores B. Árvore B (ou melhor B+)
Motivação: pesquisa em disco Árvores B Tempo de acesso a disco determinante nas operações Com disco de 10 ms de tempo de acesso: 100 acessos por segundo em máquina de 25 MIPS, 1 acesso custa tanto como
Leia maisPesquisa em memória primária
Pesquisa em memória primária Pesquisa em memória primária Recuperar informação a partir de uma grande massa de informação previamente armazenada. Existem vários métodos de pesquisa, depende de: Tamanho
Leia maisÁrvores B Parte III. Propriedades, Remoção & Inserção Revisitada. Adaptado e Estendido dos Originais de:
Estruturas de Dados Prof. Ricardo J. G. B. Campello Árvores B Parte III Propriedades, Remoção & Inserção Revisitada Adaptado e Estendido dos Originais de: Leandro C. Cintra Maria Cristina F. de Oliveira
Leia maisÁrvores B. Árvores B. Estrutura de Dados II Jairo Francisco de Souza
Árvores B Árvores B Estrutura de Dados II Jairo Francisco de Souza Motivação Quando tabelas são muito grandes Armazenamento do conjunto de chaves não pode ser efetuado na memória principal Necessário uso
Leia maisÁrvores B Parte IV. Revisão de Inserção. Organização. Variantes. Leandro C. Cintra Maria Cristina F. de Oliveira
Algoritmos e Estruturas de Dados II Prof. Ricardo J. G. B. Campello Árvores B Parte IV Variantes Adaptado e Estendido dos Originais de: Leandro C. Cintra Maria Cristina F. de Oliveira Organização Inserção
Leia maisConstrução de árvores-b. Árvores-B (Parte II) Características Gerais. Características Gerais. Leandro C. Cintra M.C.F. de Oliveira
Árvores-B (Parte II) Construção de árvores-b Leandro C. Cintra M.C.F. de Oliveira Fonte: Folk & Zoelick, File Structures Características Gerais Organizar e manter um índice para um arquivo de acesso aleatório
Leia maisLista de Exercícios. Av. Trabalhador São-carlense, 400. centro. São Carlos - SP cep Brasil.
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Ciências de Computação Disciplina de Organização de Arquivos Profa. Dra. Cristina Dutra de Aguiar Ciferri Lista
Leia maisEdital de Seleção 055/2017 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões
Edital de Seleção 055/2017 PROPESP/UFAM Prova de Conhecimento Caderno de Questões CANDIDATO: INSCRIÇÃO: Assinatura conforme identidade INSTRUÇÕES PARA O CANDIDATO: Verifique o seu nome e o número da sua
Leia maisde Bases de Dados Exame 2
Ano lectivo 2009/2010 2 o semestre Administração e Optimização de Bases de Dados Exame 2 Regras O exame tem a duração de 2 horas. O exame é individual e com consulta Só poderá abandonar a sala ao fim de
Leia maisÁrvores. Árvores M-Vias. Métodos de Pesquisa de Dados. de Pesquisa (ANP) VANTAGENS EXEMPLO
Métodos de Pesquisa de Dados Árvores M-Vias Encontrar um dado em um conjunto de dados de forma eficiente Baseia-se na noção de uma chave (índice) de pesquisa Aplicação típica: SGBD Busca de dados em disco
Leia maisÍndices. SCC-503 Algoritmos e Estruturas de Dados II. Thiago A. S. Pardo Leandro C. Cintra M.C.F. de Oliveira
Índices SCC-503 Algoritmos e Estruturas de Dados II Thiago A. S. Pardo Leandro C. Cintra M.C.F. de Oliveira Índice Em geral, um índice fornece mecanismos para localizar informações Índice de um livro ou
Leia maisAlgoritmos de pesquisa. Tabelas de dispersão/hash
Algoritmos de pesquisa Tabelas de dispersão/hash Introdução Motivação: Considerar o problema de pesquisar um determinado valor num vetor. Se o vetor não está ordenado, a pesquisa requer O(n) de complexidade.
Leia maisÁrvores-B (Parte II) Leandro C. Cintra M.C.F. de Oliveira Fonte: Folk & Zoelick, File Structures
Árvores-B (Parte II) Leandro C. Cintra M.C.F. de Oliveira 2004 Fonte: Folk & Zoelick, File Structures (atualizado 2007 c/ material Profa. Cristina Ciferri) Construção de árvores-b Características Gerais
Leia maisde Bases de Dados Exame 1
Ano lectivo 2011/2012 2 o semestre Administração e Optimização de Bases de Dados Exame 1 Regras O exame tem a duração de 2 horas. O exame é individual e com consulta. Poderá consultar o livro, slides da
Leia maisBases de Dados. Parte VIII. Organização Física dos Dados
Bases de Dados Parte VIII Organização Física dos Dados Ricardo Rocha DCC-FCUP 1 Unidades de Medida da Informação A unidade fundamental é o byte. 1 byte corresponde a 8 bits e cada bit permite representar
Leia maisParte 2 Abordagem Comparativa
GBC053 Gerenciamento de Banco de Dados Organização de Arquivos Parte 2 Abordagem Comparativa Ilmério Reis da Silva ilmerio@facom.ufu.br www.facom.ufu.br/~ilmerio/gbd UFU/FACOM/BCC Organização de Arquivos
Leia maisHashing. Hashing. Hashing versus Indexação. Hashing. Hashing convencional... Exemplo de espalhamento. Revisão...
Algoritmos e Estruturas de Dados II Hashing Prof Debora Medeiros Hashing convencional Revisão Adaptado dos Originais de: Maria Cristina F de Oliveira Cristina Ciferri Hashing Exemplo de espalhamento 0
Leia maisUNIVERSIDADE DE SÃO PAULO INSTITUTO DE CIÊNCIAS MATEMÁTICAS E DE COMPUTAÇÃO
UNIVERSIAE E SÃO AULO INSTITUTO E CIÊNCIAS MATEMÁTICAS E E COMUTAÇÃO SCC-20 ALGORITMOS E ESTRUTURAS E AOS II rofa. Graça Nunes 2º. Sem. 2012 Nome: Nro. US Gabarito rova (27/6/2012) 1) (1.5) Associar características
Leia maisModelo Relacional. Josino Rodrigues
Modelo Relacional Josino Rodrigues Modelo Relacional Chave Primária Atributos PILOTO Num-cad Nome CPF Endereço 0101 João 123456 Recife Tuplas 0035 José 234567 São Paulo... 0987 Pedro 567890 Recife 2 Chave
Leia maisUNIVERSIDADE DE SÃO PAULO ICMC SCC 202 Algoritmos e Estrutura de Dados I - 2º Semestre 2010 Profa. Sandra Maria Aluísio;
UNIVERSIDADE DE SÃO PAULO ICMC SCC 202 Algoritmos e Estrutura de Dados I - 2º Semestre 2010 Profa. Sandra Maria Aluísio; e-mail: sandra@icmc.usp.br Lista de Exercícios Árvores, Árvores Binárias, Árvores
Leia maisÁrvores B. Árvores B. Estrutura de Dados II Jairo Francisco de Souza
Árvores B Árvores B Estrutura de Dados II Jairo Francisco de Souza Motivação Quando tabelas são muito grandes Armazenamento do conjunto de chaves não pode ser efetuado na memória principal Necessário uso
Leia maisBanco de Dados. Métodos de Ordenação de Dados. Prof. Walteno Martins Parreira Jr
Banco de Dados Métodos de Ordenação de Dados Prof. Walteno Martins Parreira Jr www.waltenomartins.com.br waltenomartins@yahoo.com 2015 Ordenação de Dados Ordenação é o ato de se colocar os elementos de
Leia maisDicionários: B-Trees
Dicionários: 2003/04 Aula teórica de 2003.11.12 (T9) 2003 Salvador Abreu 2003/04 9-1 Motivação Grandes quantidades de informação Grandes quantidades de informação Requer armazenamento externo (disco) Acesso
Leia maisGBC053 Gerenciamento de Banco de Dados Introdução à Organização de Arquivos (Métodos de Acesso/Índices)
GBC053 Gerenciamento de Banco de Dados Introdução à Organização de Arquivos (Métodos de Acesso/Índices) Ilmério Reis da Silva ilmerio@facom.ufu.br www.facom.ufu.br/~ilmerio/gbd UFU/FACOM/BCC Organização
Leia maisEstruturas de Informação Árvores B ÁRVORES B
ÁRVORES B Até agora manipulamos a estrutura árvore binária em memória principal. Também queremos no entanto guardar árvores em disco e carregar a informação do disco para a memória principal, quando precisamos
Leia maisPesquisa em Memória Secundária. Prof. Jonas Potros
Pesquisa em Memória Secundária Prof. Jonas Potros Árvores de Pesquisa São estruturas de dados muito eficientes quando deseja-se trabalhar com tabelas que caibam inteiramente na memória principal do computador.
Leia maisUnidade 5 Armazenamento e Indexação
Unidade 5 Armazenamento e Indexação Engenharia de Computação / Engenharia de Produção Banco de Dados Prof. Maria das Graças da Silva Teixeira Material base: Banco de Dados, 2009.2, prof. Otacílio José
Leia maisINSTITUTO SUPERIOR TÉCNICO Administração e Optimização de Bases de Dados
Número: Nome: -------------------------------------------------------------------------------------------------------------- INSTITUTO SUPERIOR TÉCNICO Administração e Optimização de Bases de Dados Exame
Leia maisA Invenção da B-Tree. Árvores B Parte I. Problema. Problema. Introdução. Leandro C. Cintra Maria Cristina F. de Oliveira. Solução?
Algoritmos e Estruturas de Dados II Prof. Ricardo J. G. B. Campello Árvores B Parte I Introdução Adaptado e Estendido dos Originais de: Leandro C. Cintra Maria Cristina F. de Oliveira A Invenção da B-Tree
Leia maisÁrvores-B (Parte Ib) SCC-203 Algoritmos e Estruturas de Dados II. Graça Nunes
Árvores-B (Parte Ib) SCC-203 Algoritmos e Estruturas de Dados II Graça Nunes Árvores Binárias Paginadas (Paged Binary Trees) 8 páginas-filhas 7 registros por página (por seek); Árvore de altura 2 e ordem
Leia maisSumário. Definição do Plano de Execução
Sumário 1 Introdução ao Processamento de Consultas 2 Otimização de Consultas 3 Plano de Execução de Consultas Introdução a Transações 5 Recuperação de Falhas 6 Controle de Concorrência 7 Fundamentos de
Leia mais3 Plano de Execução de Consultas
Sumário 1 Introdução ao Processamento de Consultas 2 Otimização de Consultas 3 Plano de Execução de Consultas 4 Introdução a Transações 5 Recuperação de Falhas 6 Controle de Concorrência 7 Fundamentos
Leia maisÁrvores. SCC-214 Projeto de Algoritmos. Thiago A. S. Pardo. Um nó após o outro, adjacentes Sem relações hierárquicas entre os nós, em geral
SCC-214 Projeto de Algoritmos Thiago A. S. Pardo Listas e árvores Listas lineares Um nó após o outro, adjacentes Sem relações hierárquicas entre os nós, em geral Diversas aplicações necessitam de estruturas
Leia maisESTRUTURA DE DADOS E ALGORITMOS HEAPS E LISTAS DE PRIORIDADES
ESTRUTURA DE DADOS E ALGORITMOS HEAPS E LISTAS DE PRIORIDADES Listas de Prioridades! Em muitas aplicações, dados de uma coleção são acessados por ordem de prioridade! A prioridade associada a um dado pode
Leia maisCapítulo 8: Abstrações de dados
Capítulo 8: Abstrações de dados Ciência da computação: Uma visão abrangente 11a Edition by J. Glenn Brookshear Copyright 2012 Pearson Education, Inc. Estruturas de dados básicas Matriz homogênea Matriz
Leia maisÁrvores-B + SCC-503 Algoritmos e Estruturas de Dados II. Thiago A. S. Pardo Cristina Dutra de Aguiar Ciferri
Árvores-B + SCC-503 Algoritmos e Estruturas de Dados II Thiago A. S. Pardo Cristina Dutra de Aguiar Ciferri Acesso Seqüencial Indexado Alternativas (até o momento) acesso indexado arquivo pode ser visto
Leia maisProfa. Dra. Cristina Dutra de Aguiar Ciferri. Estruturas de Indexação de Dados
Estruturas de Indexação de Dados Cristina Dutra de Aguiar Ciferri Índice Estrutura de acesso auxiliar usada para melhorar o desempenho na recuperação de registros Pesquisa restringida a um subconjunto
Leia maisÁrvores e Mapas. Luís Lopes. Estruturas de Dados DCC-FCUP
Árvores e Mapas Luís Lopes DCC-FCUP Estruturas de Dados Estruturas não lineares Os arrays e as listas são exemplos de estruturas de dados lineares, cada elemento tem: um predecessor único (excepto o primeiro
Leia maisHashing Externo. SCC-503 Algoritmos e Estruturas de Dados II. Thiago A. S. Pardo M.C.F. de Oliveira Cristina Ciferri
Hashing Externo SCC-503 Algoritmos e Estruturas de Dados II Thiago A. S. Pardo M.C.F. de Oliveira Cristina Ciferri 1 Hashing 0 1 chave de busca K = LOWELL 2 h(k) endereço 4 (RRN 4) 3 4 5... LOWELL......
Leia maisO acesso aos elementos é aleatório, isto é, qualquer elemento numa colecção pode ser acedido realizando uma pesquisa pela chave.
DICIONÁRIOS São assim designadas as colecções de elementos em que cada elemento tem um campo chamado chave e não existem valores de chaves repetidos. As operações características que permitem a sua manipulação
Leia maisOrdenação e Busca em Arquivos
Ordenação e Busca em Arquivos Cristina D. A. Ciferri Thiago A. S. Pardo Leandro C. Cintra M.C.F. de Oliveira Moacir Ponti Jr. Exemplos de Busca Registros de tamanho fixo M A R I A R U A b 1 S A O b C A
Leia maisÁrvores B. Definição: Seja t a ordem da árvore B. Uma árvore B de ordem t é uma árvore ordenada que é vazia, ou que satisfaz as seguintes condições:
Árvores B IFRN/RN Árvores B Criadas por Bayes e McCreight em 1972 Em algumas aplicações a quantidade de dados é muito grande para que as chaves possam ser armazenadas somente em memória É necessário o
Leia maisÁrvores-B: Remoção. Cristina Dutra de Aguiar Ciferri Thiago A. S. Pardo
Árvores-B: Remoção Cristina Dutra de Aguiar Ciferri Thiago A. S. Pardo Desempenho da Árvore-B Baseado em suas propriedades 2 cada página, exceto a raiz e as folhas, possui no mínimo m/2 descendentes à
Leia maisÁrvore-B + Profa. Dra. Cristina Dutra de Aguiar Ciferri
Árvore-B + Profa. Dra. Cristina Dutra de Aguiar Ciferri Acesso Sequencial Indexado Alternativas (até o momento) acesso indexado o arquivo pode ser visto como um conjunto de registros que são indexados
Leia maisÁrvores Equilibradas. Sumário
Árvores Equilibradas Sumário Splay Vermelho Preto AA e BB Multidimensionais quaternárias k d Pesquisa Lexicográfica tries multivia tries binárias PATRICIA Árvores Equilibradas Sumário Árvores AVL Árvores
Leia maisTabelas de dispersão/hash
Tabelas de dispersão/hash 1 Tabelas de dispersão/hash 1. Considere uma tabela de hash de tamanho m = 1000 e a função de hash h(k)= [m.(k.a % 1)], com A=( 5-1)/2. Calcule os valores de hash das chaves 61,
Leia maisEdital de Seleção 024/2017 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões
Edital de Seleção 024/2017 PROPESP/UFAM Prova de Conhecimento Caderno de Questões CANDIDATO: «Nome» INSCRIÇÃO: «Inscrição» Assinatura conforme identidade INSTRUÇÕES PARA O CANDIDATO: Verifique o seu nome
Leia maisÁRVORES E ÁRVORE BINÁRIA DE BUSCA
ÁRVORES E ÁRVORE BINÁRIA DE BUSCA Prof. André Backes Definição 2 Diversas aplicações necessitam que se represente um conjunto de objetos e as suas relações hierárquicas Uma árvore é uma abstração matemática
Leia mais8. Árvores. Fernando Silva DCC-FCUP. Estruturas de Dados. Fernando Silva (DCC-FCUP) 8. Árvores Estruturas de Dados 1 / 38
8. Árvores Fernando Silva DCC-FCUP Estruturas de Dados Fernando Silva (DCC-FCUP) 8. Árvores Estruturas de Dados 1 / 38 Árvores - estruturas não lineares (1) Uma lista é um exemplo de uma estrutura de dados
Leia mais8. Árvores. Fernando Silva. Estruturas de Dados DCC-FCUP. Fernando Silva (DCC-FCUP) 8. Árvores Estruturas de Dados 1 / 38
8. Árvores Fernando Silva DCC-FCUP Estruturas de Dados Fernando Silva (DCC-FCUP) 8. Árvores Estruturas de Dados 1 / 38 Árvores - estruturas não lineares (1) Uma lista é um exemplo de uma estrutura de dados
Leia maisÁrvores B Partes I e II
Estruturas de Dados Prof. Ricardo J. G. B. Campello Árvores B Partes I e II Motivação & Construção Bottom-Up Adaptado e Estendido dos Originais de: Leandro C. Cintra Maria Cristina F. de Oliveira A Invenção
Leia maisPesquisa binária em árvores-b + Índices em SQL
Pesquisa binária em árvores-b + K= 5 5 K=9 7 8 5 6 7 8 9 Bases de Dados Fernando Silva / Departamento de Ciência de Computadores Índices em SQL criar um ficheiro de índices sobre um atributo de uma dada
Leia mais