Sistemas de Informação e Bases de Dados 2012/2013. Índices. Alberto Sardinha

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

Download "Sistemas de Informação e Bases de Dados 2012/2013. Índices. Alberto Sardinha"

Transcrição

1 Sistemas de Informação e Bases de Dados 2012/2013 Índices Alberto Sardinha

2 Sumário Índices Criação de Índices em SQL Exemplos 2012 Ins)tuto Superior Técnico 1

3 Bibliografia Raghu Ramakrishnan, Database Management Systems, 3ª edição. Cap Ins)tuto Superior Técnico 2

4 Problema BD com muitos registos precisa de espaço! BD com muitos registos pode demorar muito tempo para achar uma resposta! Resposta de uma consulta SQL 2012 Ins)tuto Superior Técnico 3

5 Discos (HD) transferência lenta transferência rápida e em blocos (512B ~ 4KB) e aos bytes memória disco BD / aplicação IST DEI Bases de Dados

6 Armazenar tudo em memória: porque não? Memória RAM É volátil É limitado Tempo de acesso muito mais rápido que um HD Discos (HD) É persistente Há mais espaço Tempo de acesso é mais lento que a memória RAM Preços (p.e. dados Nov 2011, obtidos numa loja de componentes PC) 4 GB RAM: 20 = 5 /Gb 2 TB HD SATA: 100 = 0.05 /Gb HD ~ 100 x mais barato 2012 Ins)tuto Superior Técnico 5

7 Acesso aos dados Os dados são transferidos entre o disco e a memória em blocos É objectivo de qualquer SGBD minimizar o número de transferências de blocos entre disco e memória IST DEI Bases de Dados

8 Índices Muitas vezes, pretendemos chegar aos registos pelos valores de um ou mais campos Procurar todos os alunos do IST do DEI Procurar todos os alunos de média superior a 14 no DEG Índices: estruturas de dados alternativas que nos permitem responder a estes pedidos de forma eficiente Ins)tuto Superior Técnico 7

9 Formato registo índice Índices permitem acelerar o acesso aos dados p.ex. índice remissivo de um livro assunto é a chave de procura (search key) nº da página é o apontador Um índice contém registos na forma chave de procura! apontador(es) para registo(s)" em geral é muito mais pequeno que a tabela indexada 2012 Ins)tuto Superior Técnico 8

10 Consulta sem Índice Implica pesquisa sequencial ou varrimento (scan) pode ser muito lenta para tabelas grandes 9

11 Consulta com Índice Pesquisa no índice é muito rápida, mesmo para tabelas grandes Índice 2012 Ins)tuto Superior Técnico 10

12 Índices ordenados Numa tabela pode haver 2 tipos de índices Índice agrupado (clustered) indexa a coluna pela qual os dados estão ordenados normalmente é a chave primária, mas pode não ser Índice desagrupado (non-clustered) indexa uma coluna que não aquela pela qual os dados estão ordenados este índice especifica uma ordem diferente da tabela IST DEI Bases de Dados

13 Índices Agrupados (clustered) Índice Índice 2012 Ins)tuto Superior Técnico 12

14 Índices Desagrupados (non-clustered) Tabela Tabela Índice Índice 2012 Instituto Superior Técnico 13

15 Escolha de Índice Agrupado Podemos ter os índices não agrupados que quisermos sobre um ficheiro, mas apenas podemos ter um índice agrupado por ficheiro apenas uma organização de cada ficheiro permite um índice agrupado. Manter um índice agrupado tem custos quase como um ficheiro ordenado. Apenas se justifica em geral se várias interrogações tiram partido dele Ins)tuto Superior Técnico 14

16 Exemplos Referência: understanding-sql-server-indexing/ 2012 Ins)tuto Superior Técnico 15

17 Exemplo Tabela dbo.contact registos Execution Plan do SQL Server Selecionar a consulta SQL + Control-L 2012 Ins)tuto Superior Técnico 16

18 Exemplo Sem índice 2012 Ins)tuto Superior Técnico 17

19 Exemplo Índice desagrupado na coluna lastname 2012 Ins)tuto Superior Técnico 18

20 Exemplo Índice agrupado na coluna lastname 2012 Ins)tuto Superior Técnico 19

21 Exemplo Índice desagrupado na coluna lastname, mas só selecionando lastname 2012 Ins)tuto Superior Técnico 20

22 Definição de índices em SQL Criação de um índice create index index_name on table_name(column_list) Exemplo create index branch_index on branch(branch_name) Para eliminar o índice: drop index branch_index IST DEI Bases de Dados

23 Definição de índices em SQL Criação de um índice create [clustered nonclustered] index index_name on table_name(column_list) Exemplo create clustered index branch_index on branch(branch_name) IST DEI Bases de Dados

24 Índices com múltiplas chaves de procura Certas perguntas exigem múltiplos índices select account_number from account where branch_name = Perryridge and balance = 1000 estratégias possíveis usar índice para branch_name e testar valor de balance usar índice para balance e testar valor de branch_name usar índice para branch_name e outro para balance e intersectar os resultados IST DEI Bases de Dados

25 Chaves de procura compostas Chaves de procura compostas chaves de procura com mais de um atributo p.ex. create index branch_balance_index on account (branch_name, balance) São pesquisados por ordem lexicográfica (branch 1, balance 1 ) < (branch 2, balance 2 ) se (branch 1 < branch 2 ) ou (branch 1 = branch 2 ) e (balance 1 < balance 2 ) IST DEI Bases de Dados

26 Chaves de procura compostas where branch_name = "Perryridge" and balance = 1000 Um índice composto pode ser usado para obter os registos que satisfazem as duas condições mais eficiente do que usar índices separados também é eficiente noutros casos, p.ex. where branch_name = "Perryridge" and balance > 1000 pode não ser eficiente em where branch_name > "Perryridge" and balance = 1000 obtém registos que satisfazem a primeira mas não a segunda condição IST DEI Bases de Dados

27 Exemplos Como escolher um índice? 2012 Ins)tuto Superior Técnico 26

28 Exemplo 1 SELECT E.dno FROM Employees E WHERE E.age > Ins)tuto Superior Técnico 27

