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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Á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

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

Extensão do WEKA para Métodos de Agrupamento com Restrição de Contigüidade

Extensão do WEKA para Métodos de Agrupamento com Restrição de Contigüidade Extensão do WEKA para Métodos de Agrupamento com Restrição de Contigüidade Carlos Eduardo R. de Mello, Geraldo Zimbrão da Silva, Jano M. de Souza Programa de Engenharia de Sistemas e Computação Universidade

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

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

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

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

Á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

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

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

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

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

Á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

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

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

BC1424 Algoritmos e Estruturas de Dados I. Aula 16: Árvores (introdução) Prof. Jesús P. Mena-Chalco. jesus.mena@ufabc.edu.br

BC1424 Algoritmos e Estruturas de Dados I. Aula 16: Árvores (introdução) Prof. Jesús P. Mena-Chalco. jesus.mena@ufabc.edu.br BC1424 Algoritmos e Estruturas de Dados I Aula 16: Árvores (introdução) Prof. Jesús P. Mena-Chalco jesus.mena@ufabc.edu.br 1Q-2015 1 2 Árvores Uma árvore é uma estrutura de dados mais geral que uma lista

Leia mais

Indexação em Bancos de Dados Espaciais

Indexação em Bancos de Dados Espaciais UNIVERSIDADE FEDERAL DO ESTADO DO RIO DE JANEIRO CENTRO DE CIÊNCIAS EXATAS E TECNOLOGIA Relatórios Técnicos do Departamento de Informática Aplicada da UNIRIO n 0018/2009 Indexação em Bancos de Dados Espaciais

Leia mais

ARQUITETURA DE UM SISTEMA SPATIO-TEXTUAL. PALAVRAS-CHAVE: banco de dados espaciais, busca spatio-textual. aplicativo.

ARQUITETURA DE UM SISTEMA SPATIO-TEXTUAL. PALAVRAS-CHAVE: banco de dados espaciais, busca spatio-textual. aplicativo. ARQUITETURA DE UM SISTEMA SPATIO-TEXTUAL Fellipe de Lima Fonseca 1 ; João Batista Rocha-Junior 2 1. Bolsista CNPq, Graduando em Engenharia de Computação, Universidade Estadual de Feira de Santana, e-mail:

Leia mais

Árvore Binária de Busca

Árvore Binária de Busca Árvore Binária de Busca 319 Árvore Binária de Busca! construída de tal forma que, para cada nó:! nós com chaves menores estão na sub-árvore esquerda! nós com chaves maiores (ou iguais) estão na subárvore

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

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

Nível 3 Sistema Operacional

Nível 3 Sistema Operacional Nível 3 Sistema Operacional Universidade Tuiuti do Paraná UTP Faculdade de Ciências Exatas - FACET Tecnologia de Análise e Desenvolvimento de Sistemas Organização de Computadores Prof. André Luiz 1 Nível

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

Á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

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

Interface Luana: uma Aplicação Gráfica para o Ensino da Árvore Binária Kd-Tree

Interface Luana: uma Aplicação Gráfica para o Ensino da Árvore Binária Kd-Tree Interface Luana: uma Aplicação Gráfica para o Ensino da Árvore Binária Kd-Tree Rodrigo D. Lima, Guilherme L.A. Mota, Paulo E. D. Pinto Universidade do Estado do Rio de Janeiro Instituto de Matemática e

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

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

Sistema de Arquivos. Ciclo 5 AT1. Prof. Hermes Senger / Hélio Crestana Guardia

Sistema de Arquivos. Ciclo 5 AT1. Prof. Hermes Senger / Hélio Crestana Guardia Sistema de Arquivos Ciclo 5 AT1 Prof. Hermes Senger / Hélio Crestana Guardia Referência: Deitel Cap. 13 Nota O presente material foi elaborado com base no material didático do livro Sistemas Operacionais,

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

EAD Árvore árvore binária

