ESTRUTURAS PARA ARMAZENAR E INDEXAR DADOS MULTIMÍDIA UM ESTUDO COMPARATIVO

Tamanho: px
Começar a partir da página:

Download "ESTRUTURAS PARA ARMAZENAR E INDEXAR DADOS MULTIMÍDIA UM ESTUDO COMPARATIVO"

Transcrição

1 Resumo: ESTRUTURAS PARA ARMAZENAR E INDEXAR DADOS MULTIMÍDIA UM ESTUDO COMPARATIVO Danielle da Costa Filgueiras Albuquerque Mestrado em Informática Aplicada MIA Angelo Brayner Universidade de Fortaleza UNIFOR Com o avanço da tecnologia, que outrora foi um empecilho para manipulação de dados multimídia, vê-se cada vez mais a potencialidade de se usar tais tipos de dados. Para tal, faz-se necessário armazenar e indexar dados em um banco de dados multimídia da melhor forma possível. Este trabalho tem como principal objetivo apresentar e comparar 11 estruturas de acesso a dados multimídia, mostrando suas vantagens e desvantagens. Estas estruturas são: Faixa Regular com Chaves de Localização, Chaves de Localização, Hashing Extensível, Hashing PLOP, Árvore Quadrante, Árvore KD, Árvore 4D, Árvore R, Árvore R +, Árvore Célula e Snapshot. Ao final, será apresentado um resumo comparativo das diversas estruturas apresentadas, analisando qual a mais eficiente em todos os aspectos. Abstract: With the advance of the technology, that long ago was one difficulty for manipulation of data multimedia, one more sees the each potentiality of using such types of data. For such, one becomes necessary to store and to index given in a data base multimedia of the best possible form. This work has as main objective to present and to compare 11 structures of access the data multimedia, showing to its advantages and disadvantages. These structures are: Regular band with Keys of Localization, Keys of Localization, Extensible Hashing, PLOP Hashing, Quad-Tree, KD-Tree, 4D-Tree, R-Tree, R + -Tree, Cell Tree and Snapshot. To the end, a comparative summary of the diverse presented structures will be presented analyzing which the most efficient in all aspects. Introdução O termo multimídia refere-se aos múltiplos meios através dos quais a informação é armazenada, transmitida, apresentada ou percebida. Sistemas de banco de dados multimídia são sistemas utilizados para armazenar e gerenciar dados multimídia. Tais sistemas têm as mesmas funcionalidades gerais de qualquer sistema de banco de dados com a diferença de terem que gerenciar dados multimídia. O objetivo deste trabalho é fazer uma análise comparativa entre diversas estruturas de acesso aos dados multimídia. A forma como ocorre o processamento e otimização de consultas em cada uma das estruturas, o local de armazenamento e a forma de

2 6 Rev. Cient. Fac. Lourenço Filho - v.3, n.1, 2003 armazenar cada uma delas. Quais as mais vantajosas quando se tem pouco espaço em memória, ou quando se tem memória suficiente. Quais as mais rápidas, as mais confiáveis e qual das estruturas tem mais vantagem diante das demais. Sistemas de Banco de Dados Multimídia Conceitos Básicos Um tipo de dado é representado através de uma estrutura de dados e as operações que podem ser executadas sobre ele. Para que um banco de dados multimídia reconheça um tipo de dado, este banco deve permitir que um usuário do mesmo possa executar operações de leitura e gravação sobre este tipo. Em um banco de dados multimídia, os tipos suportados são: texto, imagens, objetos gráficos, vídeo, áudio e dados espaciais. Uma estrutura de armazenamento para um banco de dados multimídia deve suportar qualquer tipo de dado multimídia, sem restrições de tamanho, ou a quantidade destes dados. Tal estrutura deve armazenar e organizar os dados para um acesso posterior. Uma instância de mídia representa um dado armazenado no banco de dados multimídia. O corpo da mídia descreve a forma de armazená-la, o local de armazenamento e suas funções. As informações de cada mídia se apresentam na forma de atributos. A forma como as informações são mostradas é apresentada através de relacionamentos entre os atributos em um dado instante. Cada mídia apresenta ainda uma lógica de programação, onde estão representados os relacionamentos entre os atributos e as funções de transição de estados. Estas funções determinam o momento da transição de um estado para o outro. A linguagem de consulta, em um banco de dados multimídia, é composta por quatro símbolos não lógicos: constantes, funções, variáveis e predicados. As variáveis livres são as que dependem dos predicados. Quanto à apresentação da mídia, ela ocorre como uma seqüência de eventos, onde tal seqüência mostra como diferentes eventos de mídia mudam ao longo do tempo. Um evento de mídia fornece uma visão global de diversas mídias em um determinado intervalo de tempo. Um evento de mídia deve ser totalmente sincronizado, ou seja, quando um áudio estiver rodando, o respectivo vídeo deve estar também. Uma apresentação de mídia ajuda na sincronização de diferentes eventos de mídia, onde cada evento tem uma sincronização de diferentes mídias. Um exemplo de uma apresentação de mídia sincronizada pode ser vista quando um evento de vídeo ocorre onde um cantor abre e fecha a boca ao mesmo tempo em que um evento de áudio ocorre. Para o usuário, fica transparente e aparentemente o clipe é armazenado todo junto, mas na verdade o áudio é armazenado em um local e o vídeo em outro. No momento da consulta, ocorre a sincronização e ambos são mostrados como resposta. Para garantir que as consultas sejam sincronizadas uma após a outra, uma consulta deve ser forçada de alguma forma por um certo período. A sincronização garante que um evento de mídia para a consulta Qi+1 inicia imediatamente depois do evento de mídia satisfizer a consulta Qi.

3 Rev. Cient. Fac. Lourenço Filho - v.3, n.1, Armazenamento e Indexação de Dados Multimídia A seguir, são descritas e analisadas as principais propostas de estruturas de indexação para dados multimídia. Faixa Regular com chaves de Localização Este método é baseado em subdivisões do espaço regular recursivamente. O plano é subdividido em quatro subquadrantes chamados NO, NE, SO, SE. Para cada subquadrante são associadas às chaves 00, 01, 10, 11, respectivamente. O plano é então particionado recursivamente até certo nível ser alcançado. Os subquadrantes obtidos no último nível de partição são descriminados de célula. Em cada passo do particionamento as chaves dos subquadrantes são gerados em uma função das chaves do quadrante anterior. Considere a figura ao lado. A partição de quad(01) gera as seguintes quatro chaves para seu subquadrante: 0100, 0101, 0110 e Note que o nível de recursão que deve ser alcançado é o tamanho da chave. Uma vantagem desta organização é o baixo custo de navegação entre as células, pois essa navegação sempre é realizada seguindo uma ordem pré-estabelecida Chaves de Localização Figura 1 - Faixa Regular com chaves de Localização As chaves de localização usam um esquema similar à árvore quadrante CIF que foi proposta por Abel e Smith [4]. A árvore quadrante divide o espaço em quatro subquadrantes iguais. Para cada subquadrante de uma árvore deste tipo, associa-se a uma só chave numérica que consiste na seqüência de cinco dígitos. Ou seja, a chave K de um subespaço de nível h pode ser derivada da chave (k ) de um subespaço anterior pela seguinte fórmula: K K + 5m h se K está no quadrante sudoeste e é filho de K K + 2 * 5m h se K está no quadrante noroeste e é filho de K K + 3 * 5m h se K está no quadrante sudeste e é filho de K

4 8 Rev. Cient. Fac. Lourenço Filho - v.3, n.1, 2003 K + 4 * 5m h se K está no quadrante nordeste e é filho de K, onde m = 3 e h pode ser de 1 a 3. Aqui m é o número máximo de níveis de decomposição, que é maior que K. O espaço total tem sua chave como 5m. A figura a seguir ilustra um exemplo de chave de base 5, onde o maior nível de decomposição é 3. Primeiramente, o espaço que tem como chave o valor 1000 se subdivide em 4 outros subespaços com valores 1100, 1200, 1300 e Em seguida, ocorrem mais quatro subdivisões, onde o espaço 1100 se subdivide em 1110, 1120, 1130, 1140, o subespaço 1200 se subdivide em 1210, 1220, 1230, 1240 e assim com os demais subespaços. Para determinar uma chave de um retângulo, é usado o menor espaço que envolve o retângulo. O problema inerente a esta determinação é que um objeto pode ser muito menor que o quadrante associado. Para aliviar o problema, uma técnica de decomposição é usada em [4], onde um retângulo pode ser representado por um dos quatro quadrantes adjacentes. A árvore B + é usada para indexar objetos associados com suas chaves de localização. Para uma pesquisa com interseção de objetos, todos os quadrantes que interceptam a região de consulta devem ser vasculhados. A maior vantagem do uso das chaves de localização é que estruturas de árvore B + são largamente suportadas por um DBMS convencional. A determinação de chaves de localização para objetos espaciais é um mapeamento de objetos de um espaço dimensional K para um espaço bidimensional. A implementação é simples e índices convencionais podem ser usados para indexar objetos. Assim, a pesquisa pode ser eficiente Hashing Extensível Figura 2 Chaves de Localização A organização do Hashing Extensível usa uma função h que determina o valor de k para tal chave, retornando um bit string k, chamado de valor de pseudo-chave, que é h(k) = k. Esta organização é baseada em dois níveis: diretório e pastas. As pastas contêm pares da forma (k,i(k)) é a associada (registro ou ponteiro para registro). O diretório tem um cabeçalho, denotado como profundidade (p), que determina o número de bits da pseudo-chave. Cada