29 Exemplo 1 SELECT E.dno FROM Employees E WHERE E.age > 40 Índice em age. Utilidade do índice depende da seletividade da condição (nº tuplos que satisfazem a condição) Se 90% tem idade superior a 40, índice é inútil Se apenas 10% têm idade superior a 40, é útil apenas se estiver agrupado 2012 Ins)tuto Superior Técnico 28

30 Exemplo 2 SELECT E.dno, COUNT(*) FROM Employees E WHERE E.age > 10 GROUP BY E.dno 2012 Ins)tuto Superior Técnico 29

31 Exemplo 2 SELECT E.dno, COUNT(*) FROM Employees E WHERE E.age > 10 GROUP BY E.dno Melhor opção seria ter índice em dno se condição em age é pouco seletiva. Se condição em age é muito seletiva, melhor seria um índice agrupado sobre age 2012 Ins)tuto Superior Técnico 30

32 Exemplo 3 SELECT E.dno FROM Employees E WHERE E.hobby = stamps 2012 Ins)tuto Superior Técnico 31

33 Exemplo 3 SELECT E.dno FROM Employees E WHERE E.hobby = stamps Se condição em hobby é pouco selectiva e consulta frequente então criar índice em hobby! 2012 Ins)tuto Superior Técnico 32

34 Exemplo 4 SELECT E.eid FROM Employees E WHERE E.age BETWEEN 20 and 30 AND E.sal BETWEEN 3000 and 5000 Índice composto <age,sal> se condições forem selectivas. Agrupado é melhor Ordem do índice composto indiferente se atributos igualmente seletivos 2012 Ins)tuto Superior Técnico 33

35 Sumário Índices Próxima aula: Transações 34

Bases de Dados. Índices. Discos. transferência rápida e aos bytes. transferência lenta e em blocos (512B ~ 4KB) memória. disco BD / aplicação

Bases de Dados. Índices. Discos. transferência rápida e aos bytes. transferência lenta e em blocos (512B ~ 4KB) memória. disco BD / aplicação Bases de Dados Índices Discos transferência lenta e em blocos (512B ~ 4KB) transferência rápida e aos bytes memória disco BD / aplicação 2 1 Discos 7200rpm = 120 rot/s 1 5 platters Ø 8.9 cm 50000 ~ 100000

Leia mais

Bases de Dados. Índices. Discos. transferência lenta. transferência rápida e em blocos (512B ~ 4KB) e aos bytes. memória.

Bases de Dados. Índices. Discos. transferência lenta. transferência rápida e em blocos (512B ~ 4KB) e aos bytes. memória. Bases de Dados Índices Discos transferência lenta transferência rápida e em blocos (512B ~ 4KB) e aos bytes memória disco aplicação 2 1 Discos 7200rpm = 120 rot/s 1 5 platters Ø 8.9 cm 50000 ~ 100000 tracks

Leia mais

Bases de Dados. Remoções em árvores B + Remoção em árvores B +

Bases de Dados. Remoções em árvores B + Remoção em árvores B + Bases de Dados Remoções em árvores B + Remoção em árvores B + Remoção procurar o registo e removê-lo do ficheiro se o apontador ou contentor ficar vazio, remover a entrada (valor, apontador) da folha se

Leia mais

Sistemas de Informação e Bases de Dados 2012/2013. Linguagem SQL

Sistemas de Informação e Bases de Dados 2012/2013. Linguagem SQL Sistemas de Informação e Bases de Dados 2012/2013 Linguagem SQL Alberto Sardinha Bibliografia Raghu Ramakrishnan, Database Management Systems, Cap. 3 e 5 1 Sumário Linguagem SQL 2 História Princípio dos

Leia mais

Bases de Dados 2013/2014 Armazenamento e Índices. Helena Galhardas. Sumário

Bases de Dados 2013/2014 Armazenamento e Índices. Helena Galhardas. Sumário Bases de Dados 2013/2014 Armazenamento e Índices Helena Galhardas Sumário Tipos de memória Gestão do espaço em disco Gestão do tampão em memória Ficheiros de registos Heap files Organização de ficheiros

Leia mais

Sistemas de Informação e Bases de Dados 2012/2013. Restrições de Integridade em SQL

Sistemas de Informação e Bases de Dados 2012/2013. Restrições de Integridade em SQL Sistemas de Informação e Bases de Dados 2012/2013 Restrições de Integridade em SQL Alberto Sardinha Bibliografia Raghu Ramakrishnan, Database Management Systems, Cap. 3 e 5 1 Captura e Tratamento das RIs

Leia mais

Dois parâmetros essenciais t T tempo de transferência de um bloco. assume-se igual para operações de leitura e escrita

Dois parâmetros essenciais t T tempo de transferência de um bloco. assume-se igual para operações de leitura e escrita Bases de Dados Algoritmos de processamento Custo de operação Dois parâmetros essenciais t T tempo de transferência de um bloco assume-se igual para operações de leitura e escrita t S tempo de localização

Leia mais

Sistemas de Informação e Bases de Dados 2012/2013. Stored Procedures e Triggers

Sistemas de Informação e Bases de Dados 2012/2013. Stored Procedures e Triggers Sistemas de Informação e Bases de Dados 2012/2013 Stored Procedures e Triggers Alberto Sardinha Bibliografia MSDN http://msdn.microsoft.com 1 Funções e Procedimentos SQL suporta funções e procedimentos

Leia mais

Bases de Dados. Algoritmos. Custo de operação. Algoritmos de selecção. Algoritmo de ordenação. Algoritmos de junção.

Bases de Dados. Algoritmos. Custo de operação. Algoritmos de selecção. Algoritmo de ordenação. Algoritmos de junção. Bases de Dados Algoritmos Custo de operação Algoritmos de selecção Algoritmo de ordenação Algoritmos de junção Outras operações Materialização e pipelining 2 1 Bases de Dados Algoritmos de selecção Algoritmos

Leia mais

Bases de Dados. Apresentação da disciplina. Programa

Bases de Dados. Apresentação da disciplina. Programa Bases de Dados Apresentação da disciplina Programa Modelação modelo Entidade Associação modelo e álgebra relacionais Implementação SQL básico e avançado desenvolvimento de aplicações normalização Optimização