EAD Árvore árvore binária EAD Árvore árvore binária - Uma árvore binária é um conjunto finito de elementos (nodos) que pode ser vazio ou particionado em três subconjuntos: - raiz da árvore (elemento inicial, que é único); - subárvore

Leia mais

UNIVERSIDADE VEIGA DE ALMEIDA CURSO DE BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO CURSO SUPERIOR DE TECNOLOGIA EM PROCESSAMENTO DE DADOS BANCO DE DADOS

UNIVERSIDADE VEIGA DE ALMEIDA CURSO DE BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO CURSO SUPERIOR DE TECNOLOGIA EM PROCESSAMENTO DE DADOS BANCO DE DADOS CURSO DE BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO CURSO SUPERIOR DE TECNOLOGIA EM PROCESSAMENTO DE DADOS CLAUDIO RIBEIRO DA SILVA MARÇO 1997 2 1 - CONCEITOS GERAIS DE 1.1 - Conceitos Banco de Dados - Representa

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

1. Introdução... 1 1.1. Definição... 1 1.2. Conceitos relacionados... 2

1. Introdução... 1 1.1. Definição... 1 1.2. Conceitos relacionados... 2 Índice i Índice Capítulo 4 Estrutura de Dados não sequencial com armazenamento não sequencial ( Árvore ) 1. Introdução... 1 1.1. Definição... 1 1.2. Conceitos relacionados... 2 2. Árvores binárias... 2

Leia mais

Para construção dos modelos físicos, será estudado o modelo Relacional como originalmente proposto por Codd.

Para construção dos modelos físicos, será estudado o modelo Relacional como originalmente proposto por Codd. Apresentação Este curso tem como objetivo, oferecer uma noção geral sobre a construção de sistemas de banco de dados. Para isto, é necessário estudar modelos para a construção de projetos lógicos de bancos

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

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

RESPOSTA AO RECURSO. 11110011+00010001 = 100000100 que corresponde a 260 decimal, alternativa A.

RESPOSTA AO RECURSO. 11110011+00010001 = 100000100 que corresponde a 260 decimal, alternativa A. QUESTÃO: 12 Na questão 12 referente a conhecimentos específicos da área de "Informática: Banco de dados e programação" 11110011+00010001 = 100000100 que corresponde a 260 decimal, alternativa A. RESPOSTA:

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

Tabela 4.2 Estatística típica de um sistema em 2007

Tabela 4.2 Estatística típica de um sistema em 2007 4. CONSTRUÇÃO DE ÍNDICE Neste capítulo é mostrado como construir um índice invertido, processo chamado de indexação. O projeto de indexação depende de algumas restrições de hardware, fato que leva a necessidade

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

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

Universidade Estadual de Mato Grosso do Sul - Curso de Ciência da Computação Disciplina: Estruturas de Dados Profª. Raquel Marcia Müller

Universidade Estadual de Mato Grosso do Sul - Curso de Ciência da Computação Disciplina: Estruturas de Dados Profª. Raquel Marcia Müller 1 Listas Lineares Dentre as estruturas de dados não primitivas, as listas lineares são as de manipulação mais simples. Uma lista linear agrupa informações referentes a um conjunto de elementos que, de

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

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

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

Prof. Yandre Maldonado - 1 PONTEIROS. Prof. Yandre Maldonado e Gomes da Costa

Prof. Yandre Maldonado - 1 PONTEIROS. Prof. Yandre Maldonado e Gomes da Costa Prof. Yandre Maldonado - 1 PONTEIROS Prof. Yandre Maldonado e Gomes da Costa PONTEIROS Prof. Yandre Maldonado - 2 Ponteiro é uma variável que possui o endereço de outra variável; É um poderoso recurso

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

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

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

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

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

Gerenciamento de ES e Sistema de Arquivos do Windows 2000

Gerenciamento de ES e Sistema de Arquivos do Windows 2000 1 Gerenciamento de ES e Sistema de Arquivos do Windows 2000 Gerenciador de E/S Objetivo é fornecer uma estrutura de modo eficiente para lidar com a grande variedade de dispositivos Bastante relacionado