5 Rev. Cient. Fac. Lourenço Filho - v.3, n.1, entrada em um diretório é endereçada pelo uso do primeiro bit p da pseudo-chave. A entrada correspondente para um valor k da pseudo-chave contém a referência para uma pasta armazenada, onde os primeiros bits p da pseudo-chave são iguais a k. Há um número total de 2p referências por diretório para uma pasta. Toda pasta é identificada por um parâmetro local (L). Para uma pasta, L indica que todos os registros armazenados nela têm o primeiro bit L da pseudo-chave. A figura a seguir tem uma estrutura de Hashing Extensível. O diretório tem profundidade p=3. Considerando dois objetos tendo valores de chaves k0 e k1, respectivamente, tal que h(k0) = e h(k1) = estes objetos serão armazenados na mesma pasta. Ou seja, no diretório, as células correspondentes a 000 e 001 referenciam a mesma pasta e conseqüentemente a mesma página em disco. O Hashing Extensível é bem usado para armazenar um grid onde as células são endereçadas por chaves de localização. Nesta situação, a chave de localização das células pode ser usada não apenas como chave para o hashing, mas também como pseudo-chave. O armazenamento da informação é eficiente porque as células do mesmo espaço, tendo a mesma informação, podem ser armazenadas na mesma página. A principal vantagem nesta técnica é custo de acesso a uma célula do grid. Ocorrem normalmente dois acessos ao disco: um para pegar a página do diretório e um para pegar a página onde está a pasta com a informação. Além disso, o primeiro acesso é normalmente desnecessário. Isso ocorre porque, devido ao seu pequeno tamanho, o diretório pode ser deixado na memória principal. Outra vantagem desta técnica é o tratamento de overflow de página. Quando ocorre um overflow, ele é suficiente na maioria dos casos para alocar uma página adicional e redistribuir os registros entre a nova página originada do overflow. O funcionamento do hashing inicia com somente uma célula (tamanho fixo), quando esta célula estiver cheia e um novo registro for inserido, uma nova célula é criada. Assim, os registros do arquivo inicial são distribuídos nas duas células com base no valor do primeiro bit (mais à esquerda) do seu valor de hash, ou seja, registros com bit inicial igual a 0 são armazenados na célula com endereço 0 e registros com bit inicial igual a 1 são armazenados na célula com endereço 1. Ao final desse processo, uma árvore binária (diretório) é construída. Diretório Área de Dados Nível 3 2 Nível Local 000 h(k) = Nível Local 010 h(k) = Nível Local h(k) = Nível Local h(k) = 1 Figura 3 - Hashing Extensível

6 10 Rev. Cient. Fac. Lourenço Filho - v.3, n.1, 2003 Hashing PLOP O método aqui proposto é um esquema de hashing dinâmico multidimensional baseado na preservação linear do hashing PLOP (Piece Wise Linear Preserving). Como nos grids files em [4] o espaço do dado é particionado por um grid ortogonal. Assim, ao invés de usar escalas para definir hiperplanos particionados entre cada dimensão, árvores binárias k são usadas para um espaço dimensional k. Cada nó interno da árvore binária armazena um hiperplano particionado de dimensão k 1. x=1x1 x=ux1 x=1x2 x=1x3 x=ux2 x=1x4 x=ux3 x=ux4 y=uy3 r1 P1 r2 r4 y=uy2 Objetos Espaciais P4 r3 P11 y=1y3 y=uyx1 r6 r7 r8 P7 r9 r5 P5 y=1x2 P6 P9 y=1y1 P10 P8 Figura 4 - Hashing PLOP y1 1y2 1y3 1x1 1x2 1x3 1x4 uy1 uy2 uy3 ux1 ux2 ux3 ux4 Figura 5 - Árvore Binária do Hashing PLOP

7 Rev. Cient. Fac. Lourenço Filho - v.3, n.1, Cada nó esquerdo da árvore binária é associado com um subespaço dimensional k, onde o intervalo entre os eixos que ele está associado é um subintervalo e os outros k 1 intervalos assumem os intervalos do espaço global. Cada pedaço é endereçado por um índice i armazenado no nó esquerdo. Para cada célula, uma página é alocada para armazenar todos os pontos que estão no mesmo subespaço particionado. A partir dos índices armazenados nas árvores binárias k, o mesmo subespaço particionado. A partir dos índices armazenados nas árvores binárias k, o endereço da página pode ser calculado. A implementação de hashing PLOP apresentada em [8] assume que as árvores binárias ficam na memória principal. Foi apresentado em [8] que hashing PLOP é mais eficiente que árvore R [9] e árvore R + [9] para certas distribuições de objetos espaciais. Árvore Quadrante A árvore quadrante CIF [5,6] propôs uma representação de um conjunto de pequenos retângulos para aplicações VLSI. Uma região é recursivamente particionada até não conseguir conter mais nenhum retângulo. Durante a subdivisão, todos os retângulos que se interceptam entre as células de partição estão associados com o ponto de subdivisão. Os retângulos que estão associados com um quadrante não devem pertencer a nenhum outro quadrante. Isso evita a sobrecarga de retângulos. Um pesquisa feita na árvore CIF deve iniciar no nó raiz e examinar os retângulos associados a este nó. Os nós filhos só são visitados se os quadrantes interceptarem a região de consulta. Para inserir um retângulo, cada subdivisão (nó) que armazena o quadrante é checada. Se um dos eixos do quadrante passar por um retângulo, o retângulo é inserido no nó. Por outro lado, o nó filho que armazena o quadrante que contém o retângulo é procurado. Se o quadrante não tem qualquer filho e o retângulo não foi inserido, então o processo de subdivisão recursiva de quadrantes recomeça. A exclusão de um nó é uma contrapartida de divisões de nós durante a inserção, onde o desaparecimento total da árvore pode ocorrer. Árvore 4D A árvore KD pode ser usada para indexar objetos retangulares num plano bidimensional através do mapeamento de objetos em partes no espaço de dimensão 4 [10]. Cada retângulo num plano bidimensional descriminado por (x1, y1) e (x2, y2) é tratado por uma tupla de quatro atributos (x1,y1,x2,y2). Os descriminadores são usados ciclicamente e os nós do mesmo nível usam o mesmo descriminador. Em [10], as características envolvidas no mapeamento da estrutura de dados dentro das páginas na memória secundária não foram endereçadas. O mesmo esquema para árvore KDB [11] foi sugerido por Banerjee e Kim [12]. A estrutura é conhecida como árvore 4D. O maior problema associado à estrutura de árvore 4D é a pesquisa de intersecção, que pode ter um custo muito alto. Suponha que o retângulo de busca seja (qx1, qy1, qx2, qy2). Se o descriminador do nó interno é x1, então a subárvore da esquerda é pesquisada se qx2 é menor que x1, senão ambas as subárvores devem ser pesquisadas. Igualmente para cada nó onde o

8 12 Rev. Cient. Fac. Lourenço Filho - v.3, n.1, 2003 descriminador é x2, a subárvore direita é pesquisada se qx1 é maior que x2, senão ambas as subárvores são pesquisadas. O mesmo argumento se aplica ao eixo dos y. Árvore KD de Matsuayama Enquanto a maioria das árvores KD é conhecida por sua indexação de objetos, a árvore KD na figura a seguir proposta por Matsuayama [] é projetada para objetos num plano espacial bidimensional e é baseada na duplicação de identificadores de objetos. Para diferenciar esta organização de árvore KD de outra organização de árvore KD, nós chamamos a árvore KD Matsuayama de árvore MKD. Os nós direitos têm um descriminador (uma ordem), um valor descriminado (um valor ordenado) e dois ponteiros, cada um apontando para uma subárvore. Os nós esquerdos têm um endereço da página secundária. Cada página contém os identificadores dos objetos. Estes identificadores podem estar parcial ou totalmente incluídos nos subespaços correspondentes, conseqüentemente, tais identificadores podem ser duplicados em uma ou mais páginas. Como na figura a seguir, o objeto r8 está duplicado em 3 subespaços diferentes. Cada nó em uma árvore MKD representa uma região retangular. O nó raiz representa todo o espaço e o nó esquerdo representa um subespaço retangular não particionado. Um algoritmo recursivo é usado para pesquisar cada objeto: para cada nó direito, as coordenadas do próximo subespaço são obtidas e um teste é feito para determinar qual destes subespaços intercepta a região de consulta. Quando um nó esquerdo é alcançado, a página associada é usada e o teste espacial é feito para cada objeto. Para adicionar um objeto, o identificador do objeto precisa ser inserido em todas as páginas que contêm os subespaços que se interceptam com os objetos. Isso é pouco comum, os identificadores dos objetos podem ser duplicados em mais que uma página, particularmente quando os tamanhos dos objetos são grandes. (x, 11, ) (y, 12, ) (y, 14, ) (x, 13, ) Ponteiro de página (x, 16, ) R P2 P3 R R P5 R P11 (y, 15, ) R R P6 P8 P9 P10 R P7 Figura 6 - Estrutura da Árvore KD