Leia mais

Sistemas de Informação e Bases de Dados 2012/2013. Transações. Alberto Sardinha

Sistemas de Informação e Bases de Dados 2012/2013. Transações. Alberto Sardinha Sistemas de Informação e Bases de Dados 2012/2013 Transações Alberto Sardinha Sumário! Conceito de Transação! Propriedades ACID! Transações em SQL! Referências Raghu Ramakrishnan, Database Management Systems,

Leia mais

Chapter 11: Indexing and Hashing. José Alferes Sistemas de Bases de Dados - ISCTEM janeiro de 2017

Chapter 11: Indexing and Hashing. José Alferes Sistemas de Bases de Dados - ISCTEM janeiro de 2017 Chapter 11: Indexing and Hashing José Alferes Sistemas de Bases de Dados - ISCTEM janeiro de 2017 36 Chapter 11: Indexing and Hashing - Conceitos de base - Índices ordenados - B + -Tree Index B-Tree Index

Leia mais

Princípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R. Renomeada para SQL (Structured Query Language)

Princípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R. Renomeada para SQL (Structured Query Language) Bases de Dados Introdução à linguagem SQL História Princípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R Renomeada para SQL (Structured Query Language) Standards ISO e ANSI SQL-86, SQL-89,

Leia mais

A cláusula order by permite ordenar tuplos exemplo: listar por ordem alfabética os nomes dos clientes com empréstimo na agência de Perryridge

A cláusula order by permite ordenar tuplos exemplo: listar por ordem alfabética os nomes dos clientes com empréstimo na agência de Perryridge Bases de Dados Elementos da linguagem SQL Ordenação de tuplos orderby A cláusula order by permite ordenar tuplos exemplo: listar por ordem alfabética os nomes dos clientes com empréstimo na agência de

Leia mais

Modelo Relacional. Josino Rodrigues

Modelo Relacional. Josino Rodrigues Modelo Relacional Josino Rodrigues Modelo Relacional Chave Primária Atributos PILOTO Num-cad Nome CPF Endereço 0101 João 123456 Recife Tuplas 0035 José 234567 São Paulo... 0987 Pedro 567890 Recife 2 Chave

Leia mais

3 Plano de Execução de Consultas

3 Plano de Execução de Consultas Sumário 1 Introdução ao Processamento de Consultas 2 Otimização de Consultas 3 Plano de Execução de Consultas 4 Introdução a Transações 5 Recuperação de Falhas 6 Controle de Concorrência 7 Fundamentos

Leia mais

Princípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R. Renomeada para SQL (Structured Query Language)

Princípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R. Renomeada para SQL (Structured Query Language) Bases de Dados Introdução à linguagem SQL História Princípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R Renomeada para SQL (Structured Query Language) Standards ISO e ANSI SQL-86, SQL-89,

Leia mais

Sumário. Definição do Plano de Execução

Sumário. Definição do Plano de Execução Sumário 1 Introdução ao Processamento de Consultas 2 Otimização de Consultas 3 Plano de Execução de Consultas Introdução a Transações 5 Recuperação de Falhas 6 Controle de Concorrência 7 Fundamentos de

Leia mais

Uso de Índices na Otimização e Processamento de Consultas. Otimização e Processamento de Consultas. Otimização e Processamento de Consultas

Uso de Índices na Otimização e Processamento de Consultas. Otimização e Processamento de Consultas. Otimização e Processamento de Consultas usuário processador de E/S gerador de respostas Uso de Índices na Otimização e Processamento de Consultas Profa. Dra. Cristina Dutra de Aguiar Ciferri analisador controle de autorização verificador de

Leia mais

Bases de Dados. Junção de relações. Junção de relações

Bases de Dados. Junção de relações. Junção de relações Bases de Dados Junção de relações Junção de relações Tipicamente usadas na cláusula from SQL oferece várias possibilidades condição da junção determina quais são os atributos a comparar tipo de junção

Leia mais

Administração e Optimização de BDs

Administração e Optimização de BDs Departamento de Engenharia Informática 2010/2011 Administração e Optimização de BDs Mini-Projecto 2 Entrega a 16 de Abril de 2011 2º semestre A resolução deve ser claramente identificada com o número de

Leia mais

UTFPR - Universidade Tecnológica Federal do Paraná. Processamento e otimização de consultas

UTFPR - Universidade Tecnológica Federal do Paraná. Processamento e otimização de consultas UTFPR - Universidade Tecnológica Federal do Paraná Processamento e otimização de consultas Leyza Baldo Dorini 04/Nov/2009 Programação da aula Introdução: processamento e otimização de consultas Etapas:

Leia mais

Sistemas de Informação e Bases de Dados 2012/2013. Linguagem SQL

Sistemas de Informação e Bases de Dados 2012/2013. Linguagem SQL Sistemas de Informação e Bases de Dados 2012/2013 Linguagem SQL Alberto Sardinha Sumário Linguagem SQL 1 Operações com strings operador like Exemplo: nomes dos clientes cuja rua possui a sequência Main

Leia mais

Ordenação de tuplos order by

Ordenação de tuplos order by Bases de Dados Elementos da linguagem SQL Ordenação de tuplos order by A cláusula order by permite ordenar tuplos exemplo: listar por ordem alfabética os nomes dos clientes com empréstimo na agência de

Leia mais

Sistemas de Bases de Dados 1.º teste (com consulta limitada: 2 folhas identificadas) - Duração: 2 horas

Sistemas de Bases de Dados 1.º teste (com consulta limitada: 2 folhas identificadas) - Duração: 2 horas DI-FCT/UNL 28 de abril de 2018 Sistemas de Bases de Dados 1.º teste (com consulta limitada: 2 folhas identificadas) - Duração: 2 horas N. º : Nome: Grupo 1 (7 valores) 1 a) Para cada uma das seguintes

Leia mais

Organização de Arquivos

Organização de Arquivos Construção de Sistemas de Gerência de Bancos de Dados DI PUC-Rio Prof: Sérgio Lifschitz Organização de Arquivos Organização de Arquivos Tipos básicos de arquivos: heap files (entry sequenced files) sorted