Leia mais

Introdução a Banco de Dados

Introdução a Banco de Dados Introdução a Banco de Dados O modelo relacional Marta Mattoso Sumário Introdução Motivação Serviços de um SGBD O Modelo Relacional As aplicações não convencionais O Modelo Orientado a Objetos Considerações

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

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 Árvores

Estruturas de Dados Árvores Estruturas de Dados Árvores Prof. Eduardo Alchieri Árvores (introdução) Importância de estruturas unidimensionais ou lineares (vetores e listas) é inegável Porém, estas estruturas não são adequadas para

Leia mais

MODELO RELACIONAL - UFMA

MODELO RELACIONAL - UFMA MODELO RELACIONAL Universidade Federal do Maranhão - UFMA Departamento de Informática Projeto de Banco de Dados Profª.MSc Simara Rocha simararocha@gmail.com/simara@deinf.ufma.br www.deinf.ufma.br/~simara

Leia mais

Figura 13.1: Um exemplo de árvore de diretório.

Figura 13.1: Um exemplo de árvore de diretório. 13. Árvores W. Celes e J. L. Rangel Nos capítulos anteriores examinamos as estruturas de dados que podem ser chamadas de unidimensionais ou lineares, como vetores e listas. A importância dessas estruturas

Leia mais

GUILHERME STUTZ TÖWS ANIMAÇÃO DE ALGORITMOS

GUILHERME STUTZ TÖWS ANIMAÇÃO DE ALGORITMOS GUILHERME STUTZ TÖWS ANIMAÇÃO DE ALGORITMOS Trabalho de graduação do Curso de Ciência da Computação do Setor de Ciências Exatas da Universidade Federal do Paraná. Professor: André Luiz Pires Guedes CURITIBA

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

CAPÍTULO 6 NÍVEL DE SISTEMA OPERACIONAL. Nível de Sistema Operacional. Nível de Máquina Convencional. Nível de Microprogramação

CAPÍTULO 6 NÍVEL DE SISTEMA OPERACIONAL. Nível de Sistema Operacional. Nível de Máquina Convencional. Nível de Microprogramação CAPÍTULO 6 NÍVEL DE SISTEMA OPERACIONAL 6.1 Introdução Nível que automatiza as funções do operador do sistema. Nível 3 Nível de Sistema Operacional Sistema Operacional Nível 2 Nível de Máquina Convencional

Leia mais

Bases de Dados II 6638: BSc in Information Systems and Technologies. Cap. 1 Arquitectura de Sistemas de Bases de Dados. Module Introduction

Bases de Dados II 6638: BSc in Information Systems and Technologies. Cap. 1 Arquitectura de Sistemas de Bases de Dados. Module Introduction Bases de Dados II 6638: BSc in Information Systems and Technologies Cap. 1 Module Introduction Objectivos O propósito e a origem da arquitectura de base de dados a três níveis. O conteúdo dos níveis externo,

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

Sistema de Controle de Acesso Baseado no Reconhecimento de Faces

Sistema de Controle de Acesso Baseado no Reconhecimento de Faces Sistema de Controle de Acesso Baseado no Reconhecimento de Faces Access Control System Based on Face Recognition Tiago A. Neves, Welton S. De Oliveira e Jean-Jacques De Groote Faculdades COC de Ribeirão

Leia mais

Diferenças entre Sistemas Gerenciadores de Banco de Dados para GIS - SGBDs

Diferenças entre Sistemas Gerenciadores de Banco de Dados para GIS - SGBDs Diferenças entre Sistemas Gerenciadores de Banco de Dados para GIS - SGBDs O objetivo deste documento é fazer uma revisão bibliográfica para elucidar as principais diferenças entre os SGBDs, apontando

Leia mais

ADMINISTRAÇÃO DE BANCO DE DADOS