9 Rev. Cient. Fac. Lourenço Filho - v.3, n.1, Contudo, quando ocorre um overflow de página a mesma é dividida com uma parte sendo introduzida ao lado do retângulo. O subespaço é particionado e as duas novas páginas contêm todos os objetos que se interceptam com seus subespaços. Para excluir um objeto, é necessário pesquisar todos os subespaços não particionados que se interceptam com os objetos e excluir todos os identificadores que apontam para estes objetos. Se a exclusão de um objeto tornar uma página vazia, o nó esquerdo correspondente é marcado como nulo. As páginas vazias não são misturadas. Esta é uma das estruturas indexadas que resolve o problema de replicação. A replicação armazena os objetos diretamente no nó esquerdo, podendo ocorrer muitas redundâncias no armazenamento. Assim, identificadores de objetos são normalmente armazenados em vários nós esquerdos e os objetos são armazenados apenas uma vez no arquivo externo. X=11 r1 P1 r2 Y=14 Y=12 r5 P5 r6 P4 r7 r3 P6 r8 P7 r9 P9 P10 r4 P11 Y=15 P8 X=13 X=16 Figura 7 - Espaço particionado Segundo a Técnica de Árvore KD Árvore R A árvore R é uma generalização da árvore B multidimensional e, portanto, é balanceada. Assim, como a árvore B, a divisão de nós pode ser necessária na inserção e exclusão de objetos. O nó esquerdo contém entradas do tipo [i, id-objeto] onde id-objeto é um ponteiro para um objeto e i é um retângulo de dimensão K, onde este objeto se encontra. O nó direito contém entradas do tipo [i, ponteiro filho] onde o ponteiro filho é endereço do nó de nível mais baixo na árvore R e i pe o retângulo dentre todos que estão no nó de nível mais baixo da subárvore. A figura a seguir mostra a estrutura da árvore R. Para localizar todos os objetos que interceptam o retângulo da consulta, o algoritmo de pesquisa inicia no nó raiz. Para todos os retângulos no nó direito que interceptam o objeto da pesquisa, o ponteiro filho correspondente da raiz da subárvore irá ser pesquisa subseqüentemente. Para inserir um objeto, a árvore é pesquisada e todos os nós direitos de todos os retângulos são examinados. Há uma restrição: o retângulo que precisa aumentar menos para caber o novo objeto é escolhido, o de menor área é escolhido se mais de um retângulo estiver

10 14 Rev. Cient. Fac. Lourenço Filho - v.3, n.1, 2003 dentro deste critério. Os nós na subárvore indexada pela entrada selecionada são examinados recursivamente. Regra de formação: cada nó tem até n 2 com n entradas do tipo [i, ponteiro filho]. R R R R R R R R r1 P1 P4 r5 R P5 r2 r3 P2 P3 r4 P11 r9 R P7 P6 r8 P8 P9 P10 Figura 8 - Estrutura da Árvore R Uma vez que o nó esquerdo é obtido, a inserção é feita se o nó esquerdo não estiver ocupado. Se, assim for, o nó esquerdo precisa se dividir caso fique sobrecarregado depois da inserção. Para cada nó pesquisado, o retângulo que o contém é reajustado à entrada do nó. Para uma nova divisão de nó, uma entrada com um retângulo que é grande o suficiente para todas as entradas do novo nó é inserido no nó parente se houver lugar no mesmo. Para remover um objeto, a árvore é rastreada e cada nó direito é verificado para determinar se o objeto está no retângulo. R1 r1 P1 R6 r2 P4 R3 r3 r5 P5 r6 R4 r7 P6 R5 r8 P7 R7 r9 P9 P10 r4 P11 P8 R2 R8 Figura 9 - Espaço particionado Segundo a Técnica da Árvore R

11 Rev. Cient. Fac. Lourenço Filho - v.3, n.1, A exclusão de um objeto pode causar um esvaziamento do nó esquerdo. Neste caso, o nó precisa ser excluído e todas as entradas sobrando são reinseridas a partir da raiz. Igualmente à divisão de nós, a exclusão de uma entrada pode causar futuras exclusões de nós em níveis mais acima. Assim, entradas provenientes de exclusões em um nível podem ser re-inseridas nos nós do mesmo nível da árvore. Exclusão de objetos pode modificar entradas no nó anterior das partes do retângulo. Assim, é preciso fazer um reajuste nestas entradas. Na pesquisa, a decisão de visitar a subárvore depende de qual retângulo está sendo pesquisado sobre a região de consulta. É muito comum que centenas de retângulos armazenem o esmo nó da árvore R sobre uma região de consulta no rastreamento de centenas de subárvores. Dessa forma, a diminuição de sobrecarga nos retângulos vale a pena, pois os mesmos têm uma importância essencial na construção da árvore R. O algoritmo ordena os objetos entre um dos eixos usando o menor valor de MBR. Então, o algoritmo escolhe o primeiro objeto da lista e o usa, seleciona o objeto mais próximo m-1 para formar um nó, onde m é o número máximo de objetos ou entradas a serem armazenadas na página. O processo é repetido até que todos os objetos ou entradas tenham sido armazenados na página. O espaço vazio envolve todos os objetos que estão no nó esquerdo, tornando um objeto no próximo nível mais alto. Estes objetos são novamente ordenados e destinados a nós da mesma forma. O algoritmo pára quando o conjunto de objetos não tem mais que m elementos. Estes são destinados ao nó raiz da árvore R. Árvore R + A árvore R + está entre a árvore R e a árvore KDB [9] e foi proposta para resolver o problema de sobrecarga de retângulos dos nós internos da árvore R. A estrutura da árvore R + é exatamente a mesma da árvore R, contudo as restrições são levemente diferentes: Os nós da árvore R + não garantem preencher nem a metade da mesma; As entradas de qualquer nó intermediário não se sobrecarregam; Um objeto identificado pode ser armazenado em mais de um nó esquerdo. A duplicação de ponteiros de objetos não permite que haja sobrecarga. Na pesquisa, as subárvores são pesquisadas somente se os retângulos correspondentes interceptarem a região de consulta. Retângulos que não se interceptam evitam múltiplos caminhos de pesquisa da subárvore até os pontos de consulta. Para inserir um objeto, vários caminhos podem ser percorridos. Em um nó para todas as entradas que convergem para retângulos que se interceptam com o objeto, as subárvores das entradas devem ser percorridas. Ao alcançar os nós esquerdos, o identificador do objeto será armazenado no nó esquerdo; vários nós esquerdos podem armazenar o mesmo identificador do objeto. Um problema sério é que às vezes retângulos não permitem que outros se expandam para inclusão de um novo objeto. Para evitar tal situação, procurou-se uma estratégia para achar entradas para incluir objetos. A estratégia deve garantir não deixar espaços vazios. Alternativamente, como sugerido em [15], o critério para o qual os retângulos são escolhidos para envolver um objeto segue o que foi proposto por Guttman [16]

12 16 Rev. Cient. Fac. Lourenço Filho - v.3, n.1, 2003 Quando um objeto não pode ser mais usado, um ou mais retângulos são divididos. Isso significa que a divisão pode causar entradas filhos para serem divididas também. Isto depois pode ser ruim para a eficiência do armazenamento. R1 R2 R3 R4 R5 R6 R6 R7 R8 R10 R1 P1 P4 r2 r3 r3 P2 P3 P11 r4 r5 P6 P5 r8 r9 Figura 10 - Estrutura da Árvore R + Durante a inserção, se o nó esquerdo estiver ocupado, uma divisão é necessária. A divisão tenta reduzir a duplicação e identificadores. Enquanto a divisão do nó esquerdo pode propagar subidas para a raiz da árvore, a divisão do nó direito pode propagar descidas para as folhas. R1 r1 P4 R3 P1 R4 r3 r7 R5 R9 R2 r2 r9 R7 P11 R5 R6 r4 P6 P7 P9 P10 R8 r6 r5 P5 R10 P8 Figura 11 - Espaço particionado segundo a Técnica de Árvore R +

13 Rev. Cient. Fac. Lourenço Filho - v.3, n.1, Árvore Célula Baseado em árvores que particionam o espaço binário [5], esta estrutura alivia o problema de sobrecarga de retângulos em árvores R e os problemas de espaços vazios em árvores R +. Árvores que particionam o espaço binário são árvores binárias que representam uma subdivisão recursiva do espaço subespaços. A árvore célula é uma árvore balanceada, de forma que os hiperplanos particionados nesta árvore não podem usar qualquer eixo paralelo. Esta árvore tem como resultado subespaços particionados chamados de poliedros. No nó interno da árvore célula o polígono é um poliedro convexo. Os filhos de cada nó forma uma partição do espaço binário do nó. Partições não sobrecarregam um nó com retângulos ou qualquer polígono. Com o fato dos poliedros poderem requerer diferentes números de pontos para representá-los, é difícil para a árvore célula afirmar o número de entradas em uma faixa do espaço binário. Uma inserção pode causar um nó sobrecarregado. Quando uma página não pode ser dividida, um nó pode ocupar mais que uma página. Esta é geralmente a intenção do algoritmo, limitar a cada página um só nó. Snapshot O acesso à estrutura de dados que se propõe é a combinação de algumas técnicas achadas nas estruturas de acesso especificamente desenvolvidas para dados espaciais. Tais técnicas são faixa regular com chave de localização, técnica de cluster para objetos espaciais usados na árvore R + e hashing extensível. A estrutura de Snapshot tem o mesmo nó esquerdo da árvore R +, mas troca a estrutura baseada em árvore por tabela de diretório. As entradas desta tabela são associadas com as células de uma faixa regular obrigatória dentro do espaço referenciado. Além disso, usando chaves de localização nos nomes de células, a técnica se torna mais rápida para navegar nos diretórios. A vantagem desta nova estrutura, comparada com a árvore R + é devidamente usada num esquema de faixa onde os objetos cluster estão todos de acordo com suas posições no espaço (baseado em partição). Isso permite a navegação de uma célula de faixa para a vizinha através do uso de uma função de deslocamento para as chaves de localização que representam os nomes das células. Por outro lado, objetos baseados em partição que adotam árvore sem que haja ligações entre nós no espaço envolvido. Além disso, o uso de objetos no espaço em um Snapshot evita a análise de células vazias durante a execução do algoritmo de pesquisa.