Leia mais

Sistemas de Informação e Bases de Dados 2012/2013. Modelo Relacional. Alberto Sardinha 2012 IST

Sistemas de Informação e Bases de Dados 2012/2013. Modelo Relacional. Alberto Sardinha 2012 IST Sistemas de Informação e Bases de Dados 2012/2013 Modelo Relacional Alberto Sardinha Bibliografia Raghu Ramakrishnan, Database Management Systems, Cap. 3 1 Sumário Modelo Relacional Conversão Modelo EA

Leia mais

Aula 10 BD 1 SQL Parte 2. Profa. Elaine Faria UFU

Aula 10 BD 1 SQL Parte 2. Profa. Elaine Faria UFU Aula 10 BD 1 SQL Parte 2 Profa. Elaine Faria UFU - 2018 Consultas Aninhadas É um dos recursos mais poderosos da SQL É aquela que tem outra consulta embutida dentro dela A consulta embutida é chamada de

Leia mais

GBC053 Gerenciamento de Banco de Dados. Plano de Curso e Introdução. Ilmério Reis da Silva UFU/FACOM/BCC

GBC053 Gerenciamento de Banco de Dados. Plano de Curso e Introdução. Ilmério Reis da Silva  UFU/FACOM/BCC GBC053 Gerenciamento de Banco de Dados Plano de Curso e Introdução Ilmério Reis da Silva ilmerio@ufu.br www.facom.ufu.br/~ilmerio/gbd UFU/FACOM/BCC Plano de Curso Ementa Arquitetura de um Sistema de Gerenciamento

Leia mais

Princípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R. Standards ISO e ANSI SQL-86, SQL-89, SQL-92, SQL:1999, SQL:2003

Princípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R. Standards ISO e ANSI SQL-86, SQL-89, SQL-92, SQL:1999, SQL:2003 Bases de Dados Introdução à linguagem SQL História Princípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R Renomeada para SQL (Structured Query Language) Standards ISO e ANSI SQL-86, SQL-89,

Leia mais

se a transação falhar entre os 3 passos 4 6, os passos 1 3 ficam sem efeito 4 read(b) Consistência

se a transação falhar entre os 3 passos 4 6, os passos 1 3 ficam sem efeito 4 read(b) Consistência Bases de Dados Transacções Propriedades ACID 1 T Atomicidade i : read(a) 2 A := A 50 se a transação falhar entre os 3 write(a) passos 4 6, os passos 1 3 ficam sem efeito 4 read(b) Consistência 5 B := B

Leia mais

Views. uma view é uma tabela virtual. não existe fisicamente na BD. é definida à custa de outras tabelas ou views. CREATE VIEW <nome> AS <query>;

Views. uma view é uma tabela virtual. não existe fisicamente na BD. é definida à custa de outras tabelas ou views. CREATE VIEW <nome> AS <query>; Views uma view é uma tabela virtual. não existe fisicamente na BD. é definida à custa de outras tabelas ou views. sintaxe: CREATE VIEW AS ; 1 Exemplo Criar uma view que dá o nome, ano e duração

Leia mais

Reindexação Automática em SGBDs Relacionais

Reindexação Automática em SGBDs Relacionais Reindexação Automática em SGBDs Relacionais Eduardo Morelli emorelli@inf.puc-rio.br Ana Carolina Almeida abrito@inf.puc-rio.br José Maria Monteiro monteiro@inf.puc-rio.br Sérgio Lifschitz sergio@inf.puc-rio.br

Leia mais

Flickr, shindotv/ / BASES DE DADOS. Laboratórios de Informática João Paulo Barraca, André Zúquete, Diogo Gomes

Flickr, shindotv/ / BASES DE DADOS. Laboratórios de Informática João Paulo Barraca, André Zúquete, Diogo Gomes Flickr, shindotv/3835365695/ BASES DE DADOS Laboratórios de Informática 2014-2015 João Paulo Barraca, André Zúquete, Diogo Gomes Armazenamento de Informação Aplicações necessitam de armazenar informação

Leia mais

Introdução às funções e procedimentos. SQL suporta funções e procedimentos úteis com tipos de dados específicos

Introdução às funções e procedimentos. SQL suporta funções e procedimentos úteis com tipos de dados específicos Bases de Dados Funções e procedimentos Introdução às funções e procedimentos SQL suporta funções e procedimentos úteis com tipos de dados específicos p.ex. objectos geométricos, imagens intersecção de

Leia mais

Chapter 12: Query Processing. José Alferes Sistemas de Bases de Dados - ISCTEM janeiro de 2017

Chapter 12: Query Processing. José Alferes Sistemas de Bases de Dados - ISCTEM janeiro de 2017 Chapter 12: Query Processing José Alferes Sistemas de Bases de Dados - ISCTEM janeiro de 2017 107 Chapter 12: Query Processing - Visão geral de processamento e otimização de perguntas - Medidas de custo

Leia mais

15 - Introdução às Bases de Dados

15 - Introdução às Bases de Dados ICE-B 15 - Introdução às Bases de Dados Ludwig Krippahl Bases de Dados Resumo Introdução aos sistemas de bases de dados: Modelo relacional SQL (Structured Query Language) Criar tabelas Inserir dados Consultar

Leia mais

OTIMIZAÇÃO DE CONSULTAS RELACIONAIS TRABALHO DE PÓS-GRADUAÇÃO

OTIMIZAÇÃO DE CONSULTAS RELACIONAIS TRABALHO DE PÓS-GRADUAÇÃO UNIVERSIDADE ESTADUAL DE CAMPINAS PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO INSTITUTO DE COMPUTAÇÃO OTIMIZAÇÃO DE CONSULTAS RELACIONAIS TRABALHO DE PÓS-GRADUAÇÃO Alunos: João Paulo Silva Cintra Renato Capello

Leia mais

BANCO DE DADOS Índices em BD Árvores B+

BANCO DE DADOS Índices em BD Árvores B+ BANCO DE DADOS Índices em BD Árvores B+ Bacharelado em Ciência da Computação IFCE - Campus Aracati - Semestre 2018.2 Prof. Érica Gallindo - erica.gallindo@ifce.edu.br Arquivos de banco de dados Um arquivo