ADMINISTRAÇÃO DE BANCO DE DADOS ADMINISTRAÇÃO DE BANCO DE DADOS ARTEFATO 02 AT02 Diversos I 1 Indice ESQUEMAS NO BANCO DE DADOS... 3 CRIANDO SCHEMA... 3 CRIANDO TABELA EM DETERMINADO ESQUEMA... 4 NOÇÕES BÁSICAS SOBRE CRIAÇÃO E MODIFICAÇÃO

Leia mais

Tipos de Comunicação entre Estações. Comunicação Multiponto ( de Grupo, Multicast, Multiway, Difusão seletiva) Comunicação Multiponto em Redes Locais

Tipos de Comunicação entre Estações. Comunicação Multiponto ( de Grupo, Multicast, Multiway, Difusão seletiva) Comunicação Multiponto em Redes Locais Tipos de Comunicação entre Estações Comunicação Multiponto ( de Grupo, Multicast, Multiway, Difusão seletiva) Unicast Broadcast Multicast Multicast: ação de enviar um datagrama para multiplos receptores

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

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

REDES DE COMPUTADORES - I UNI-ANHANGUERA. CURSO DE ANÁLISE E DESENVOLVIMENTO DE SISTEMAS PROF. MARCIO BALIAN

REDES DE COMPUTADORES - I UNI-ANHANGUERA. CURSO DE ANÁLISE E DESENVOLVIMENTO DE SISTEMAS PROF. MARCIO BALIAN 1 REDES DE COMPUTADORES - I UNI-ANHANGUERA. CURSO DE ANÁLISE E DESENVOLVIMENTO DE SISTEMAS PROF. MARCIO BALIAN ENDEREÇAMENTO IP O IP é um protocolo da Camada de rede É um endereço lógico único em toda

Leia mais

Sistemas Operacionais Aula 14: Sistema de Arquivos. Ezequiel R. Zorzal ezorzal@unifesp.br www.realidadeaumentada.com.br

Sistemas Operacionais Aula 14: Sistema de Arquivos. Ezequiel R. Zorzal ezorzal@unifesp.br www.realidadeaumentada.com.br Sistemas Operacionais Aula 14: Sistema de Arquivos Ezequiel R. Zorzal ezorzal@unifesp.br www.realidadeaumentada.com.br Introdução O sistema de arquivos é a parte mais vísivel do sistema operacional Cria

Leia mais

Pós-Graduação, Maio de 2006 Introdução aos Sistemas Operacionais. Prof. Dr. Ruy de Oliveira CEFET-MT

Pós-Graduação, Maio de 2006 Introdução aos Sistemas Operacionais. Prof. Dr. Ruy de Oliveira CEFET-MT Pós-Graduação, Maio de 2006 Introdução aos Sistemas Operacionais Prof. Dr. Ruy de Oliveira CEFET-MT O que é um Sistema Operacional? Um software que abstrai as complexidades do hardware de um usuário/programador

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

4 Conversor EDTV Raw. 4.1 Arquitetura

4 Conversor EDTV Raw. 4.1 Arquitetura 4 Conversor EDTV Raw O conversor EDTV Raw é o programa que lê um documento escrito no perfil NCL EDTV e gera um documento Raw equivalente, i.e. que define a mesma apresentação. Este capítulo, apresenta

Leia mais

3. PARADIGMA ORIENTADO A OBJETOS

3. PARADIGMA ORIENTADO A OBJETOS Paradigmas de Linguagens I 1 3. PARADIGMA ORIENTADO A OBJETOS Este paradigma é o que mais reflete os problemas atuais. Linguagens orientada a objetos (OO) são projetadas para implementar diretamente a

Leia mais

Sistema de Arquivos Distribuídos

Sistema de Arquivos Distribuídos Sistema de Arquivos Distribuídos Sistema de Arquivos Distribuídos A interface cliente para um sistema de arquivos é composta por um conjunto de primitivas e operações em arquivos (criar, apagar, ler, escrever)

Leia mais