14 18 Rev. Cient. Fac. Lourenço Filho - v.3, n.1, 2003 Quadrante NO S 1 S2 A S3 S6 S5 S7 S11 C S9 B S8 E S S 1 S2 A S3 S6 S5 S7 S11 C S9 B S8 E S4 D S12 S14 S15 S13 F D S12 S14 S15 S13 F S17 S17 Figura 12: Snapshot Análise Comparativa das Estruturas de Dados para Armazenamento e Indexação de Dados Multimídia Nesta seção, é apresentado um estudo comparativo entre as estruturas analisadas na seção anterior. Tal estudo foi realizado com base nos critérios apresentados na tabela a seguir. Como resultado, de nosso estudo comparativo, podemos apresentar as seguintes considerações: Com relação à comparação das estruturas, cada uma tem uma vantagem sobre a outra. A maioria das estruturas é armazenada na memória secundária, com exceção das estruturas de Hashing[1] e Snapshot[1](aproveita esta característica do hashing extensível[1]) que ficam armazenadas em memória RAM. Com relação ao endereçamento, o mais rápido de todos os índices é o índice convencional. A função hashing é o resultado de uma função escolhida aleatoriamente de maneira que os objetos se organizem nos diretórios o melhor possível. A forma de endereçamento quadrado é devido ao fato do espaço ser sub-dividido em quatro sub-espaços. A forma mais comum de endereçamento nas estruturas em árvore é o índice em nós, no entanto eles possibilitam a sobrecarga de retângulos, o que não ocorre quando usado em endereçamento através da técnica de retângulos envolventes mínimos. As duas formas de endereçamento de hashing são muito parecidas, modificando somente a forma de se calcular o valor da função. O Hashing Extensível[1] é estático, ou seja, é sempre a mesma função. Já o Hashing PLOP[1] ou dinâmico, a função pode ser modificada de acordo com o tamanho do arquivo, o que favorece que não haja sobreposição de retângulos. As únicas estruturas que são suportadas por DBMS convencional são as de Chaves de Localização e Faixa Regular[1] com Chaves de Localização[1], por conseqüência.

15 Rev. Cient. Fac. Lourenço Filho - v.3, n.1, Todas as estruturas podem ser usadas com objetos espaciais, só que eficientemente somente os Hashings[1] e Snapshot[1]. A estrutura de Chaves de Localização[1] ajuda a estrutura de Faixa Regular[1] a endereçar melhor seus subespaços. Isso não significa que ambas devem sempre trabalhar juntas, mas se isso ocorre, melhora a eficiência. As árvores R[1] quando usam o argumento de construção estática não deixam que ocorra sobrecarga de retângulos. Isso porque com este tipo de construção, os índices são criados antes da árvore ser construída e os dados são previamente organizados. A árvore R + [1] não é eficiente quanto à pesquisa, devido a não haver sobreposição. Os objetos pertencentes a mais de um quadrante devem ser procurados em todos aqueles que eles estiverem. No entanto, não há sobreposição de retângulos, devido ao mesmo motivo. A estrutura que tem mais vantagens em relação a todos os aspectos estudados dentre todas as estruturas é o Snapshot[1], pois aproveita as vantagens da estrutura de Faixa Regular[1] com chaves de Localização[1] e as vantagens da estrutura de Hashing Extensível[1]. Assim, o Snapshot pode ficar armazenado na memória principal, tem um rápido tempo de resposta à consulta, tem um armazenamento eficiente, devido a uma estrutura de diretório e pastas aproveitada do Hashing Extensível[1]. Além disso, esta estrutura tem um acesso muito eficiente, devido à estrutura de Faixa Regular com Chaves de Localização[1]. Tabela 1 - Análise Comparativa das Estruturas de Dados para Armazenamento e Indexação de Dados Multimídia Estruturas Faixa Regular c/ Chaves de Localização Chaves de Localização Endereçamento Índices Convecionais Índices Convecionais Função Hashing + Hashing Chaves de Extensível Localização Função Hashing + Hashing PLOP Chaves de Localização Árvore Quadrado Quadrante Árvore KD Árvore R Árvore R+ Por índices nos nós Retângulos Envolventes Mínimos Retângulos Envolventes Mínimos Árvore Célula Por índices nos nós Árvore 4D Snapshot Por índices nos nós Chaves de Localização Local de Distribuição de Armazenamento Obj. Espaciais Secundária Secundária Principal Principal Secundária Secundária Secundária Secundária Secundária Secundária Principal Sobrecarga de Retângulos Suporte em Eficiência de Eficiência de DBMS Implementação Pesquisa Armazenamento convencional Eficiênte ---- Sim Simples 2 acessos ---- Razoável Não tem Sim Simples 2 acessos ---- Eficiênte Eficiênte quando ocorre Não acesso Eficiênte Eficiênte ---- Não acesso Eficiênte Razoável Evita Não Razoável ---- Não Pouco Eficiênte Usa árvore estática p/ reduzir Não Pouco Eficiênte Não tem Não Razoável Alivia o problema Não Razoável ---- Não Eficiênte Eficiênte quando ocorre Algoritmo Recursivo Algoritmo Recursivo Algoritmo Recursivo Algoritmo Recursivo Algoritmo Recursivo Algoritmo Recursivo Log 4m acessos ---- m acessos ---- Log m/2m acessos Log m/2m acessos Log 2m acessos Log 4m acessos ---- Ruim Não Simples 2 acessos Eficiênte

16 20 Rev. Cient. Fac. Lourenço Filho - v.3, n.1, 2003 Conclusão Este trabalho apresentou conceitos básicos sobre banco de dados multimídia e forneceu onze estruturas de dados para armazenar e indexar dados multimídia, fazendo um estudo comparativo entre elas com relação ao local de armazenamento, a forma de endereçamento de cada uma das estruturas, se cada uma delas é suportada ou não por DBMS convencional, se a forma de implementação destas estruturas é simples ou complexa, quão eficiente é a pesquisa feita ao dado no banco, qual a eficiência do armazenamento, como cada uma delas trata a sobrecarga de retângulos, como ocorre a distribuição de objetos em cada estrutura, bem como qual é a forma de endereçamento delas. Bibliografia [1] FILGUEIRAS, C. DANIELLE. Estruturas para Armazenar e Indexar Dados Multimídia Um estudo Comparativo, [2] ADALIk, S. and SubRAHMANIAN. Amalgamating Knowledge Bases, II; Algoritms, Data Structures and Query Processing, Univ.of Manryland CS-Tr-3124,Aug [3] CARDENAS, A.F.et al. The Knlwledge-Based Object-Oriented PICQUERY + Language, IEEE Trans. On Knowledge and Data Engineering, 5,4, p ,1993. [4]. ABEL, D.J.; SMITH, J. L. A data structure and query algorithm for a database of real entities. Aust. Comp. J. 16,4, ,1984. [5] FUSSEL, D.; KEDEM, Z. M. A silberschatz: Deadlock removal using partial rollback in database systems. Proc. ADM SIGMOD International Conf. On Management of Data, Ann 16, 1984, p [6] SAMET, H. The quadtree and related hierarchical data structures. ACM Comp Surveys 16, 1984, p [7] MATSUYANMA, T; L. HAO, V.; NAGAO M. A file organization for geographic information systems based on spatial proximity. Int. Journal Comp. Vision, Graphics and Image Processing, 26,3, p , [8] SEEGER B.; KRIEGEL, H. Techniques for design and implementation of efficient spatial access methods. Proc Fourteenth Int. Conf. On Very Large Data Bases, L. A, California, 1988, p [9] SELLIS, T. ;ROUSSOPOULOS, N.; FALOUTSOSL, C. The R + trees: A dynamic index for multidimensional objects. Proc 13 th Int. Conf. Very Large Databases. Brington, England, 1987, p [10] ROSENBERG, J. B. Geographical Data Structures Compared: A study of data structures supporting regions queries, IEEE Trans. On Comp. Aided Design CAC-4, p.53-67, [11] ROBINSON, J.T. The K-D-B-Tree: A search structure for a large multidimensional dynamic indexes. Proc. ACM SIGMOD International Conf. On Management of Data, Ann Arbor, Michigan, 1981, p [12] BARNERJEE, J.; KIM, E. Suporting VLSI geometry operations in a database system. IEEE Proc Data Engeneering Conf. Los Angeles, CA, p , 1986.

17 Rev. Cient. Fac. Lourenço Filho - v.3, n.1, [13] ROUSSOPOULOS, N.; LEIFKE, D. R. Direct Spatil Search on Pictorial Database using packed R-trees. Proc. ACM SIGMOD International Conf. On Management of Data, Austing, Texas, 1985, p [14] ROUSSOPOULOS, N.; LEIFKER, D. An Introduction to PLSQL: A pictorial structure query language. IEEE Workshop on Visual Language, Hiroshima, Japan, 1984, p [15] SELLIS, T. Private communication through ,1987. [16] GUTTMA, A. R-trees: A dynamic index structure for spatial searching. Proc. ACM SIGMOD Int. Conf. On Management of Data, Boston, MA, 1984, p

Unidade 5 Armazenamento e Indexação

Unidade 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 mais

6 Métodos de acesso para dados espaciais