Leia mais

Sistemas de Bases de Dados 1.º teste (com consulta limitada: 2 folhas identificadas) - Duração: 2 horas

Sistemas de Bases de Dados 1.º teste (com consulta limitada: 2 folhas identificadas) - Duração: 2 horas DI-FCT/UNL 28 de abril de 2018 Sistemas de Bases de Dados 1.º teste (com consulta limitada: 2 folhas identificadas) - Duração: 2 horas N. º : Nome: Grupo 1 (7 valores) 1 a) Para cada uma das seguintes

Leia mais

SQL: Vistas, Indices, Autorização, Restrições

SQL: Vistas, Indices, Autorização, Restrições SQL: Vistas, Indices, Autorização, Restrições Fernando Lobo Base de Dados, Universidade do Algarve 1 / 20 Vistas Uma vista (view em inglês) é uma tabela virtual. Não existe fisicamente na BD. É definida

Leia mais

Aula 11 SBD SQL Parte 3. Profa. Elaine Faria UFU

Aula 11 SBD SQL Parte 3. Profa. Elaine Faria UFU Aula 11 SBD SQL Parte 3 Profa. Elaine Faria UFU - 2018 Group by e Having Às vezes deseja-se aplicar operações agregadas a cada um dos vários grupos de linhas em um relação Group by e Having C31: Encontre

Leia mais

11/8/2010. Tópicos. Organização e Indexação de Dados em Memória Secundária

11/8/2010. Tópicos. Organização e Indexação de Dados em Memória Secundária /8/00 Tópicos Organização e Indexação de Dados em Memória Secundária Disciplina Bancos de Dados II Prof Renato Fileto INE/CTC/UF Bancos de dados e acesso a memória secundária Noções de organização de dados

Leia mais

Há vários algoritmos para processar junções nested-loop join block nested-loop join indexed nested-loop join merge-join hash-join

Há vários algoritmos para processar junções nested-loop join block nested-loop join indexed nested-loop join merge-join hash-join Bases de Dados Algoritmos para junção Algoritmos para junções Há vários algoritmos para processar junções nested-loop join block nested-loop join indexed nested-loop join merge-join hash-join A escolha

Leia mais

Bases de Dados 2013/2014 Álgebra Relacional. Helena Galhardas 2013 IST. Bibliografia. Raghu Ramakrishnan, Database Management Systems, Cap.

Bases de Dados 2013/2014 Álgebra Relacional. Helena Galhardas 2013 IST. Bibliografia. Raghu Ramakrishnan, Database Management Systems, Cap. Bases de Dados 2013/2014 Álgebra Relacional Helena Galhardas Bibliografia Raghu Ramakrishnan, Database Management Systems, Cap. 4 1 1 Álgebra Relacional Sumário 2 Linguagens Formais de Interrogação Relacionais

Leia mais

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

Bases de Dados. Parte VIII. Organização Física dos Dados Bases de Dados Parte VIII Organização Física dos Dados Ricardo Rocha DCC-FCUP 1 Unidades de Medida da Informação A unidade fundamental é o byte. 1 byte corresponde a 8 bits e cada bit permite representar

Leia mais

se a transacção falhar entre os passos 4 6, os passos 1 3 ficam sem efeito

se a transacção falhar entre os passos 4 6, os passos 1 3 ficam sem efeito Bases de Dados Transacções Propriedades ACID Atomicidade se a transacção falhar entre os passos 4 6, os passos 1 3 ficam sem efeito Consistência a soma A+B tem de ser igual antes e depois Isolamento nenhuma

Leia mais

Índices. SCE-203 Algoritmos e Estruturas de Dados II

Índices. SCE-203 Algoritmos e Estruturas de Dados II Índices SCE-203 Algoritmos e Estruturas de Dados II Índice Em geral, um índice fornece mecanismos para localizar informações Índice de um livro ou catálogo de uma biblioteca Facilitam muito o trabalho

Leia mais

PostgreSQL Performance

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

Bases de Dados 2007/2008 Exame

Bases de Dados 2007/2008 Exame Exame 25 de Janeiro de 2008 Instituto Superior Técnico Departamento de Engenharia Informática Regras O exame tem a duração de 2h30m. A folha de capa deve ser identificada com o nome e número do aluno.

Leia mais

Importar e Exportar Dados

Importar e Exportar Dados Importar e Exportar Dados Administração de Base de Dados OBJECTIVOS: Definir comandos e formatos Definir restrições (constraints) DEFINIÇÃO DO ESQUEMA DA BASE DE DADOS O esquema da BD e composto pelas

Leia mais

U.C Sistemas de Gestão de Bases de Dados Resolução e Critérios de Correção INSTRUÇÕES

U.C Sistemas de Gestão de Bases de Dados Resolução e Critérios de Correção INSTRUÇÕES e-fólio A U.C. 21103 Sistemas de Gestão de Bases de Dados 2017-2018 Resolução e Critérios de Correção INSTRUÇÕES O e-fólio é constituído por 6 alíneas com cotação de 0,5 valores cada. A cotação global

Leia mais

Módulo 5. Arquitetura do SQL Server. Estruturas de Armazenamento. Armazenamento físico e lógico. Páginas

Módulo 5. Arquitetura do SQL Server. Estruturas de Armazenamento. Armazenamento físico e lógico. Páginas Módulo 5 Arquitetura do SQL Server Estruturas de Armazenamento A unidade fundamental de armazenamento de dados no SQL Server é a página. O espaço em disco alocado a um arquivo de dados (.mdf ou.ndf) em

Leia mais

ARMAZENAMENTO E PROCESSAMENTO DE BANCOS DE DADOS RELACIONAIS

ARMAZENAMENTO E PROCESSAMENTO DE BANCOS DE DADOS RELACIONAIS ARMAZENAMENTO E PROCESSAMENTO DE BANCOS DE DADOS RELACIONAIS EDUARDO C. DE ALMEIDA 1 EDUARDO@INF.UFPR.BR UFPR LABORATÓRIO DE BANCO DE DADOS VISÃO GERAL DA APRESENTAÇÃO Entender como um banco de dados aparenta

