Armazenamento e Indexação 5
|
|
- Benedito Madeira Pinho
- 8 Há anos
- Visualizações:
Transcrição
1 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. Como as folhas da B+-tree estão ligadas entre si, é sempre possível ler as chaves em qualquer ordem (ascendente ou descendente) Hashing 15 Uma função de hashing opera um mapeamento entre um grande conjunto de entrada e um conjunto finito de saída. As funções de hashing são extensivamente usadas em várias áreas da informática. No contexto da indexação, a função de hashing mapeia uma chave K para um de n blocos, que são tipicamente as páginas no disco. Assim, várias chaves são mapeadas para o mesmo bloco, originando uma colisão, e uma das propriedades mais desejáveis de uma função de hashing é o mapeamento uniforme dos valores da chave por todos os n blocos. Se um bloco for uma página do disco que contém os registos indexados, como vimos, na prática, este tipo de funções permite um acesso direto aos dados a partir da chave. Este princípio é mostrado na Figura k h(k) 0 n-1 blocos Figura 5.21 Função de hashing Na prática, o valor h(k) é uma entrada do índice que contém a localização do registo ou registos com a chave K. Se a tabela estiver organizada segundo a função de hashing, utilizando a organização de ficheiros que vimos anteriormente, o acesso pode ser direto. Uma função de hashing deve distribuir uniformemente os registos por todos os blocos, e essa distribuição deve ser aleatória, isto é, deve ser independente da distribuição das chaves, resultando no mesmo número de chaves por bloco. Deste modo, uma função de hashing trabalha sobre valores numéricos, pelo que se o valor a indexar for alfanumérico, pode ser transformado primeiro num valor numérico, usando, por exemplo, o código UTF-8 dos caracteres. Assim, a função será aplicada sobre este valor numérico. Os índices que usam funções de hashing apresentam as seguintes limitações: Como não existe nenhuma relação de ordem entre h(k), não é possível percorrer de forma eficiente e ordenada as chaves. Deste modo, os índices que usam hashing não podem ser agrupados, exceto se a organização da tabela estiver também de acordo com a função de hashing; 15 Hashing é, por vezes, designado em português como dispersão. 159
2 FUNDAMENTOS DE BASES DE DADOS Não é possível utilizar funções de hashing para consultas com intervalos de valor, apenas para condições de igualdade. Por outro lado, as funções de hashing são muito eficazes para testes de igualdade, pelo que são também bastante usadas no processamento de equijunções. Por exemplo, se a distribuição de chaves for uniforme, uma função de hashing simples e com um comportamento aceitável usa o resto da divisão por n; sendo dado um valor da chave, o bloco em que este se encontra é dado pelo resto da divisão por n. Outra função de hashing divide a chave em várias partes e calcula o ou exclusivo de todas as partes. Se a distribuição de chaves não for uniforme, alguns blocos terão tendência a ficar preenchidos mais rapidamente do que outros e poderemos ter uma situação em que não podem aceitar mais chaves. É também possível que o número de chaves ultrapasse a capacidade total dos n blocos. Nesse caso, devem utilizar-se blocos adicionais, ligados ao bloco que ficou preenchido, mas já não é possível continuar a aceder aos dados num único acesso. Se os blocos adicionais ficarem totalmente preenchidos, é necessário ligar-lhes mais blocos adicionais, com o consequente aumento do número de acessos, o que traz rapidamente problemas de desempenho. Uma solução consistiria em juntar mais blocos principais, mudar a função de hashing para prever o novo número de blocos e reindexar todas as chaves contudo, na prática, esta solução seria custosa e não é exequível. Esta técnica de hashing hashing estático apresenta os seguintes inconvenientes para a sua utilização em indexação: O número n de blocos deve ser, à partida, corretamente dimensionado, caso contrário, é necessário recorrer à utilização de blocos adicionais ligados aos preenchidos; Se o número inicial de blocos for aumentado, tem de se alterar a função de hashing e, consequentemente, reindexar todas as chaves. Para evitar a utilização de blocos adicionais devidos ao preenchimento de alguns blocos, ou seja, para adaptar o número de blocos às características da base de dados ao longo do tempo, foram propostas as seguintes técnicas de hashing dinâmico: Hashing extensível; Hashing linear. Vamos ver a seguir estas duas técnicas Hashing extensível O hashing extensível foi proposto por Fagin et al. (1979). Esta técnica aumenta o número de blocos disponíveis em caso de preenchimento, em vez de utilizar blocos ligados, e evita a reindexação de todas as chaves. Desta forma, continua a manter-se uma única leitura para acesso aos dados, sem o inconveniente de reorganizar as chaves existentes. Esta técnica usa os seguintes princípios: A função h(k) tem b bit dos quais apenas os i menos significativos são utilizados; 160
3 Armazenamento e Indexação 5 Um diretório com 2 i apontadores permite o acesso aos registos no disco. O diretório tem um nível global, que é o número i de bit usado para endereçar as chaves. Cada bloco tem um nível local j, que é o número de bit usado para colocar as chaves nesse bloco. Quando um bloco fica preenchido como resultado da inserção de um novo registo com chave K, podem ocorrer duas situações: O nível local j do bloco é inferior ao nível global do diretório. Nesse caso, divide-se o bloco usando os j +1 bit e repartindo os registos entre os dois blocos. O nível local dos dois blocos passa a ser j +1; O nível local j do bloco é igual ao nível global i do diretório. Nesse caso, incrementa-se i duplicando o número de entradas no diretório e substituindo cada entrada por duas que apontam para o mesmo bloco. Calcula-se o novo valor da chave K e, como i é agora superior ao j do bloco, procede-se como na situação anterior. O tamanho do diretório permite que a sua duplicação seja uma operação rápida e não penalize o desempenho. Vamos considerar que a função de hashing usa apenas o bit menos significativo (i = 1). A Figura 5.22 mostra um exemplo com três registos mapeados em dois blocos. k h(k) i = diretório Figura 5.22 Hashing extensível blocos j = 1 j = 1 O diretório usa apenas um bit para colocar o hashing da chave nos dois blocos; repare-se que as duas chaves com o bit menos significativo a 1, 101 e 111 são colocadas no mesmo bloco. Vamos supor que a capacidade dos blocos é de 2. A inserção do valor 001 seria feita num bloco preenchido com um nível local igual ao nível global, por isso o diretório tem de ser duplicado, como mostrado na Figura k h(k) i = j = 1 j = 2 10 blocos j = 2 diretório Figura 5.23 Duplicação do diretório novo bloco Repare-se que como usamos os bits menos significativos, duplicar o diretório consiste apenas em copiá-lo, uma vez que os apontadores mantêm a sua posição. Depois de duplicado, procede-se à inserção do valor no bloco correspondente provocando a sua divisão e a atualização dos apontadores no diretório. Com efeito, o número de blocos não duplica, sendo que tal apenas se verifica no número de entradas no diretório. 161
4 FUNDAMENTOS DE BASES DE DADOS Caso uma entrada seja removida, pode remover-se o bloco correspondente se este ficar vazio. Senão, e se a sua ocupação for mínima, pode tentar-se uni-lo com outro bloco que tenha o mesmo nível local e os mesmos bits menos significativos. Regra geral, não compensa reduzir o tamanho do diretório, exceto se o número de chaves diminuir significativamente. Quando o número total de bits for usado, não é possível duplicar mais o diretório. Neste caso, recorre-se a blocos ligados, o que também pode acontecer se se tiver imposto um limite nas duplicações do diretório. Se a função de hashing produzir um enviesamento na distribuição das chaves, podemos ter um número reduzido de blocos a ser constantemente dividido e a atingir rapidamente o limite de duplicações do diretório. Neste caso, o interesse do hashing extensível é reduzido. Para ultrapassar estes inconvenientes, foi proposto o hashing linear, que veremos a seguir Hashing linear As técnicas de hashing linear (Litwin, 1980) usam uma família de funções h i, em que cada uma mapeia as chaves para o dobro dos blocos da anterior este efeito é semelhante à duplicação do diretório no hashing extensível. Se h 1 gere n blocos, h 2 gere 2 n blocos e assim por diante. Regra geral, h i gere 2 i n blocos, numerados de 0 a 2 i n 1. Um exemplo de uma família de funções com estas características usa o resto da divisão por 2 i n, sendo i = 0, 1, 2, e n o número inicial de blocos. Vamos considerar que inicialmente i = 0 e seguinte = 0. O critério de divisão de blocos pode ser ultrapassar uma percentagem máxima de preenchimento, de um número máximo de blocos ligados ao preenchido, ou qualquer outro critério que se queira definir. Deste modo, o critério de divisão é flexível e permite, se necessário, minorar os efeitos de reorganização do índice. Se a inserção de uma nova entrada preencher o critério de divisão de blocos, procede-se da seguinte forma: 1. Divide-se o bloco da posição seguinte, mesmo que não seja o bloco que preencheu o critério de divisão, e cria-se um novo bloco na posição 2 i n + seguinte. 2. Redistribuem-se as entradas do bloco seguinte, usando h i + 1 ; algumas entradas permanecerão, outras serão deslocadas para o novo bloco. 3. Incrementa-se seguinte de uma unidade. Assim, todos os blocos inferiores a seguinte foram reindexados. Por seu lado, a pesquisa de chaves deve testar primeiro se o bloco resultante já foi reindexado: Se h i (k) < seguinte, o bloco já foi dividido, deve reindexar a chave com h i+1 (k); Se h i (k) seguinte, o bloco ainda não foi dividido, pode ser utilizado. 162
5 Armazenamento e Indexação 5 Repare-se que se pode atingir o limite seguinte > 2 i n 1. Neste caso, todas as chaves já foram reindexadas com a função do nível seguinte h i+1. Assim, incrementa-se o nível i e coloca-se seguinte a 0, recomeçando então a partir do primeiro bloco. Em qualquer instante, a estrutura de hashing linear tem a separação de blocos para um determinado nível i apresentada na Figura blocos divididos (h i+1 ) seguinte h i blocos não divididos (h i ) h i+1 2 i n 1 blocos divididos (h i+1 ) Figura 5.24 Hashing linear Note-se que o nível seguinte permite utilizar até ao dobro dos blocos, mas isto só é feito de forma linear, um bloco de cada vez, e quando necessário, isto é, quando há divisões. Desta forma, o hashing linear pode utilizar menos memória do que o hashing extensível. Como a divisão de blocos é sempre sequencial, na posição seguinte, todos os blocos poderão eventualmente ser divididos, o que também evita longas listas de blocos ligados. Com efeito, no hashing extensível, poderia haver concentração de divisões num número reduzido de blocos, devido ao enviesamento das chaves ou da função de hashing. 5.7 Índices Mapa de Bits Um índice mapa de bits (O Neil e Quass, 1997) usa um mapa 16 de bits, em que cada bit corresponde a um valor possível do atributo indexado. Para um determinado tuplo e atributo indexado, o bit k é 1 se o k-ésimo valor estiver no atributo desse tuplo, caso contrário é 0. O mapa de bits permite uma representação compacta dos valores presentes no atributo, e é tanto mais eficaz quanto menos valores únicos existirem para esse atributo. Este tipo de índices permite também a representação de valores nulos, o que não acontece com os índices arborescentes. 16 Concetualmente é um vetor. Este tipo de índices foi inicialmente proposto no protótipo de armazém de dados Model 204, nos anos 70 (O Neil, 1987). 163
6 FUNDAMENTOS DE BASES DE DADOS Exemplo 5.1 Um exemplo de um mapa de bits é mostrado na Tabela 5.2. Existindo quatro valores distintos para um dado atributo (A, B, C, D), o mapa usa 4 bits para marcar a presença de cada um. Tabela 5.2 Exemplo de mapa de bits registo atributo b 1 b 2 b 3 b 4 r 1 A r 2 B r 3 A r 4 D Para responder a uma consulta >= B, bastaria aplicar um operador binário OU à parte do mapa que codifica valores maiores ou iguais a B: (b 2 OU b 3 OU b 4 ). Como as operações binárias são muito rápidas, testar a restrição é geralmente muito rápido, o que faz com que este tipo de índices seja atrativo nestes casos. O índice pode ser usado também na horizontal, permitindo conhecer o valor do atributo de qualquer um dos registos. Se o número de valores distintos for muito grande, o mapa também será, pelo que se desenvolveram técnicas de compressão de valores (O Neil et al., 2007) e de utilização de intervalos de valores para reduzir o número de mapas (Wu e Yu, 1998). Atualmente só o Oracle, o MySQL e o Sybase IQ permitem índices com mapas de bits; outros SGBD usam-nos internamente, por exemplo, para acelerar junções devido à sua rapidez, mas não os permitem como índices definidos pelo utilizador. Estes índices implicam geralmente um acesso aos tuplos no disco, enquanto uma B-tree pode permitir acessos apenas ao índice. Regra geral, um mapa de bits é vantajoso se: A tabela a indexar contiver linhas na ordem das dezenas de milhão; Na prática, o número elevado de condições de consulta impedir a definição de todos os índices B-tree que seriam necessários. Estas características tornam este tipo de índices essencialmente atrativos para aplicações analíticas de suporte à decisão, com consultas muito variadas e grandes quantidades de tuplos situações em que a utilização de diversos índices B+-tree muito grandes seria ineficaz. 5.8 Generalized Search Tree (GiST) Hellerstein, Naughton e Pfeffer (1995) propuseram uma estrutura arborescente genérica e equilibrada que pode ser parametrizada para implementar qualquer tipo de pesquisa adequado ao tipo de dados a indexar. Essa estrutura, Generalized Search Tree (GiST), permite acrescentar, por exemplo, pesquisas multidimensionais sobre dados espaciais, mesmo que o SGBD não disponha desta funcionalidade. A estrutura GiST permite também definir os três métodos fundamentais de um índice: pesquisar, inserir e remover. Adicionalmente, 164
7 FUNDAMENTOS DE BASES DE DADOS nes a dependências entre colunas. Por serem a técnica mais utilizada pelos SGBD, vamos detalhá-los na secção Histogramas Na prática, nem os valores dos atributos estão uniformemente distribuídos, nem os atributos são geralmente independentes entre si, embora estas hipóteses permitam calcular de forma simples a seletividade dos operadores relacionais. Guardar a distribuição completa dos valores de um atributo consumiria muitos recursos e poderia nem sempre trazer ganhos correspondentes a esse esforço, pelo que os SGBD adotaram estruturas mais simples e mas eficazes de guardar a distribuição de valores dos atributos: os histogramas. A primeira proposta de utilização de histogramas para otimização de consultas foi feita por Kooi (1980). Um histograma é uma representação com perdas de uma relação. Um histograma de um atributo de uma dada relação utiliza uma regra para definir B blocos disjuntos onde guardar a distribuição desse atributo. Uma representação sem perdas registaria a frequência f i para cada valor v i e teria um tamanho de VD R (A): {v 1, f 1 }{v 2, f 2 } {v n, f n } Dependendo do tamanho de VD R (A), pode não ser praticável manter uma estrutura com esta distribuição completa. Um histograma não regista todos os valores individualmente, mas sim grupos de valores reunidos em blocos segundo um determinado critério, como mostrado na secção Se o número de blocos for igual ao número de valores, diz-se que o histograma é completo. De uma forma geral, o número de blocos (ou seja, a sua largura) define o compromisso entre a ocupação de espaço no catálogo para guardar o histograma e a precisão pretendida. A dispersão de um valor é definida como d i = v i+1 v i, d 0 = v 1 e d n = 1, 1 i n. A área de um valor é definida como a i = f i d i. Como não se guardam os valores individuais dentro dos blocos, tem de se definir de que forma estes poderão ser estimados quando necessário, para o que se adotam geralmente três premissas: Premissa de valores contíguos: Assume-se que todos os valores entre os limites do bloco estão presentes; Premissa de dispersão uniforme: Guarda-se o número de valores e assume-se que estão igualmente espaçados dentro do bloco; Premissa de valor pontual: Assume-se que cada bloco só tem um valor, geralmente o valor mais pequeno dentro do bloco. A primeira premissa é a mais simples de utilizar, mas introduz erros maiores em distribuições não uniformes. A segunda premissa é geralmente a utilizada. Quanto à frequência, 250
8 Otimização de Consultas 7 assume-se que todos os valores de um bloco têm a frequência média do mesmo, sendo que esta é guardada juntamente com o bloco Tipos de histogramas mais comuns Os histogramas podem ser classificados segundo a forma como organizam os blocos. As formas mais comuns de organização são: Equilargo: O número de valores em cada bloco (a largura de cada intervalo representado no bloco) é aproximadamente o mesmo; este histograma é também conhecido por histograma de frequência. Em cada bloco, considera-se que cada valor tem a frequência média desse bloco; Equiprofundo: O número de tuplos em cada bloco é aproximadamente o mesmo e a largura dos blocos é variável. A frequência de cada valor é calculada dividindo a frequência total da população do bloco pelo número de valores. Considere-se a distribuição de valores de um dado atributo A, numérico, apresentada na Tabela 7.3: Tabela 7.3 Distribuição de valores de um atributo numérico Os histogramas unidimensionais (isto é, que representam apenas um atributo), mais comuns são construídos nas secções seguintes Histograma equilargo A Figura 7.5 mostra um exemplo de um histograma equilargo para a distribuição da Tabela Figura 7.5 Histograma equilargo Um histograma consiste em B blocos que são intervalos de valores disjuntos. A largura de cada um dos B blocos é dada por (max R (A) min R (A))/B. O histograma da Figura 7.5 está organizado em B = 4 blocos, cada um compreendendo 5 valores. Para cada bloco, mostra-se a contagem dos valores: 20 para o bloco 1,40 para o bloco 2,60 para o bloco 3 e 16 para o bloco 4. A representação do histograma é compacta: cada bloco tem associada uma contagem e, opcionalmente, porque se calculam com facilidade os limites inferior e superior dos valores que contém. Assim, o bloco 1 compreende os valores entre 1 e 5, o bloco 2 entre 6 e 10, e assim por diante. Dentro de cada bloco, assume-se 251
9 FUNDAMENTOS DE BASES DE DADOS uma separação uniforme de valores entre os dois limites basta conhecer o número de valores dentro do bloco, pois assume-se que estão igualmente espaçados. Repare-se que se o histograma só tiver um bloco 5, reduz-se o cálculo da seletividade aos exemplos vistos anteriormente. A construção deste tipo de histogramas é facilitada, se se conhecer os valores mínimo e máximo do atributo. Se a relação for muito grande, pode contar-se os valores numa amostra aleatória e extrapolar para a relação. Na prática, os SGBD escolhem páginas no disco e consideram-nas a amostra, o que torna o processo de recolha mais simples e rápido (dezenas ou centenas de tuplos podem estar na mesma página). No entanto, dependendo da organização da relação no disco, esta forma de amostragem pode ser enviesada (por exemplo, se a relação estiver agrupada) e distorcer a construção do histograma. Alguns SGBD escolhem amostragem por tuplos ou por blocos, dependendo de análise estatística sobre alguns dados da relação. Chaudhuri, Das e Srivastava (2004) propõem algoritmos de amostragem por blocos, e utilizam-nos para a estimação de valores distintos. A manutenção deste tipo de histogramas é simples e consiste em modificar as contagens dos blocos para cada modificação dos valores na relação. Exemplo 7.5 A fim de utilizar o histograma para uma seleção do tipo A = 6, usa-se a contagem do bloco 2, com valores entre 6 e 10. O número de tuplos é calculado, assumindo uma distribuição uniforme de valores dentro do bloco, como sendo 40/5 = 8 (a contagem real é 13). Para uma seleção do tipo A > 7 A < 18, temos de considerar parcialmente os blocos 2 (a 3/5) e 4 (a 2/5), e o bloco 3 na totalidade: 40 3/ / tuplos (a contagem real é 80). Se tivéssemos usado o modelo simplificado, o número de tuplos para A = 6 seria 136/20 7. Para A > 7 A < 18, teríamos 136 (18 7)/20 75 tuplos Histograma equiprofundo Piatetsky-Shapiro e Connel (1984) propuseram a utilização de um histograma alternativo ao apresentado, o histograma equiprofundo (ou equifrequência). Este tipo de histograma guarda um número aproximado (se possível igual), de tuplos em cada bloco, como mostrado na Figura Figura 7.6 Histograma equiprofundo A profundidade (ou altura) de cada bloco é dada por R /B. Para construir o histograma ordena-se o atributo A e, começando pelo valor mais baixo, atribui-se a cada bloco aproximadamente o mesmo número de tuplos, neste caso 136/4 = 34. O bloco 1 tem os limites (1, 7), o bloco 2 (7, 11), o bloco 3 (11, 13) e o bloco 4 (13, 20). Repare-se que o mesmo 5 Diz-se que é um histograma trivial. 252
10 Otimização de Consultas 7 valor pode atravessar mais do que um bloco. Os SGBD reconhecem um valor como sendo popular, se este aparecer em mais do que um limite superior de um bloco. Esta técnica é, no entanto, falível e muito dependente do número de blocos escolhido na Figura 7.6 nenhum limite superior aparece repetido, embora o 7, o 11 e o 13 sejam valores frequentes. Dentro de cada bloco, assume-se que a frequência de cada valor é uniforme, correspondendo à média das frequências dos valores dentro do bloco. A obrigatoriedade de ordenação da relação implica geralmente custos elevados para a construção do histograma, pelo que se pode utilizar, se necessário, uma amostra, com as precauções já referidas no caso anterior. Note-se que a maioria dos SGBD utiliza amostras para construir histogramas. A manutenção deste tipo de histogramas pode implicar fusão e divisão de blocos para manter, face a modificações na relação, um número de tuplos por bloco o mais equilibrado possível. Exemplo 7.6 A fim de utilizar o histograma para uma seleção do tipo A = 6, usa-se a contagem do bloco 1, com valores entre 1 e 7. A contagem estimada é 34/7 5 (a contagem real é 13). Para uma seleção do tipo A > 7 A < 18, temos de considerar parcialmente o bloco 4 (a 4/7) e os blocos 2 e 3 na totalidade: /7 87 (a contagem real é 80). Os histogramas equiprofundos adaptam-se a enviesamentos na distribuição dos valores, permitindo que os blocos tenham larguras diferentes. Nestas situações, os histogramas equilargos podem introduzir erros substanciais nas estimativas Taxonomia de histogramas Poosala et al. (1996) propuseram que os histogramas se pudessem classificar segundo os seguintes parâmetros: Parâmetro de ordenação: Os autores propuseram que este parâmetro seja o valor do atributo, a sua frequência ou a área, produzindo valores contínuos, sem sobreposição entre blocos; Parâmetro de partição: Especifica as restrições no número de elementos de cada bloco. As classes de partição mais comuns são série, que não coloca nenhuma restrição ao número de elementos, e end-biased, que requer que todos os blocos menos um tenham apenas um valor. Estas classes diferem na quantidade de memória utilizada (maior para a classe série ) e na precisão (maior para a classe end-biased ); Parâmetro-fonte: Trata-se da propriedade de distribuição dos dados que é mais relevante para a estimação e que é usada juntamente com o parâmetro seguinte para decidir a partição dos dados. Os parâmetros mais úteis são a dispersão, a frequência e a área; 253
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 maisPossui 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 maisAlgoritmos de pesquisa. Tabelas de dispersão/hash
Algoritmos de pesquisa Tabelas de dispersão/hash Introdução Motivação: Considerar o problema de pesquisar um determinado valor num vetor (array). Se o vetor não está ordenado, a pesquisa requer O(n) de
Leia maisUtilização do SOLVER do EXCEL
Utilização do SOLVER do EXCEL 1 Utilização do SOLVER do EXCEL José Fernando Oliveira DEEC FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO MAIO 1998 Para ilustrar a utilização do Solver na resolução de
Leia maisOrganizaçã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 maisFicheiros binários 1. Ficheiros binários
Ficheiros binários 1 Ficheiros binários 1. Considere que dispõe de ficheiros binários cujo conteúdo é constituído por uma ou mais estruturas como a indicada a seguir struct registo { int ref; float var;
Leia maisFundamentos 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 maisJunções e Índices em Tabelas
Junções e Índices em Tabelas Prof. Fernanda Baião fernanda.baiao@uniriotec.com.br SGBD Considerados MySQL (http://www.mysql.org) SGBD gratuito e simples, sem muitos recursos avançados Fácil de instalar
Leia maisBanco 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 maisProf. 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 maisAlgoritmos 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 maisPostgreSQL Performance
PostgreSQL Performance André Restivo Faculdade de Engenharia da Universidade do Porto February 24, 2012 André Restivo (FEUP) PostgreSQL Performance February 24, 2012 1 / 45 Sumário 1 Armazenamento 2 Índices
Leia maisA 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 mais3. Características amostrais. Medidas de localização e dispersão
Estatística Descritiva com Excel Complementos. 77 3. Características amostrais. Medidas de localização e dispersão 3.1- Introdução No módulo de Estatística foram apresentadas as medidas ou estatísticas
Leia maisMódulo 4. Construindo uma solução OLAP
Módulo 4. Construindo uma solução OLAP Objetivos Diferenciar as diversas formas de armazenamento Compreender o que é e como definir a porcentagem de agregação Conhecer a possibilidade da utilização de
Leia maisProf. Daniela Barreiro Claro
Prof. Daniela Barreiro Claro SQL, SQL3 e OQL são linguagens declarativas O SGBD deve processar e otimizar estas consultas antes delas serem efetivamente executadas Uma consulta possui muitas estratégias
Leia maisManual de Utilizador. Disciplina de Projecto de Sistemas Industriais. Escola Superior de Tecnologia. Instituto Politécnico de Castelo Branco
Escola Superior de Tecnologia Instituto Politécnico de Castelo Branco Departamento de Informática Curso de Engenharia Informática Disciplina de Projecto de Sistemas Industriais Ano Lectivo de 2005/2006
Leia maisEndereçamento IP 09/05/2014. Endereçamento IP CLASSE B CLASSE A CLASSE A CLASSE C
Endereçamento IP Endereçamento IP Prof. Marcel Santos Silva marcel@magres.com.br É uma sequência de números composta de 32 bits. Esse valor consiste num conjunto de quatro grupos de 8 bits. Cada conjunto
Leia maisTECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO. SISTEMAS DE GESTÃO DE BASE DE DADOS Microsoft Access TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO
TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO Microsoft Access TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO CONCEITOS BÁSICOS 1 Necessidade das base de dados Permite guardar dados dos mais variados tipos; Permite
Leia maisCT-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Índices* Professora Rosane Minghim. * Baseado no material de Leandro C. Cintra e M. C. F. de Oliveira. Fonte: Folk & Zoelick, File Structures.
Índices* Professora Rosane Minghim * Baseado no material de Leandro C. Cintra e M. C. F. de Oliveira. Fonte: Folk & Zoelick, File Structures. Índice Em geral, um índice fornece mecanismos para localizar
Leia maisSetores Trilhas. Espaço entre setores Espaço entre trilhas
Memória Externa Disco Magnético O disco magnético é constituído de um prato circular de metal ou plástico, coberto com um material que poder magnetizado. Os dados são gravados e posteriormente lidos do
Leia maisUnidade 5 Armazenamento e Indexação
Unidade 5 Armazenamento e Indexação Engenharia de Computação / Engenharia de Produção Banco de Dados Prof. Maria das Graças da Silva Teixeira Material base: Banco de Dados, 2009.2, prof. Otacílio José
Leia maisHashing 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 maisTabela 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 maisBanco 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 maisPesquisa e organização de informação
Pesquisa e organização de informação Capítulo 3 A capacidade e a variedade de dispositivos de armazenamento que qualquer computador atual possui, tornam a pesquisa de informação um desafio cada vez maior
Leia maisSistemas 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 maisA VISTA BACKSTAGE PRINCIPAIS OPÇÕES NO ECRÃ DE ACESSO
DOMINE A 110% ACCESS 2010 A VISTA BACKSTAGE Assim que é activado o Access, é visualizado o ecrã principal de acesso na nova vista Backstage. Após aceder ao Access 2010, no canto superior esquerdo do Friso,
Leia maisDOCBASE. 1. Conceitos gerais. 2. Estrutura da pasta de associações. 3. A área de documentos reservados. 4. Associação de Imagens
Documentação, Informática e Desenvolvimento 1 DOCBASE ASSOCIAÇÔES MULTIMÉDIA 1. Conceitos gerais 2. Estrutura da pasta de associações 3. A área de documentos reservados 4. Associação de Imagens 5. Procedimentos
Leia maisHashing. 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 maisSistemas 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 maisPesquisa: localização de um Registo num Ficheiro (para aceder ao registo: ler/alterar informação) R. P. António Viera, 23. R. Carlos Seixas, 9, 6º
Pesquisa Pesquisa: localização de um Registo num Ficheiro (para aceder ao registo: ler/alterar informação) Ficheiro (ou tabela) Campos Nome Endereço Telefone Antunes, João A. R. P. António Viera, 23 720456
Leia maisÁ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 maisTarefa Orientada 16 Vistas
Tarefa Orientada 16 Vistas Objectivos: Vistas só de leitura Vistas de manipulação de dados Uma vista consiste numa instrução de SELECT que é armazenada como um objecto na base de dados. Deste modo, um
Leia maisCurso Superior em Tecnologia de Análise e Desenvolvimento de Sistemas. Campus Alegrete. Banco de Dados I. Cristhiano Bossardi de Vasconcellos.
Curso Superior em Tecnologia de Análise e Desenvolvimento de Sistemas Campus Alegrete Banco de Dados I Cristhiano Bossardi de Vasconcellos Parte 8 TRANSFORMAÇÃO ENTRE MODELOS A abordagem ER é voltada à
Leia maisCurso: Redes II (Heterogênea e Convergente) Tema da Aula: Características Roteamento
Curso: Redes II (Heterogênea e Convergente) Tema da Aula: Características Roteamento Professor Rene - UNIP 1 Roteamento Dinâmico Perspectiva e histórico Os protocolos de roteamento dinâmico são usados
Leia maisMicrosoft Access XP Módulo Um
Microsoft Access XP Módulo Um Neste primeiro módulo de aula do curso completo de Access XP vamos nos dedicar ao estudo de alguns termos relacionados com banco de dados e as principais novidades do novo
Leia maisLINGUAGEM DE BANCO DE DADOS
LINGUAGEM DE BANCO DE DADOS Gabriela Trevisan Bacharel em Sistemas de Informação Universidade Federal do Rio Grande Pós-Graduanda Formação Pedagógica de Professores (FAQI) Conceito de BD Um banco de dados
Leia maisTrabalhos Práticos. Programação II Curso: Engª Electrotécnica - Electrónica e Computadores
Trabalhos Práticos Programação II Curso: Engª Electrotécnica - Electrónica e Computadores 1. Objectivos 2. Calendarização 3. Normas 3.1 Relatório 3.2 Avaliação 4. Propostas Na disciplina de Programação
Leia maisMemória Cache. Prof. Leonardo Barreto Campos 1
Memória Cache Prof. Leonardo Barreto Campos 1 Sumário Introdução; Projeto de Memórias Cache; Tamanho; Função de Mapeamento; Política de Escrita; Tamanho da Linha; Número de Memórias Cache; Bibliografia.
Leia maisTabela 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Árvores Binárias de Busca
Árvores Binárias de Busca Definição Uma Árvore Binária de Busca possui as mesmas propriedades de uma AB, acrescida da seguinte propriedade: Para todo nó da árvore, se seu valor é X, então: Os nós pertencentes
Leia maisMicrosoft Access 2010. Para conhecermos o Access, vamos construir uma BD e apresentar os conceitos necessários a cada momento
Microsoft Access 2010 Para conhecermos o Access, vamos construir uma BD e apresentar os conceitos necessários a cada momento 1 Principais objetos do Access Tabelas Guardam a informação da BD (Base de Dados)
Leia maisÁ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 maisBusca. 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 maisBUSCA EM LISTAS LISTAS SEQÜENCIAIS, LISTAS SIMPLESMENTE E DUPLAMENTE ENCADEADAS E LISTAS CIRCULARES
BUSCA EM LISTAS LISTAS SEQÜENCIAIS, LISTAS SIMPLESMENTE E DUPLAMENTE ENCADEADAS E LISTAS CIRCULARES ALGORITMOS DE BUSCA EM LISTAS COM ALOCAÇÃO SEQÜENCIAL Busca em Listas Lineares A operação de busca é
Leia maisBase de dados I. Uma base de dados é um simples repositório de informação relacionado com um determinado assunto ou finalidade
Base de dados I O que é? Uma base de dados é um simples repositório de informação relacionado com um determinado assunto ou finalidade Para que serve? Serve para gerir vastos conjuntos de informação de
Leia maisSistema 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 maisESTRUTURAS 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 maisPersistência e Banco de Dados em Jogos Digitais
Persistência e Banco de Dados em Jogos Digitais Prof. Marcos Francisco Pereira da Silva Especialista em Engenharia de Software Jogos Digitais - Computação Gráfica 1 Agenda Vantagens de usar a abordagem
Leia maisBanco 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 maisProgramaçã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 maisDICIONÁ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 maisTecnologia de Redes de Computadores - aula 5
Tecnologia de Redes de Computadores - aula 5 Prof. Celso Rabelo Centro Universitário da Cidade 1 Objetivo 2 3 4 IGPxEGP Vetor de Distância Estado de Enlace Objetivo Objetivo Apresentar o conceito de. Conceito
Leia maisActivALEA. active e actualize a sua literacia
ActivALEA active e actualize a sua literacia N.º 25 HIISTOGRAMA Por: Maria Eugénia Graça Martins Departamento de Estatística e Investigação Operacional da FCUL memartins@fc.ul.pt Emília Oliveira Escola
Leia maisAPOSTILA DE EXCEL 2007
APOSTILA DE EXCEL 2007 1. Introdução Quando você cria uma planilha nova, a tela do computador é dividida em linhas e colunas, formando uma grade. A interseção de uma linha e de uma coluna é chamada de
Leia maisSistemas 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 maisTabela de roteamento
Existem duas atividades que são básicas a um roteador. São elas: A determinação das melhores rotas Determinar a melhor rota é definir por qual enlace uma determinada mensagem deve ser enviada para chegar
Leia maisHistogramas. 12 de Fevereiro de 2015
Apêndice B Histogramas Uma situação comum no laboratório e na vida real é a de se ter uma grande quantidade de dados e deles termos que extrair uma série de informações. Encontramos essa situação em pesquisas
Leia maisProjeto de Máquinas de Estado
Projeto de Máquinas de Estado Organizado por Rodrigo Hausen. Original de Thomas L. Floyd. Versão 0: 15 de março de 2013 http://compscinet.org/circuitos Resumo Grande parte deste texto, exemplos e estrutura
Leia maisPesquisa em Memória Primária. Algoritmos e Estruturas de Dados II
Pesquisa em Memória Primária Algoritmos e Estruturas de Dados II Pesquisa em Memória Primária Pesquisa: Recuperação de informação em um grande volume de dados Informação é dividida em registros e cada
Leia maisFACULDADE 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 maisRoteiro. Modelo de Dados Relacional. Processo de Projeto de Banco de Dados. BCC321 - Banco de Dados I. Ementa. Posicionamento.
Roteiro Modelo de Dados Relacional Posicionamento Luiz Henrique de Campos Merschmann Departamento de Computação Universidade Federal de Ouro Preto luizhenrique@iceb.ufop.br www.decom.ufop.br/luiz Introdução
Leia maisHASHING. Katia Guimarães. katia@cin.ufpe.br 1
HASHING Katia Guimarães katia@cin.ufpe.br 1 HASHING Suponha que você pudesse criar um array onde qualquer item pudesse ser localizado através de acesso direto. Isso seria ideal em aplicações do tipo Dicionário,
Leia maisAcadêmicos: Luís Fernando Martins Nagata Gustavo Rezende Vinícius Rezende Santos
Acadêmicos: Luís Fernando Martins Nagata Gustavo Rezende Vinícius Rezende Santos Pilhas de Dispositivos Drivers no Windows Vista podem fazer todo trabalho sozinho; Uma requisição pode passar por uma seqüência
Leia maisZS Rest. Manual Profissional. BackOffice Mapa de Mesas. v2011
Manual Profissional BackOffice Mapa de Mesas v2011 1 1. Índice 2. Introdução... 2 3. Iniciar ZSRest Backoffice... 3 4. Confirmar desenho de mesas... 4 b) Activar mapa de mesas... 4 c) Zonas... 4 5. Desenhar
Leia maisTabelas 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 maisIBM1018 Física Básica II FFCLRP USP Prof. Antônio Roque Aula 6. O trabalho feito pela força para deslocar o corpo de a para b é dado por: = =
Energia Potencial Elétrica Física I revisitada 1 Seja um corpo de massa m que se move em linha reta sob ação de uma força F que atua ao longo da linha. O trabalho feito pela força para deslocar o corpo
Leia maisÁrvores B + Prof Márcio Bueno. ed2tarde@marciobueno.com / ed2noite@marciobueno.com. Material da Prof a Ana Eliza Lopes Moura
Árvores B + Prof Márcio Bueno ed2tarde@marciobueno.com / ed2noite@marciobueno.com Material da Prof a Ana Eliza Lopes Moura Árvore B + A árvore B + é uma variação da estrutura básica da árvore B. Características:
Leia maisUnidade 5: Sistemas de Representação
Arquitetura e Organização de Computadores Atualização: 9/8/ Unidade 5: Sistemas de Representação Números de Ponto Flutuante IEEE 754/8 e Caracteres ASCII Prof. Daniel Caetano Objetivo: Compreender a representação
Leia maisTarefa Orientada 13 Agrupamento e sumário de dados
Tarefa Orientada 13 Agrupamento e sumário de dados Objectivos: Funções de agregação Agrupamento e sumário de dados Funções de agregação Nesta tarefa orientada iremos formular consultas que sumariam os
Leia maisDisciplina: Unidade III: Prof.: E-mail: Período:
Encontro 08 Disciplina: Sistemas de Banco de Dados Unidade III: Modelagem Lógico de Dados Prof.: Mario Filho E-mail: pro@mariofilho.com.br Período: 5º. SIG - ADM Relembrando... Necessidade de Dados Projeto
Leia mais2 Diagrama de Caso de Uso
Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Diagrama de Caso de Uso (Use Case) Autoria:Aristófanes Corrêa
Leia maisLidar com números e estatísticas não é fácil. Reunir esses números numa apresentação pode ser ainda mais complicado.
, ()! $ Lidar com números e estatísticas não é fácil. Reunir esses números numa apresentação pode ser ainda mais complicado. Uma estratégia muito utilizada para organizar visualmente informações numéricas
Leia maisAPROG - Civil. Excel. Técnicas de pesquisa de informação em tabelas. Instituto Superior de Engenharia do Porto 2000-2007
APROG - Civil Excel Técnicas de pesquisa de informação em tabelas Instituto Superior de Engenharia do Porto 2000-2007 Elaborado por: António Silva (DEI-ISEP) Pesquisa de Informação em Tabelas O Excel
Leia maisChaves. Chaves. O modelo relacional implementa dois conhecidos conceitos de chaves, como veremos a seguir:
Chaves 1 Chaves CONCEITO DE CHAVE: determina o conceito de item de busca, ou seja, um dado que será empregado nas consultas à base de dados. É um conceito lógico da aplicação (chave primária e chave estrangeira).
Leia maisFigura 1 Busca Linear
----- Evidentemente, possuir os dados não ajuda o programador ou o usuário se eles não souberem onde os dados estão. Imagine, por exemplo, uma festa de casamento com cem convidados na qual não se sabe
Leia maisA SÈTIMA. O nosso principal objectivo
03 A SÈTIMA A SÉTIMA produz soluções de software maioritariamente com recurso à WEB, de modo a dar suporte ao crescimento tecnológico que é já a maior realidade do século XXI. Esta aposta deve-se ao facto
Leia maisO ESPAÇO NULO DE A: RESOLVENDO AX = 0 3.2
3.2 O Espaço Nulo de A: Resolvendo Ax = 0 11 O ESPAÇO NULO DE A: RESOLVENDO AX = 0 3.2 Esta seção trata do espaço de soluções para Ax = 0. A matriz A pode ser quadrada ou retangular. Uma solução imediata
Leia maisGuia de Estudo Folha de Cálculo Microsoft Excel
Tecnologias da Informação e Comunicação Guia de Estudo Folha de Cálculo Microsoft Excel Estrutura geral de uma folha de cálculo: colunas, linhas, células, endereços Uma folha de cálculo electrónica ( electronic
Leia mais02 - Usando o SiteMaster - Informações importantes
01 - Apresentação do SiteMaster - News Edition O SiteMaster foi desenvolvido para ser um sistema simples de gerenciamento de notícias, instalado em seu próprio computador e com configuração simplificada,
Leia maisDecidir como medir cada característica. Definir as características de qualidade. Estabelecer padrões de qualidade
Escola de Engenharia de Lorena - EEL Controle Estatístico de Processos CEP Prof. MSc. Fabrício Maciel Gomes Objetivo de um Processo Produzir um produto que satisfaça totalmente ao cliente. Conceito de
Leia maisTECNOLOGIAS DE INFORMAÇÃO E COMUNICAÇÃO
TECNOLOGIAS DE INFORMAÇÃO E COMUNICAÇÃO ACCESS 2010 Conceitos Básicos Ficha Informativa Professor : Vanda Pereira módulo didáctico Conceitos Básicos Necessidade das base de dados Permite guardar dados
Leia maisMICROSOFT OFFICE EXCEL 2007
LEIAME Nenhuma informação da APOSTILA - MICROSOFT OFFICE EXCEL 2007 poderá ser copiada, movida ou modificada sem autorização prévia e escrita do autor. MICROSOFT OFFICE EXCEL 2007 Efetue cálculos, analise
Leia maisCapacidade = 512 x 300 x 20000 x 2 x 5 = 30.720.000.000 30,72 GB
Calculando a capacidade de disco: Capacidade = (# bytes/setor) x (méd. # setores/trilha) x (# trilhas/superfície) x (# superfícies/prato) x (# pratos/disco) Exemplo 01: 512 bytes/setor 300 setores/trilha
Leia maisEngenharia de Software e Sistemas Distribuídos. Enunciado Geral do Projecto
LEIC-A, LEIC-T, LETI, MEIC-T, MEIC-A Engenharia de Software e Sistemas Distribuídos 2 o Semestre 2014/2015 Enunciado Geral do Projecto O que se segue é uma descrição geral do domínio do projecto a desenvolver
Leia maisEntrega Expresso e Facilitação do Comércio: Impactos na Economia Global
Janeiro 2015 Frontier Economics 1 Entrega Expresso e Facilitação do Comércio: Impactos na Economia Global Sumário Executivo Bases e objetivo A Entrega Expresso é um componente crítico para muitos negócios
Leia maisÁ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 maisArquiteturas RISC. (Reduced Instructions Set Computers)
Arquiteturas RISC (Reduced Instructions Set Computers) 1 INOVAÇÕES DESDE O SURGIMENTO DO COMPU- TADOR DE PROGRAMA ARMAZENADO (1950)! O conceito de família: desacoplamento da arquitetura de uma máquina
Leia maisBANCO DE DADOS. info 3º ano. Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br www.diemesleno.com.br
BANCO DE DADOS info 3º ano Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br www.diemesleno.com.br BANCO DE DADOS Unidade 1 - Introdução Dados; Banco de Dados; Base de Dados; Projeto de Banco de Dados.
Leia mais2. Método de Monte Carlo
2. Método de Monte Carlo O método de Monte Carlo é uma denominação genérica tendo em comum o uso de variáveis aleatórias para resolver, via simulação numérica, uma variada gama de problemas matemáticos.
Leia maisTarefa Orientada 14 Subconsultas
Tarefa Orientada 14 Subconsultas Objectivos: Subconsultas não correlacionadas Operadores ALL, SOME e ANY Subconsultas correlacionadas Operador EXISTS Subconsultas incluídas na cláusula FROM de uma consulta
Leia maisCAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES
CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES 3.1 - IDENTIFICADORES Os objetos que usamos no nosso algoritmo são uma representação simbólica de um valor de dado. Assim, quando executamos a seguinte instrução:
Leia maisEngenharia de Software III
Engenharia de Software III Casos de uso http://dl.dropbox.com/u/3025380/es3/aula6.pdf (flavio.ceci@unisul.br) 09/09/2010 O que são casos de uso? Um caso de uso procura documentar as ações necessárias,
Leia maisAlgoritmos de Busca em Tabelas
Dentre os vários algoritmos fundamentais, os algoritmos de busca em tabelas estão entre os mais usados. Considere por exemplo um sistema de banco de dados. As operações de busca e recuperação dos dados
Leia maisConsistem num conjunto de apontadores para instâncias especificas de cada relação.
Mecanismo usado para mais fácil e rapidamente aceder à informação existente numa base de dados. Bases de Dados de elevadas dimensões. Consistem num conjunto de apontadores para instâncias especificas de
Leia maisDEPARTAMENTO DE ENGENHARIA INFORMÁTICA FACULDADE DE CIÊNCIAS E TECNOLOGIA DA UNIVERSIDADE DE COIMBRA
DEPARTAMENTO DE ENGENHARIA INFORMÁTICA FACULDADE DE CIÊNCIAS E TECNOLOGIA DA UNIVERSIDADE DE COIMBRA Sistemas Operativos 2003/2004 Trabalho Prático #2 -- Programação em C com ponteiros -- Objectivos Familiarização
Leia mais