6 Métodos de acesso para dados espaciais 6 Métodos de acesso para dados espaciais Clodoveu A. Davis Jr. Gilberto Ribeiro de Queiroz 6.1 Introdução Este capítulo aborda alguns dos métodos de acesso espacial mais tradicionais, denominados k-d trees,

Leia mais

Notas da Aula 17 - Fundamentos de Sistemas Operacionais

Notas da Aula 17 - Fundamentos de Sistemas Operacionais Notas da Aula 17 - Fundamentos de Sistemas Operacionais 1. Gerenciamento de Memória: Introdução O gerenciamento de memória é provavelmente a tarefa mais complexa de um sistema operacional multiprogramado.

Leia mais

Banco de Dados I 2007. Módulo V: Indexação em Banco de Dados. (Aulas 1, 2 e 3) Clodis Boscarioli

Banco de Dados I 2007. Módulo V: Indexação em Banco de Dados. (Aulas 1, 2 e 3) Clodis Boscarioli Banco de Dados I 2007 Módulo V: Indexação em Banco de Dados (Aulas 1, 2 e 3) Clodis Boscarioli Agenda: Estruturas de Índices; Conceitos; Tipos de Índices: Primários; Secundários; Clustering; Multiníveis;

Leia mais

ESTRUTURAS DE DADOS ESPACIAIS

ESTRUTURAS DE DADOS ESPACIAIS ESTRUTURAS DE DADOS ESPACIAIS Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM Estrutura de Dados II Universidade Federal de Ouro

Leia mais

Estruturas de Armazenamento e Indexação. Rafael Lage Moreira Barbosa 10.1.4217

Estruturas de Armazenamento e Indexação. Rafael Lage Moreira Barbosa 10.1.4217 Estruturas de Armazenamento e Indexação Rafael Lage Moreira Barbosa 10.1.4217 Estruturas de Armazenamento Banco de Dados são armazenados fisicamente como arquivos de registro, que em geral ficam em discos

Leia mais

Hashing Letícia Rodrigues Bueno

Hashing Letícia Rodrigues Bueno Hashing Letícia Rodrigues Bueno UFABC hash: Hashing (Tabelas de Dispersão): Introdução hash: Hashing (Tabelas de Dispersão): Introdução Hashing (Tabelas de Dispersão): Introdução hash: 1. fazer picadinho

Leia mais

Tabela de símbolos: tabelas de espalhamento

Tabela de símbolos: tabelas de espalhamento Tabela de símbolos: tabelas de espalhamento Marcelo K. Albertini 14 de Janeiro de 2014 2/28 Resumo de complexidades Análises para operação efetuada após N inserções pior caso caso médio keys chave get

Leia mais

A memória é um recurso fundamental e de extrema importância para a operação de qualquer Sistema Computacional; A memória trata-se de uma grande

A memória é um recurso fundamental e de extrema importância para a operação de qualquer Sistema Computacional; A memória trata-se de uma grande A memória é um recurso fundamental e de extrema importância para a operação de qualquer Sistema Computacional; A memória trata-se de uma grande região de armazenamento formada por bytes ou palavras, cada

Leia mais

Funções de um SO. Gerência de processos Gerência de memória Gerência de Arquivos Gerência de I/O Sistema de Proteção

Funções de um SO. Gerência de processos Gerência de memória Gerência de Arquivos Gerência de I/O Sistema de Proteção Sistemas de Arquivos Funções de um SO Gerência de processos Gerência de memória Gerência de Arquivos Gerência de I/O Sistema de Proteção 2 Sistemas Operacionais Necessidade de Armazenamento Grandes quantidades

Leia mais

Fundamentos de Sistemas Operacionais

Fundamentos de Sistemas Operacionais Fundamentos de Sistemas Operacionais Sistema de Arquivos - II Prof. Galvez Implementação de Arquivos Arquivos são implementados através da criação, para cada arquivo no sistema, de uma estrutura de dados

Leia mais

Uma comparação de algoritmos e estruturas de dados para armazenamento de dados em sistemas operacionais Palm OS *

Uma comparação de algoritmos e estruturas de dados para armazenamento de dados em sistemas operacionais Palm OS * Uma comparação de algoritmos e estruturas de dados para armazenamento de dados em sistemas operacionais Palm OS * Rogério Celestino dos Santos 1, Rodrigo Otavio Rodrigues Antunes 1* ¹Instituto de Informática

Leia mais

AULA 13 - Gerência de Memória

AULA 13 - Gerência de Memória AULA 13 - Gerência de Memória omo sabemos, os computadores utilizam uma hierarquia de memória em sua organização, combinando memórias voláteis e não-voláteis, tais como: memória cache, memória principal

Leia mais

Organizações Básicas de Arquivos

Organizações Básicas de Arquivos Estrtura de Dados II Organizações Básicas de Arquivos Prof Márcio Bueno ed2tarde@marciobueno.com / ed2noite@marciobueno.com Introdução Armazenamento de pequeno volume de dados Distribuição simples dos

Leia mais

Sistemas de Gerência de Bancos de Dados

Sistemas de Gerência de Bancos de Dados Sistemas de Gerência de Bancos de Dados - Módulo 8a - Armazenamento e Recuperação de Dados Geográficos modulo8a.prz 1 29/0 Tópicos Motivação Indexação Espacial Grid files Árvores-R e variantes Armazenamento

Leia mais

ESTRUTURAS DE DADOS II

ESTRUTURAS DE DADOS II ESTRUTURAS DE DADOS II Msc. Daniele Carvalho Oliveira Doutoranda em Ciência da Computação - UFU Mestre em Ciência da Computação UFU Bacharel em Ciência da Computação - UFJF Conteúdo Programático 1. Introdução

Leia mais

Sistema de Arquivos FAT

Sistema de Arquivos FAT Sistemas Operacionais Sistema de Arquivos FAT Edeyson Andrade Gomes www.edeyson.com.br FAT A FAT é o sistema de arquivos usado pelo MS-DOS e outros sistemas operacionais baseados em Windows para organizar

Leia mais

Prof. Daniela Barreiro Claro

Prof. Daniela Barreiro Claro Arquivos de registros Abstração do SGBD Pode ser criado, destruido e ter registros incluidos e excluidos nele Tb suporta a varredura Uma relacao geralmente é armazenada como um arquivo de registros Camada

Leia mais

Disciplina: Sistemas Operacionais - CAFW-UFSM Professor: Roberto Franciscatto

Disciplina: Sistemas Operacionais - CAFW-UFSM Professor: Roberto Franciscatto Disciplina: Sistemas Operacionais - CAFW-UFSM Professor: Roberto Franciscatto Introdução Considerações: Recurso caro e escasso; Programas só executam se estiverem na memória principal; Quanto mais processos

Leia mais

Pesquisa em Memória Primária. Prof. Jonas Potros

Pesquisa em Memória Primária. Prof. Jonas Potros Pesquisa em Memória Primária Prof. Jonas Potros Procedimento para Inserir na Árvore Binária Critérios: Atingir um ponteiro nulo em um processo de pesquisa significa uma pesquisa sem sucesso. O ponteiro

Leia mais

Árvore B UNITINS ANÁLISE E DESENVOLVIMENTO DE SISTEMAS 3º PERÍODO 43

Árvore B UNITINS ANÁLISE E DESENVOLVIMENTO DE SISTEMAS 3º PERÍODO 43 AULA A 3 ESTRUTURA RA DE DADOS Árvore B Esperamos que, ao final desta aula, você seja capaz de: identificar as vantagens da árvore B em relação às árvores binária de busca e AVL; conhecer as funções de

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Gerência de Arquivos Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Sumário Conceituação de arquivos Implementação do sistemas de arquivo Introdução Sistema de

Leia mais