Leia mais

de Bases de Dados Exame 2

de Bases de Dados Exame 2 Ano lectivo 2009/2010 2 o semestre Administração e Optimização de Bases de Dados Exame 2 Regras O exame tem a duração de 2 horas. O exame é individual e com consulta Só poderá abandonar a sala ao fim de

Leia mais

SQL (Tópicos) Structured Query Language

SQL (Tópicos) Structured Query Language SQL (Tópicos) Structured Query Language ISI Introdução aos Sistemas de Informação SQL (Tópicos) 1 SQL: componentes SQL / DDL (Data Definition Language) Permite definir os Esquemas de Relação Permite definir

Leia mais

Implementação de Sistemas de Arquivos. Na Aula Anterior... Esquema do Sistema de Arquivos. Nesta Aula 31/10/2016. Estrutura de Baixo Nível de um Disco

Implementação de Sistemas de Arquivos. Na Aula Anterior... Esquema do Sistema de Arquivos. Nesta Aula 31/10/2016. Estrutura de Baixo Nível de um Disco GSI018 Sistemas Operacionais 31/10/2016 Implementação de Sistemas de Arquivos Universidade Federal de Uberlândia Faculdade de Computação Prof. Dr. rer. nat. Daniel D. Abdala Na Aula Anterior... Memória

Leia mais

OTIMIZAÇÃO DE CONSULTAS - MYSQL. Prof. Antonio Almeida de Barros Junior

OTIMIZAÇÃO DE CONSULTAS - MYSQL. Prof. Antonio Almeida de Barros Junior OTIMIZAÇÃO DE CONSULTAS - MYSQL Prof. Antonio Almeida de Barros Junior Para a otimização de um SGBD precisamos identificar as consultas lentas que eventualmente são submetidas ao banco: Configurações do

Leia mais

As restrições de integridade garantem a consistência da BD exemplos

As restrições de integridade garantem a consistência da BD exemplos Bases de Dados Restrições de integridade Restrições de integridade As restrições de integridade garantem a consistência da BD exemplos RI 1: os números de conta são únicos RI 2: a cidade de uma agência

Leia mais

http://www.ic.uff.br/~debora/fac! 1 Capítulo 4 Livro do Mário Monteiro Introdução Hierarquia de memória Memória Principal Organização Operações de leitura e escrita Capacidade 2 Componente de um sistema

Leia mais

Disciplina : Gerência de Banco de Dados 1-2 0 Semestre 2010. Professora : Sandra de Amo. Lista de Exercícios 4 - Consultas SQL

Disciplina : Gerência de Banco de Dados 1-2 0 Semestre 2010. Professora : Sandra de Amo. Lista de Exercícios 4 - Consultas SQL Disciplina : Gerência de Banco de Dados 1-2 0 Semestre 2010 Professora : Sandra de Amo Lista de Exercícios 4 - Consultas SQL Considere o seguinte esquema de banco de dados : Produto(Modelo,Tipo,Fabr) O

Leia mais

Formação de DBAs SQL Server 2008 Parte 6: Gerenciamento de Performance

Formação de DBAs SQL Server 2008 Parte 6: Gerenciamento de Performance Formação de DBAs SQL Server 2008 Parte 6: Gerenciamento de Performance Material Cedido pelo Professor Leandro Coelho Correia Monitoramento O monitoramento é primeira etapa do gerenciamento de performance.

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

ORGANIZAÇÃO DE COMPUTADORES CAPÍTULO4: MEMÓRIAPRINCIPAL

ORGANIZAÇÃO DE COMPUTADORES CAPÍTULO4: MEMÓRIAPRINCIPAL ORGANIZAÇÃO DE COMPUTADORES CAPÍTULO4: MEMÓRIAPRINCIPAL MEMÓRIA Componente de um sistema de computação cuja função é armazenar informações que são manipuladas pelo sistema para que possam ser recuperadas

Leia mais

Árvores B. Árvore B (ou melhor B+)

Árvores B. Árvore B (ou melhor B+) Motivação: pesquisa em disco Árvores B Tempo de acesso a disco determinante nas operações Com disco de 10 ms de tempo de acesso: 100 acessos por segundo em máquina de 25 MIPS, 1 acesso custa tanto como

Leia mais

Bancos de Dados IV. Tuning de Bancos de Dados. Rogério Costa

Bancos de Dados IV. Tuning de Bancos de Dados. Rogério Costa Bancos de Dados IV Tuning de Bancos de Dados Rogério Costa rogcosta@inf.puc-rio.br 1 Sintonia (Tuning) de Bancos de Dados O que é? Realizar ajustes de forma a obter um melhor tempo de resposta para determinada

Leia mais

SQL Linguagem de Manipulação de Dados SQL DML SQL DML. Exemplo Modelo Relacional. Exemplo ME-R SQL DML CONTINUAÇÃO...

SQL Linguagem de Manipulação de Dados SQL DML SQL DML. Exemplo Modelo Relacional. Exemplo ME-R SQL DML CONTINUAÇÃO... Ciência da Computação GBC043 Sistemas de Banco de Dados SQL Linguagem de Manipulação de Dados Profa. Maria Camila Nardini Barioni camila.barioni@facom.ufu.br Bloco B - sala 1B137 SQL DML CONTINUAÇÃO...

Leia mais

Bases de Dados 2012/2013 Funções/procedimentos e triggers. Helena Galhardas 2012 IST. Bibliografia. Manual referência PostgreSQL

Bases de Dados 2012/2013 Funções/procedimentos e triggers. Helena Galhardas 2012 IST. Bibliografia. Manual referência PostgreSQL Bases de Dados 2012/2013 Funções/procedimentos e triggers em PostgreSQL Helena Galhardas Bibliografia Manual referência PostgreSQL http://www.postgresql.org/docs/9.2/static/ plpgsql.html http://www.postgresql.org/docs/9.2/static/

Leia mais

Bases de Dados 2007/2008 Exame

Bases de Dados 2007/2008 Exame Exame 11 de Janeiro de 2007 Instituto Superior Técnico Departamento de Engenharia Informática Regras O exame tem a duração de 2h30m. A folha de capa deve ser identificada com o nome e número do aluno.

Leia mais

Banco de Dados I Introdução SQL

Banco de Dados I Introdução SQL Banco de Dados I Introdução SQL Frederico Queiroga fredericoqueiroga@gmail.com https://sites.google.com/site/fredericoqueiroga/ Linguagem SQL Aspectos Gerais: Independência do fabricante: Está incorporada

Leia mais

CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA. Full Text Searching

CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA. Full Text Searching CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA Disciplina: Administração de Banco de Dados Full Text Searching Professor: : José Antônio da Cunha CEFET-RN Uma necessidade cada vez mais comum de muitas aplicações,

Leia mais

Roteiro. SQL: Visões. Suporte de SQL para OLAP SELECT. Detalhando GROUP BY SQL DML CONTINUAÇÃO CONSULTAS AVANÇADAS. Consultas Avançadas Visões

Roteiro. SQL: Visões. Suporte de SQL para OLAP SELECT. Detalhando GROUP BY SQL DML CONTINUAÇÃO CONSULTAS AVANÇADAS. Consultas Avançadas Visões Ciência da Computação GBC043 Sistemas de Banco de Dados Roteiro SQL: Visões Consultas Avançadas Visões Profa. Maria Camila Nardini Barioni camila.barioni@ufu.br Bloco B - sala 1B137 1 semestre de 2018

Leia mais

ü Capítulo 4 Livro do Mário Monteiro ü Introdução ü Hierarquia de memória ü Memória Principal ü Memória principal ü Memória cache

ü Capítulo 4 Livro do Mário Monteiro ü Introdução ü Hierarquia de memória ü Memória Principal ü Memória principal ü Memória cache Departamento de Ciência da Computação - UFF Principal Profa. Débora Christina Muchaluat Saade debora@midiacom.uff.br Principal ü Capítulo 4 Livro do Mário Monteiro ü Introdução ü Hierarquia de memória

Leia mais

Avisos. SQL: Visões. Roteiro SELECT. Suporte de SQL para OLAP SQL DML CONTINUAÇÃO CONSULTAS AVANÇADAS. Cronograma das próximas aulas

Avisos. SQL: Visões. Roteiro SELECT. Suporte de SQL para OLAP SQL DML CONTINUAÇÃO CONSULTAS AVANÇADAS. Cronograma das próximas aulas Ciência da Computação GBC043 Sistemas de Banco de Dados Avisos SQL: Visões Profa. Maria Camila Nardini Barioni camila.barioni@ufu.br Bloco B - sala 1B137 1 semestre de 2019 Cronograma das próximas aulas

Leia mais

Álgebra Relacional operações adicionais. Encontrar tuplos que obedecem a uma dada relação questões do tipo: quem já leu todos os livros que eu já li?

Álgebra Relacional operações adicionais. Encontrar tuplos que obedecem a uma dada relação questões do tipo: quem já leu todos os livros que eu já li? Bases de Dados Álgebra Relacional operações adicionais Divisão ( ) Encontrar tuplos que obedecem a uma dada relação questões do tipo: quem já leu todos os livros que eu já li? exemplo: nomes dos clientes

Leia mais

Bibliografia. Bases de Dados 2012/2013 Modelo Relacional. Helena Galhardas. Raghu Ramakrishnan, Database Management Systems, Cap. 3 10/2/ IST

Bibliografia. Bases de Dados 2012/2013 Modelo Relacional. Helena Galhardas. Raghu Ramakrishnan, Database Management Systems, Cap. 3 10/2/ IST Bases de Dados 2012/2013 Modelo Relacional Helena Galhardas Bibliografia Raghu Ramakrishnan, Database Management Systems, Cap. 3 1 1 Sumário Modelo Relacional Conversão Modelo EA para Modelo Relacional

Leia mais

BANCO DE DADOS II Prof. Ricardo Rodrigues Barcelar

BANCO DE DADOS II Prof. Ricardo Rodrigues Barcelar - Aula 2 - ÍNDICE 1. INTRODUÇÃO Quando criamos a estrutura de um banco de dados temos que usar artifícios que melhorem a performance na recuperação dos dados que lá serão armazenados. Dentre várias técnicas

Leia mais

Bases de Dados. Álgebra Relacional. Selecção (σ) Seleccionar os registos que satisfazem uma condição exemplo: empréstimos da agência de Perryridge

Bases de Dados. Álgebra Relacional. Selecção (σ) Seleccionar os registos que satisfazem uma condição exemplo: empréstimos da agência de Perryridge Bases de Dados Álgebra Relacional Selecção (σ) Seleccionar os registos que satisfazem uma condição exemplo: empréstimos da agência de Perryridge σ branch_name = Perryridge (loan) 2 1 Outros exemplos de

Leia mais

Administração e Optimização de BDs

Administração e Optimização de BDs Departamento de Engenharia Informática 2010/2011 Administração e Optimização de BDs Mini-Projecto 1 2º semestre A resolução deve ser claramente identificada com o número de grupo e entregue sob a forma

Leia mais

INSTITUTO SUPERIOR TÉCNICO Administração e Optimização de Bases de Dados

INSTITUTO SUPERIOR TÉCNICO Administração e Optimização de Bases de Dados Número: Nome: 1 -------------------------------------------------------------------------------------------------------------- INSTITUTO SUPERIOR TÉCNICO Administração e Optimização de Bases de Dados Exame

Leia mais

Índices. 1. Introdução. Universidade Federal de Pelotas Departamento de Informática Bacharelado em Ciência da Computação Banco de Dados I

Índices. 1. Introdução. Universidade Federal de Pelotas Departamento de Informática Bacharelado em Ciência da Computação Banco de Dados I Universidade Federal de Pelotas Departamento de Informática Bacharelado em Ciência da Computação Banco de Dados I Prof. Paulo Ferreira Atividade para Sala de Aula: 25/11/2008 1. Introdução Índices Os índices

Leia mais

Consistem num conjunto de apontadores para instâncias especificas de cada relação.

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