DICIONÁRIOS. template class Par { public: K chave; T valor; Par():chave(),valor()

DICIONÁRIOS. template<class K,class T> class Par { public: K chave; T valor; Par():chave(),valor() DICIONÁRIOS Esta estrutura inclui-se nos chamados contentores associativos, que não são mais do que uma colecção de estruturas de tipo Par, com dois membros de dados (chave de pesquisa e valor associado),

Leia mais

Árvores Binárias de Busca

Árvores Binárias de Busca Árvores Binárias de Busca Uma Árvore Binária de Busca T (ABB) ou Árvore Binária de Pesquisa é tal que ou T = 0 e a árvore é dita vazia ou seu nó contém uma chave e: 1. Todas as chaves da sub-árvore esquerda

Leia mais

Sistemas de Ficheiros. Ficheiros Diretórios Implementação de sistemas de ficheiros Exemplos de sistemas de ficheiros

Sistemas de Ficheiros. Ficheiros Diretórios Implementação de sistemas de ficheiros Exemplos de sistemas de ficheiros Sistemas de Ficheiros Ficheiros Diretórios Implementação de sistemas de ficheiros Exemplos de sistemas de ficheiros 1 Armazenamento de Informação de Longo Prazo 1. Deve armazenar grandes massas de dados

Leia mais

Notas da Aula 4 - Fundamentos de Sistemas Operacionais

Notas da Aula 4 - Fundamentos de Sistemas Operacionais Notas da Aula 4 - Fundamentos de Sistemas Operacionais 1. Threads Threads são linhas de execução dentro de um processo. Quando um processo é criado, ele tem uma única linha de execução, ou thread. Esta

Leia mais

Árvores Binárias Balanceadas

Árvores Binárias Balanceadas Árvores Binárias Balanceadas Elisa Maria Pivetta Cantarelli Árvores Balanceadas Uma árvore é dita balanceada quando as suas subárvores à esquerda e à direita possuem a mesma altura. Todos os links vazios

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Aula 13 Gerência de Memória Prof.: Edilberto M. Silva http://www.edilms.eti.br Baseado no material disponibilizado por: SO - Prof. Edilberto Silva Prof. José Juan Espantoso Sumário

Leia mais

Banco de Dados 1 Prof. MSc Wagner Siqueira Cavalcante

Banco de Dados 1 Prof. MSc Wagner Siqueira Cavalcante Banco de Dados 1 Programação sucinta do curso:. Conceitos fundamentais de Banco de Dados.. Arquitetura dos Sistemas Gerenciadores de Banco de Dados (SGBD ou DBMS).. Características típicas de um SGBD..

Leia mais

Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri. Banco de Dados Processamento e Otimização de Consultas

Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri. Banco de Dados Processamento e Otimização de Consultas Processamento e Otimização de Consultas Banco de Dados Motivação Consulta pode ter sua resposta computada por uma variedade de métodos (geralmente) Usuário (programador) sugere uma estratégia para achar

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais SISTEMAS DE ARQUIVOS MACHADO/MAIA: CAPÍTULO 11 Prof. Pedro Luís Antonelli Anhanguera Educacional SISTEMAS DE ARQUIVOS - INTRODUÇÃO O armazenamento e a recuperação de informações é

Leia mais

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008 Tabela de Símbolos Análise Semântica A Tabela de Símbolos Fabiano Baldo Após a árvore de derivação, a tabela de símbolos é o principal atributo herdado em um compilador. É possível, mas não necessário,

Leia mais

Árvores B. Hashing. Estrutura de Dados II Jairo Francisco de Souza

Árvores B. Hashing. Estrutura de Dados II Jairo Francisco de Souza Árvores B Hashing Estrutura de Dados II Jairo Francisco de Souza Hashing para arquivos extensíveis Todos os métodos anteriores previam tamanho fixo para alocação das chaves. Existem várias técnicas propostas

Leia mais

O que são Bancos de Dados?

O que são Bancos de Dados? SQL Básico Liojes de Oliveira Carneiro professor.liojes@gmail.com www.professor-liojes.blogspot.com O que são Bancos de Dados? É o software que armazena, organiza, controla, trata e distribui os dados

Leia mais

Organização de Arquivos

Organização de Arquivos Classificação e Pesquisa de Dados Aula 2 Organização de s: s Sequenciais e s Sequenciais Indexados UFRGS INF01124 Organização de s Propósito Estudo de técnicas de armazenamento e recuperação de dados em

Leia mais

Bases de Dados. Parte IX: Organização Física dos Dados

Bases de Dados. Parte IX: Organização Física dos Dados Bases de Dados Parte IX Organização Física dos Dados Unidades de Medida da Informação A unidade fundamental é o byte. byte corresponde a 8 bits e cada bit permite representar ou um 0 ou um. Kilobyte (Kbyte

Leia mais

Sistema de Arquivos. Ambientes Operacionais. Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br www.inf.pucrs.br/~stoscani

Sistema de Arquivos. Ambientes Operacionais. Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br www.inf.pucrs.br/~stoscani Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br www.inf.pucrs.br/~stoscani Gerência de Arquivos É um dos serviços mais visíveis do SO. Arquivos são normalmente

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I Aritmética Computacional Slide 1 Sumário Unidade Lógica e Aritmética Representação de Números Inteiros Aritmética de Números Inteiros Representação de Números

Leia mais

Armazenamento e Indexação 5

Armazenamento e Indexação 5 Armazenamento e Indexação 5 Nestes casos, podem evitar-se operações dispendiosas de ordenação de registos, pelo que pode valer a pena criar índices nas colunas da cláusula WHERE com determinadas ordenações.

Leia mais

Possui como idéia central a divisão de um universo de dados a ser organizado em subconjuntos mais gerenciáveis.

Possui como idéia central a divisão de um universo de dados a ser organizado em subconjuntos mais gerenciáveis. 3. Tabelas de Hash As tabelas de hash são um tipo de estruturação para o armazenamento de informação, de uma forma extremamente simples, fácil de se implementar e intuitiva de se organizar grandes quantidades

Leia mais

Estruturas de Dados Pilhas, Filas e Deques

Estruturas de Dados Pilhas, Filas e Deques Estruturas de Dados Pilhas, Filas e Deques Prof. Eduardo Alchieri Estruturas de Dados Pilhas Pilhas Lista LIFO (Last In, First Out) Os elementos são colocados na estrutura (pilha) e retirados em ordem

Leia mais

Pesquisa Sequencial e Binária. Introdução à Programação SI2

Pesquisa Sequencial e Binária. Introdução à Programação SI2 Pesquisa Sequencial e Binária Introdução à Programação SI2 3 Contexto Diferentes estratégias para pesquisa (busca) de um elemento específico em um conjunto de dados. Lista, array, coleção Operação importante,

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Cassandra - Particionamento de Dados Sistemas Distribuídos Douglas Macedo Hugo Lourenço Sumário Introdução Conceito Anel Multíplos Data center Fatores envolvidos Arquitetura do Sistema Módulo de Particionamento

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Gerenciamento de Memória Norton Trevisan Roman Marcelo Morandini Jó Ueyama Apostila baseada nos trabalhos de Kalinka Castelo Branco, Antônio Carlos Sementille, Paula Prata e nas transparências

Leia mais

Evaristo Wychoski Benfatti Fernando Nunes Bonifácio ARMAZENAMENTO EM DISCO, ESTRUTURAS BASICAS DE ARQUIVOS E HASHING

Evaristo Wychoski Benfatti Fernando Nunes Bonifácio ARMAZENAMENTO EM DISCO, ESTRUTURAS BASICAS DE ARQUIVOS E HASHING Evaristo Wychoski Benfatti Fernando Nunes Bonifácio ARMAZENAMENTO EM DISCO, ESTRUTURAS BASICAS DE ARQUIVOS E HASHING CONTEÚDO Introdução Armazenamento de dados Dispositivo de armazenamento Buffering de

Leia mais

Hashing. Estruturas de Dados. Motivação

Hashing. Estruturas de Dados. Motivação Estruturas de Dados Hashing Prof. Ricardo J. G. B. Campello Parte deste material é baseado em adaptações e extensões de slides disponíveis em http://ww3.datastructures.net (Goodrich & Tamassia). Motivação

Leia mais

Organização de arquivos

Organização de arquivos Organização de arquivos Por que ver sistema de arquivos? O sistema de arquivos é quem realmente se responsabiliza por guardar os dados que um aplicativo ou mesmo o banco de dados gerencia. Não é tarefa

Leia mais

FACULDADE DE IMPERATRIZ - FACIMP BACHARELADO EM SISTEMAS DE INFORMAÇÃO ESTRUTURA DE DADOS 2. Vieira Lima Junior. Everson Santos Araujo

FACULDADE DE IMPERATRIZ - FACIMP BACHARELADO EM SISTEMAS DE INFORMAÇÃO ESTRUTURA DE DADOS 2. Vieira Lima Junior. Everson Santos Araujo 1 FACULDADE DE IMPERATRIZ - FACIMP BACHARELADO EM SISTEMAS DE INFORMAÇÃO ESTRUTURA DE DADOS 2 Vieira Lima Junior Everson Santos Araujo ALGORITMOS DE ORDENAÇÃO: estudo comparativo de diversos algoritmos

Leia mais

UFRJ IM - DCC. Sistemas Operacionais I. Unidade IV Sistema de arquivos. Prof. Valeria M. Bastos Prof. Antonio Carlos Gay Thomé 13/06/2012 1

UFRJ IM - DCC. Sistemas Operacionais I. Unidade IV Sistema de arquivos. Prof. Valeria M. Bastos Prof. Antonio Carlos Gay Thomé 13/06/2012 1 UFRJ IM - DCC Sistemas Operacionais I Unidade IV Sistema de arquivos Prof. Valeria M. Bastos Prof. Antonio Carlos Gay Thomé 13/06/2012 1 ORGANIZAÇÃO DA UNIDADE Sistema de Arquivos Gerenciamento de E/S

Leia mais

Banco de Dados I 2007. Módulo V: Indexação em Banco de Dados. (Aulas 4) Clodis Boscarioli

Banco de Dados I 2007. Módulo V: Indexação em Banco de Dados. (Aulas 4) Clodis Boscarioli Banco de Dados I 2007 Módulo V: Indexação em Banco de Dados (Aulas 4) Clodis Boscarioli Agenda: Indexação em SQL; Vantagens e Custo dos Índices; Indexação no PostgreSQL; Dicas Práticas. Índice em SQL Sintaxe:

Leia mais

Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Sistema Gerenciador de Banco de Dados

Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Sistema Gerenciador de Banco de Dados Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Um Sistema Gerenciador de Banco de Dados (SGBD) é constituído por um conjunto de dados associados a um conjunto de programas para acesso a esses

Leia mais

Capítulo 7 O Gerenciador de Arquivos

Capítulo 7 O Gerenciador de Arquivos Capítulo 7 O Gerenciador de Arquivos Neste capítulo nós iremos examinar as características da interface do gerenciador de arquivos Konqueror. Através dele realizaremos as principais operações com arquivos

Leia mais

FACULDADE CAMPO LIMPO PAULISTA MESTRADO EM CIÊNCIA DA COMPUTAÇÃO. Projeto e Análise de Algoritmos II Lista de Exercícios 2

FACULDADE CAMPO LIMPO PAULISTA MESTRADO EM CIÊNCIA DA COMPUTAÇÃO. Projeto e Análise de Algoritmos II Lista de Exercícios 2 FACULDADE CAMPO LIMPO PAULISTA MESTRADO EM CIÊNCIA DA COMPUTAÇÃO Projeto e Análise de Algoritmos II Lista de Exercícios 2 Prof. Osvaldo. 1. Desenvolva algoritmos para as operações abaixo e calcule a complexidade

Leia mais

Sistemas de Informação James A. O Brien Editora Saraiva Capítulo 5

Sistemas de Informação James A. O Brien Editora Saraiva Capítulo 5 Para entender bancos de dados, é útil ter em mente que os elementos de dados que os compõem são divididos em níveis hierárquicos. Esses elementos de dados lógicos constituem os conceitos de dados básicos

Leia mais

SISTEMAS OPERACIONAIS. Sistemas de Arquivos Apostila 09

SISTEMAS OPERACIONAIS. Sistemas de Arquivos Apostila 09 SISTEMAS OPERACIONAIS Sistemas de Arquivos Apostila 09 1.0 INTRODUÇÃO Sistema de Arquivos: conceito de arquivo, métodos de acesso, estrutura de diretório, estrutura do sistema de arquivos, métodos de alocação

Leia mais

Introdução à Computação: Sistemas de Computação

Introdução à Computação: Sistemas de Computação Introdução à Computação: Sistemas de Computação Beatriz F. M. Souza (bfmartins@inf.ufes.br) http://inf.ufes.br/~bfmartins/ Computer Science Department Federal University of Espírito Santo (Ufes), Vitória,

Leia mais

GERENCIAMENTO DE DISPOSITIVOS

GERENCIAMENTO DE DISPOSITIVOS 2 SISTEMAS OPERACIONAIS: GERENCIAMENTO DE DISPOSITIVOS E ARQUIVOS Introdução à Microinformática Prof. João Paulo Lima Universidade Federal Rural de Pernambuco Departamento de Estatística e Informática

Leia mais

Roteiro 2 Conceitos Gerais

Roteiro 2 Conceitos Gerais Roteiro 2 Conceitos Gerais Objetivos: UC Projeto de Banco de Dados Explorar conceitos gerais de bancos de dados; o Arquitetura de bancos de dados: esquemas, categorias de modelos de dados, linguagens e

Leia mais

Programação de Sistemas

Programação de Sistemas Programação de Sistemas Introdução à gestão de memória Programação de Sistemas Gestão de memória : 1/16 Introdução (1) A memória central de um computador é escassa. [1981] IBM PC lançado com 64KB na motherboard,

Leia mais

Arquitetura de Computadores. Sistemas Operacionais IV

Arquitetura de Computadores. Sistemas Operacionais IV Arquitetura de Computadores Sistemas Operacionais IV Introdução Multiprogramação implica em manter-se vários processos na memória. Memória necessita ser alocada de forma eficiente para permitir o máximo

Leia mais

Algoritmos e Estrutura de Dados III. Árvores

Algoritmos e Estrutura de Dados III. Árvores Algoritmos e Estrutura de Dados III Árvores Uma das mais importantes classes de estruturas de dados em computação são as árvores. Aproveitando-se de sua organização hierárquica, muitas aplicações são realizadas

Leia mais

BANCO DE DADOS. Introdução a Banco de Dados. Conceitos BásicosB. Engenharia da Computação UNIVASF. Aula 1. Breve Histórico

BANCO DE DADOS. Introdução a Banco de Dados. Conceitos BásicosB. Engenharia da Computação UNIVASF. Aula 1. Breve Histórico Banco de Dados // 1 Banco de Dados // 2 Conceitos BásicosB Engenharia da Computação UNIVASF BANCO DE DADOS Aula 1 Introdução a Banco de Dados Campo representação informatizada de um dado real / menor unidade

Leia mais

FAT32 ou NTFS, qual o melhor?

FAT32 ou NTFS, qual o melhor? FAT32 ou NTFS, qual o melhor? Entenda quais as principais diferenças entre eles e qual a melhor escolha O que é um sistema de arquivos? O conceito mais importante sobre este assunto, sem sombra de dúvidas,

Leia mais

Busca. Pesquisa sequencial

Busca. Pesquisa sequencial Busca Banco de dados existem para que, de tempos em tempos, um usuário possa localizar o dado de um registro, simplesmente digitando sua chave. Uma tabela ou um arquivo é um grupo de elementos, cada um

Leia mais

Algoritmos de pesquisa. Tabelas de dispersão/hash

Algoritmos 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 (array). Se o vetor não está ordenado, a pesquisa requer O(n) de

Leia mais

Sistemas Operacionais

Sistemas Operacionais 7 Sistemas Operacionais 7.1 Fundamentos da ciência da computação Cengage Learning Objetivos 7.2 Compreender o papel do sistema operacional. Compreender o processo de inicialização para carregar o sistema

Leia mais

O texto desta seção foi publicado em http://msdn.microsoft.com/ptbr/library/ms177433.aspx. o http://msdn.microsoft.com/pt-br/library/ms178104.

O texto desta seção foi publicado em http://msdn.microsoft.com/ptbr/library/ms177433.aspx. o http://msdn.microsoft.com/pt-br/library/ms178104. AULA 12 - Deadlocks Em alguns casos pode ocorrer a seguinte situação: um processo solicita um determinado recurso e este não está disponível no momento. Quando isso ocontece o processo entra para o estado

Leia mais

Novell. Novell Teaming 1.0. novdocx (pt-br) 6 April 2007 EXPLORAR O PORTLET BEM-VINDO DESCUBRA SEU CAMINHO USANDO O NOVELL TEAMING NAVIGATOR

Novell. Novell Teaming 1.0. novdocx (pt-br) 6 April 2007 EXPLORAR O PORTLET BEM-VINDO DESCUBRA SEU CAMINHO USANDO O NOVELL TEAMING NAVIGATOR Novell Teaming - Guia de início rápido Novell Teaming 1.0 Julho de 2007 INTRODUÇÃO RÁPIDA www.novell.com Novell Teaming O termo Novell Teaming neste documento se aplica a todas as versões do Novell Teaming,

Leia mais

Organização de Computadores 1

Organização de Computadores 1 Organização de Computadores 1 4 SUPORTE AO SISTEMA OPERACIONAL Prof. Luiz Gustavo A. Martins Sistema Operacional (S.O.) Programa responsável por: Gerenciar os recursos do computador. Controlar a execução

Leia mais

Exercícios de revisão V2. FAT: 300 GB / 2KB = 150MB X 8 bytes (64 bits / 8) = 1.2GB

Exercícios de revisão V2. FAT: 300 GB / 2KB = 150MB X 8 bytes (64 bits / 8) = 1.2GB Exercícios de revisão V2 1 Uma empresa que possui partições FAT em seus servidores, estava impressionada com um processo em específico na memória, onde o mesmo ocupava um espaço grande. Este servidor dedicado

Leia mais

Introdução. Banco de dados. Por que usar BD? Por que estudar BD? Exemplo de um BD. Conceitos básicos

Introdução. Banco de dados. Por que usar BD? Por que estudar BD? Exemplo de um BD. Conceitos básicos Introdução Banco de Dados Por que usar BD? Vitor Valerio de Souza Campos Adaptado de Vania Bogorny 4 Por que estudar BD? Exemplo de um BD Os Bancos de Dados fazem parte do nosso dia-a-dia: operação bancária

Leia mais

Processamento da Junção Espacial Distribuída utilizando a técnica de Semi-Junção Espacial

Processamento da Junção Espacial Distribuída utilizando a técnica de Semi-Junção Espacial Processamento da Junção Espacial Distribuída utilizando a técnica de Semi-Junção Espacial Sávio S. Teles de Oliveira 2, Anderson R. Cunha 2, Vagner J. do Sacramento Rodrigues 2, Wellington S. Martins 1

Leia mais

Conectando Bancos de Dados Microsoft Access no BrOffice.org Base. fornecido pelo Projeto de Documentação do BrOffice.org

Conectando Bancos de Dados Microsoft Access no BrOffice.org Base. fornecido pelo Projeto de Documentação do BrOffice.org Conectando Bancos de Dados Microsoft Access no BrOffice.org Base fornecido pelo Projeto de Documentação do BrOffice.org Índice 1 Introdução...2 1.1 Versão... 2 1.2 Licenciamento...2 1.3 Mensagem do Projeto

Leia mais

Estruturas de Dados. Prof. Gustavo Willam Pereira Créditos: Profa. Juliana Pinheiro Campos

Estruturas de Dados. Prof. Gustavo Willam Pereira Créditos: Profa. Juliana Pinheiro Campos Estruturas de Dados Prof. Gustavo Willam Pereira Créditos: Profa. Juliana Pinheiro Campos Árvores Conceitos Árvores binárias Árvores binárias de pesquisa Árvores binárias balanceadas Árvores ESTRUTURAS

Leia mais

Fundamentos de Sistemas Operacionais. Sistema de Arquivos. Prof. Edwar Saliba Júnior Março de 2007. Unidade 03-002 Sistemas de Arquivos

Fundamentos de Sistemas Operacionais. Sistema de Arquivos. Prof. Edwar Saliba Júnior Março de 2007. Unidade 03-002 Sistemas de Arquivos Sistema de Arquivos Prof. Edwar Saliba Júnior Março de 2007 1 Objetivos Facilitar o acesso dos usuários ao conteúdo dos arquivos; Prover uma forma uniforme de manipulação de arquivos, independente dos

Leia mais

Capítulo 11: Implementação de Sistemas de Arquivos. Operating System Concepts 8 th Edition

Capítulo 11: Implementação de Sistemas de Arquivos. Operating System Concepts 8 th Edition Capítulo 11: Implementação de Sistemas de Arquivos Silberschatz, Galvin and Gagne 2009 Sobre a apresentação (About the slides) Os slides e figuras dessa apresentação foram criados por Silberschatz, Galvin

Leia mais

Introdução Banco de Dados

Introdução Banco de Dados Introdução Banco de Dados Vitor Valerio de Souza Campos Adaptado de Vania Bogorny Por que estudar BD? Os Bancos de Dados fazem parte do nosso dia-a-dia: operação bancária reserva de hotel matrícula em

Leia mais

ESTRUTURAS DE DADOS II MSc. Daniele Carvalho Oliveira

ESTRUTURAS DE DADOS II MSc. Daniele Carvalho Oliveira ESTRUTURAS DE DADOS II MSc. Daniele Carvalho Oliveira ÁRVORES ED2: MSc. Daniele Oliveira 2 Introdução Filas, pilhas» Estruturas Lineares Um dos exemplos mais significativos de estruturas não-lineares são

Leia mais

ESTRUTURA DE DADOS DCC013

ESTRUTURA DE DADOS DCC013 ESTRUTURA DE DADOS DCC013 Árvores Pesquisa sequencial Preliminares Elementos pesquisados sucessivamente Comparação determina se o elemento foi encontrado ou não Exemplo: buscar 4 (Arrays e lista encadeada)

Leia mais

ESTRUTURA INTERNA DO SISTEMA ESTRUTURA GERAL DO SGBD. Desempenho do BD ÙSatisfação do usuário. A performance do sistema depende:

ESTRUTURA INTERNA DO SISTEMA ESTRUTURA GERAL DO SGBD. Desempenho do BD ÙSatisfação do usuário. A performance do sistema depende: ESTRUTURA INTERNA DO SISTEMA ESTRUTURA GERAL DO SGBD Desempenho do BD ÙSatisfação do usuário USUÁRIO A performance do sistema depende: da eficiência das estruturas de dados utilizadas; como o sistema opera

Leia mais

ESTRUTURAS DE DADOS. prof. Alexandre César Muniz de Oliveira. 1. Introdução 2. Pilhas 3. Filas 4. Listas 5. Árvores 6. Ordenação 7. Busca 8.

ESTRUTURAS DE DADOS. prof. Alexandre César Muniz de Oliveira. 1. Introdução 2. Pilhas 3. Filas 4. Listas 5. Árvores 6. Ordenação 7. Busca 8. ESTRUTURAS DE DADOS prof. Alexandre César Muniz de Oliveira 1. Introdução 2. Pilhas 3. Filas 4. Listas 5. Árvores 6. Ordenação 7. Busca 8. Grafos Sugestão bibliográfica: ESTRUTURAS DE DADOS USANDO C Aaron

Leia mais

Tabelas Hash. Jeane Melo

Tabelas Hash. Jeane Melo Tabelas Hash Jeane Melo Roteiro Introdução Motivação Definição Tabelas Hash Exemplos Funções hash Colisões Introdução Estudamos a utilização de estruturas como listas e árvores para armazenar informações

Leia mais

ESTRUTURAS DE DADOS AVANÇADAS (INF 1010) (a) Seja um TAD definido por uma lista circular implementada em um vetor.

ESTRUTURAS DE DADOS AVANÇADAS (INF 1010) (a) Seja um TAD definido por uma lista circular implementada em um vetor. PUC-Rio Departamento de Informática Período: 2015.1 Horário: 2as-feiras e 4as-feiras de 17-19 30 de março de 2015 ESTRUTURAS DE DADOS AVANÇADAS (INF 1010) 1 a Lista de Exercícios 1. Lista (a) Seja um TAD

Leia mais

The VISGRAF Video Database Rafaella Gappo Luiz Velho (orientador) Technical Report TR-2009-04 Relatório Técnico. August - 2009 - Agosto

The VISGRAF Video Database Rafaella Gappo Luiz Velho (orientador) Technical Report TR-2009-04 Relatório Técnico. August - 2009 - Agosto Laboratório VISGRAF Instituto de Matemática Pura e Aplicada The VISGRAF Video Database Rafaella Gappo Luiz Velho (orientador) Technical Report TR-2009-04 Relatório Técnico August - 2009 - Agosto The contents

Leia mais

3/9/2010. Ligação da UCP com o barramento do. sistema. As funções básicas dos registradores nos permitem classificá-los em duas categorias:

3/9/2010. Ligação da UCP com o barramento do. sistema. As funções básicas dos registradores nos permitem classificá-los em duas categorias: Arquitetura de Computadores Estrutura e Funcionamento da CPU Prof. Marcos Quinet Universidade Federal Fluminense P.U.R.O. Revisão dos conceitos básicos O processador é o componente vital do sistema de

Leia mais

CT-234. Análise de Algoritmos e Complexidade Estrutural. Carlos Alberto Alonso Sanches

CT-234. Análise de Algoritmos e Complexidade Estrutural. Carlos Alberto Alonso Sanches CT-234 Estruturas de Dados, Análise de Algoritmos e Complexidade Estrutural Carlos Alberto Alonso Sanches CT-234 4) Árvores balanceadas AVL, Rubro-Negras, B-Trees Operações em árvores binárias de busca

Leia mais

LABORATÓRIO DE SISTEMAS OPERACIONAIS. PROFª. M.Sc. JULIANA HOFFMANN QUINONEZ BENACCHIO

LABORATÓRIO DE SISTEMAS OPERACIONAIS. PROFª. M.Sc. JULIANA HOFFMANN QUINONEZ BENACCHIO LABORATÓRIO DE SISTEMAS OPERACIONAIS PROFª. M.Sc. JULIANA HOFFMANN QUINONEZ BENACCHIO Gerenciamento de Memória no Linux O Linux é um sistema operacional com memória virtual paginada, isto quer dizer que

Leia mais

Um Simulador para Avaliação da Antecipação de Tarefas em Sistemas Gerenciadores de Workflow

Um Simulador para Avaliação da Antecipação de Tarefas em Sistemas Gerenciadores de Workflow Um Simulador para Avaliação da Antecipação de Tarefas em Sistemas Gerenciadores de Workflow Resumo. A fim de flexibilizar o fluxo de controle e o fluxo de dados em Sistemas Gerenciadores de Workflow (SGWf),

Leia mais

Sistemas Operacionais: Sistema de Arquivos

Sistemas Operacionais: Sistema de Arquivos Sistemas Operacionais: Sistema de Arquivos Sistema de Arquivos Arquivos Espaço contíguo de armazenamento Armazenado em dispositivo secundário Estrutura Nenhuma: seqüência de bytes Registros, documentos,

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Professores autores Vicente Pires Lustosa Neto Roberta De Souza Coelho Aula 11 - Gerenciamento de memória Apresentação Na última aula, aprendemos mais sobre os processos e como gerenciá-los.

Leia mais

Sistemas Operacionais. Andrique Amorim www.andrix.com.br professor@andrix.com.br. Gerência de Arquivos

Sistemas Operacionais. Andrique Amorim www.andrix.com.br professor@andrix.com.br. Gerência de Arquivos Andrique Amorim www.andrix.com.br professor@andrix.com.br Gerência de Arquivos Gerência de Arquivos Um sistema operacional tem por finalidade permitir que o usuários do computador executem aplicações,

Leia mais

Banco de Dados. Prof. Dr. Rogério Galante Negri

Banco de Dados. Prof. Dr. Rogério Galante Negri Banco de Dados Prof Dr Rogério Galante Negri Tradicionalmente O armazenamento dos dados utilizava arquivos individuais, sem nenhum relacionamento Cada programa utilizava seu próprio sistema de arquivo

Leia mais

Gerenciamento Básico B de Memória Aula 07

Gerenciamento Básico B de Memória Aula 07 BC1518-Sistemas Operacionais Gerenciamento Básico B de Memória Aula 07 Prof. Marcelo Z. do Nascimento marcelo.nascimento@ufabc.edu.br Roteiro Introdução Espaço de Endereçamento Lógico vs. Físico Estratégias

Leia mais

Pastas São indicadas pelo ícone correspondente a uma pasta suspensa.

Pastas São indicadas pelo ícone correspondente a uma pasta suspensa. Janela do Windows Explorer Logo abaixo dos componentes que já conhecemos (barra de título, barra de menus e barra de ferramentas), existe uma divisão vertical, é a exibição de todas as pastas. Modos de

Leia mais

Sistema de Arquivos EXT3

Sistema de Arquivos EXT3 Sistema de Arquivos EXT3 Introdução Ext3 é uma nova versão do Ext2. Possui as mesmas estruturas do ext2, além de adicionar as propriedades do Journal. O uso do Ext3 melhora na recuperação do sistema(dados),

Leia mais

Definição do Plano de Execução. Estimativas sobre os Dados

Definição do Plano de Execução. Estimativas sobre os Dados Definição do Plano de Execução Analisar alternativas de processamento Escolher a melhor alternativa Diversas medidas podem ser consideradas tempo CPU, comunicação, acessos a disco medida mais relevante

Leia mais

Hashing. Rafael Nunes LABSCI-UFMG

Hashing. Rafael Nunes LABSCI-UFMG Hashing Rafael Nunes LABSCI-UFMG Sumário Mapeamento Hashing Porque utilizar? Colisões Encadeamento Separado Endereçamento Aberto Linear Probing Double Hashing Remoção Expansão Quando não usar! Mapeamento

Leia mais