MATA60 BANCO DE DADOS Aula 10- Indexação. Prof. Daniela Barreiro Claro

MATA60 BANCO DE DADOS Aula 10- Indexação. Prof. Daniela Barreiro Claro MATA60 BANCO DE DADOS Aula 10- Indexação Prof. Daniela Barreiro Claro Indexação Indexação em SQL; Vantagens e Custo dos Índices; Indexação no PostgreSQL; FORMAS - UFBA 2 de X; X=23 Indexação Sintaxe: create

Leia mais

Introdução a Bancos de Dados

Introdução a Bancos de Dados Introdução a Bancos de Dados - Conceitos - Modelos lógicos e relacional - Álgebra relacional - SQL - Projeto Lógico INPE - Divisão de Processamento de Imagens INPE 1 Sistemas de Banco de Dados Definição:

Leia mais

Tecnologias de Bancos de Dados

Tecnologias de Bancos de Dados Tecnologias de Bancos de Dados Processamento e Otimização de consultas Professor: Tadeu dos Reis Faria Set/2008 Referências Bibliográficas NAVATHE, Shamkant B., ELSMARI, Ramez. Sistemas de Banco de Dados.

Leia mais

Bases de Dados. Conversão para Modelo Relacional. Diagrama E-A. IST DEI Bases de Dados

Bases de Dados. Conversão para Modelo Relacional. Diagrama E-A. IST DEI Bases de Dados Bases de Dados Conversão para Modelo Relacional Diagrama E-A 2 1 Conversão de entidades Entidade forte converte-se numa tabela loan (loan_number, amount) atributos simples mantêm-se chave da tabela é a

Leia mais

Tópicos Avançados de Bases de Dados

Tópicos Avançados de Bases de Dados Tópicos Avançados de Bases de Dados DCC FCUP Feb 2012 Bases de Dados Armazenam Dados Slides de P. J. McBrien Dados Não Estruturados Dados Semi Estruturados: XML Dados Estruturados: Modelo Relacional Modelo

Leia mais

Tabelas. Banco de Dados I MySQL

Tabelas. Banco de Dados I MySQL FACULDADE ANGLO AMERICANO FOZ DO IGUAÇU Curso de Ciência da Computação 5º Período Disciplina: Banco de Dados I Prof. Erinaldo Sanches Nascimento Tabelas Banco de Dados I MySQL Linguagem de Definição de

Leia mais

Cap. 5 Indexação Baseada em Hashing

Cap. 5 Indexação Baseada em Hashing Cap. 5 Indexação Baseada em Hashing Not cahos-like, together crushed and bruised, But, as the world harmoniously confused: Where order in variety we see. -- Alexander Pope Abel J.P. Gomes Bibliography:

Leia mais

BANCO DE DADOS. Vinícius Pádua

BANCO DE DADOS. Vinícius Pádua BANCO DE DADOS O que é Banco de Dados? Introdução Para que serve um arquivo? Salvar, atualizar, recuperar,... Aplicativos e Arquivos Utilizam para salvar os dados mesmo após o programa fechar Estrutura

Leia mais

SQL CREATE DATABASE. MySQL, SQL Server, Access, Oracle, Sybase, DB2, e outras base de dados utilizam o SQL.

SQL CREATE DATABASE. MySQL, SQL Server, Access, Oracle, Sybase, DB2, e outras base de dados utilizam o SQL. LINGUAGEM SQL SQL CREATE DATABASE MySQL, SQL Server, Access, Oracle, Sybase, DB2, e outras base de dados utilizam o SQL. SQL CREATE TABLE SQL NOT NULL O valor NOT NULL obriga que o campo contenha sempre

Leia mais

Sistemas de InformaçBases de Dados 2012/2013. Desenvolvimento de Aplicações com Bases de Dados

Sistemas de InformaçBases de Dados 2012/2013. Desenvolvimento de Aplicações com Bases de Dados Sistemas de InformaçBases de Dados 2012/2013 Desenvolvimento de Aplicações com Bases de Dados Alberto Sardinha Bibliografia Raghu Ramakrishnan, Database Management Systems 3rd ed, Cap. 6 e 7 1 Sumário

Leia mais

Tarefa Orientada 17 Scripts

Tarefa Orientada 17 Scripts Tarefa Orientada 17 Scripts Objectivos: Declaração de variáveis escalares Declaração de variáveis do tipo tabela Tabelas temporárias Estruturas Condicionais Estruturas de Repetição Tratamento de erros

Leia mais

Aula 06 Sistemas Embarcados LT38C

Aula 06 Sistemas Embarcados LT38C Aula 06 Sistemas Embarcados LT38C Prof. Lucas Ricken Garcia 2017/1 Introdução a Banco de Dados Coleção de dados relacionados. Fatos conhecidos que podem ser registrados e possuem significado implícito.

Leia mais

T-SQL Mitos. Vamos criar uma tabela para os nossos exemplos e, em seguida, comparar planos de execução. Mãos à obra.

T-SQL Mitos. Vamos criar uma tabela para os nossos exemplos e, em seguida, comparar planos de execução. Mãos à obra. T-SQL Mitos Mito T-SQL: COUNT(1) é mais rápido que COUNT(*) Já escutei algumas pessoas afirmarem, inclusive DBAs, que usar COUNT(1) é mais performático que COUNT(*). Além disso, também ouço programadores

Leia mais

Aula 9 BD 1 SQL Parte 1. Profa. Elaine Faria UFU

Aula 9 BD 1 SQL Parte 1. Profa. Elaine Faria UFU Aula 9 BD 1 SQL Parte 1 Profa. Elaine Faria UFU - 2018 Visão Geral SQL DML (Data Manipulation Language) Formular consultas, inserir, excluir e modificar tuplas DDL (Data Definition Language) Criar, excluir

Leia mais

INSTITUTO SUPERIOR TÉCNICO Administração e Optimização de Bases de Dados

INSTITUTO SUPERIOR TÉCNICO Administração e Optimização de Bases de Dados Número: Nome: -------------------------------------------------------------------------------------------------------------- INSTITUTO SUPERIOR TÉCNICO Administração e Optimização de Bases de Dados Exame

Leia mais