UFCD 787
Administração de base de dados
Elsa Marisa S. Almeida
1
Objectivos
• Replicação de base de dados
• Gestão de transacções
• Cópias de segurança
• Importação e exportação de dados
Elsa Marisa S. Almeida
2
Replicação de base de dados
• O que é replicação?
Elsa Marisa S. Almeida
3
Replicação de base de dados
• Duplicar, fazer múltiplas cópias controladas
de dados com objectivo de:
– Descentralização de aplicações
– Hot-backup de servidores de banco de dados
– Balanceamento de carga
– Data warehousing
Elsa Marisa S. Almeida
4
Replicação de base de dados
• Benefícios que um bom modelo de
replicação procura proporcionar:
– Alta disponibilidade
– Alto desempenho
– Eliminar o problema de dados inconsistentes
decorrentes da integração tardia entre
sistemas
Elsa Marisa S. Almeida
5
Replicação de base de dados
• Problemas existentes em um modelo
replicado
– Escalabilidade
– Inconsistências
Elsa Marisa S. Almeida
6
Replicação de base de dados
• Topologias (Rede ou Peer-to-Peer)
Elsa Marisa S. Almeida
7
Replicação de base de dados
• Topologias (Estrela)
Elsa Marisa S. Almeida
8
Replicação de base de dados
• Topologias (Hierárquica)
Elsa Marisa S. Almeida
9
Replicação de base de dados
• Softwares de replicação
Oracle Replication
– Não suporta replicar para outros SGBDs
– Não replica sequences e nem alguns tipos de dados: LONG e
LONG RAW
– Resolução de conflitos: latest timestamp, site priority, customizado,
etc.
– Necessita controle em triggers para evitar loop
• SQLServer Replication
• Slony - open source
Elsa Marisa S. Almeida
10
Replicação de base de dados
• O que replicar?
– Tabelas de configuração e de dados auxiliares
– Cadastros
– Movimentações que precisem ser processadas
em um escritório central
– Resumos / Resultados / Tabelas sumarizadas
• O que não replicar ?
– Movimentação que interessa apenas ao site.
Exemplo: Pedidos e itens de pedidos,
orçamentos, itens de notas fiscais, etc.
Elsa Marisa S. Almeida
11
Gestão das transacções MS
SQL
Ideal para grandes volumes de dados e de transações, com o MS SQL Server
você optimiza a gestão de dados e aplicações do seu site.
O MS SQL Server é um SGBD que possui uma plataforma de dados confiável,
produtiva e inteligente.
Permite que executemos as acções mais criticas e mais exigentes, reduza o tempo
e o custo de desenvolvimento e torne a gestão da base de dados mais simples.
Elsa Marisa S. Almeida
12
MS SQL
• Principais recursos do MS SQL
– Proteger informações criticas
• permite a encriptação de uma bd inteira, arquivos de
dados ou arquivos de log, com necessidade de
mudanças nas aplicações
• Os benefícios dessa encriptação incluem: consultas
de dados encriptados usando consultas em série ou
associadas, proteger os dados de consultas de
usuários não autorizados e encriptação de dados
sem requerer qualquer mudança nas aplicações
existentes.
Elsa Marisa S. Almeida
13
MS SQL
– Garante a continuidade dos negócios
• “duplicação”/ mirror de base de dados avançado
– Reduz a complexidade do mirror da base de dados
• permite que tanto as máquinas principais quanto
as mirror, recuperem dados de forma transparente
de tipos de erros 823/824 do tipo página de dados
• proporciona óptimo desempenho e minimiza a
largura da banda usada pelo mirror da base de
dados
Elsa Marisa S. Almeida
14
MS SQL
– Resposta previsivel
• Fornece uma resposta consistente e previsível aos
usuários finais com a introdução do Gestor de
Recursos
– O Gerenciador de Recursos permite que as empresas
definam limites de recursos e prioridades para diferentes
cargas de trabalho.
• Desempenho de Consulta Previsível:
– Permite maior previsibilidade e estabilidade do
desempenho de consulta, fornecendo funcionalidade para
bloquear os planos de consulta, permitindo que as
empresas promovam planos de consultas estáveis na
substituição de servidores, actualização de servidores e
implantações de produção.
Elsa Marisa S. Almeida
15
MS SQL
– Compressão de Dados:
• Permite que os dados sejam armazenados de
forma mais eficiente e reduz os requisitos de
armazenamento para os seus dados.
• A Compressão de Dados também fornece
significantes melhorias de desempenho para
grandes cargas de trabalho de I/O (entrada/saída),
como o data warehousing.
– sistema de computação utilizado para armazenar
informações relativas às actividades de uma organização
em base de dados, de forma consolidada.
Elsa Marisa S. Almeida
16
MS SQL
– Inteligente
•
•
•
•
Compressão de backup
Uso de tabelas particionadas
Optimizações de consultas
Entrega de informações relevantes
Elsa Marisa S. Almeida
17
Cópia de seguranças
. Em informática, cópia de segurança é a cópia de dados de um dispositivo de
armazenamento para outro para que possam ser restaurados em caso da perda
dos dados originais, o que pode envolver apagamentos acidentais ou corrupção
de dados.
Na eventualidade de ocorrência de incidente, os dados devem ser repostos,
recorrendo então à informação armazenada na cópia de segurança.
A recuperação dos dados deverá ser efectuada rapidamente e de forma
eficiente, para que os serviços não se encontrem inactivos por muito tempo.
A prioridade da reposição dos dados deve ser estabelecida, conforme as
necessidades da organização.
Elsa Marisa S. Almeida
18
Importação e exportação de
dados em MS SQL
O Assistente de Importação e Exportação do SQL Server fornece o método mais
simples para criar pacotes básicos e copiar dados entre fontes de dados.
Para iniciar o Assistente de Importação e Exportação do SQL Server:
.No menu Iniciar, aponte para Todos os Programas, aponte para
Microsoft SQL Server 2008 e, em seguida, clique em Importar e Exportar
Dados.
Caso esteja a usar o MS SQL express a opção referida anteriormente não se
encontra disponivel.
Elsa Marisa S. Almeida
19
Referências Bibliográficas
• Replicacaobd.ppt
• http://msdn.microsoft.com
• http://pt.wikipedia.org/wiki/Data_Warehous
e
Elsa Marisa S. Almeida
20
Comandos SQL
• Criação de uma tabela
• Create Table
• Create table
(campo1 tipo[(tamanho)] .....
.tipos de dados dos campos:
datetime / double / text /
Elsa Marisa S. Almeida
21
Comandos SQL
Alteração de uma tabela
A instrução ALTER TABLE permite alterar a
estrutura de uma tabela existente
Sintaxe :
ALTER TABLE tabela
{ADD {column campo tipo } [NOT NULL]
Cláusula Constraint
Incluida nas instruções CREATE TABLE e
ALTER TABLE permite criar e eliminar indices
Elsa Marisa S. Almeida
22
Comandos SQL
Existem 2 sintaxes diferentes
. Uma para criar índices sobre um único campo
CONSTRAINT nome {PRIMARY KEY|UNIQUE}
REFERENCES tabela externa
. Uma para criar índices sobre mais que um
campo
CONSTRAINT nome {PRIMARY KEY( coluna1)
UNIQUE (único1, unico2)}
FOREIGN KEY ( Ref1)
REFERENCES tabExterna
Elsa Marisa S. Almeida
23
Comandos SQL
Eliminação de uma tabela da bd:
DROP TABLE tabela
Eliminação de Indices
DROP INDEX Índice ON tabela
Elsa Marisa S. Almeida
24
Comandos SQL para consulta à
Cláusula SELECT: BD
Selecciona linhas de uma ou mais tabelas e
apresenta-as em forma de lista
SELECT lista_campos
FROM lista_tabelas
Cláusula FROM
Permite especificar o nome das tabelas a partir
das quais a instrução SELECT deve
seleccionar os dados
Elsa Marisa S. Almeida
25
Comandos SQL p/ consulta à
Cláusula Where: BD
Cláusula Opcional que restringe as linhas
retornadas num Select
WHERE expressão1 AND / OR expressão2.....
Cláusula Order By
Permite ordenar as linhas retornadas pela
instrução SELECT
ORDER BY coluna1 ASC/ DESC, coluna2
ASC/DESC ......
Elsa Marisa S. Almeida
26
Comandos SQL p/ consulta à
Predicado ALL BD
Retorna todas as linhas que cumpram os critérios
requisitados
Aparece sempre por defeito não sendo
necessário escrevê-lo
Predicado DISTINCT
Todas as linhas com valores duplicados são
eliminados da lista de dados retornada pelo
Select
Elsa Marisa S. Almeida
27
Comandos SQL p/ actualização
Instrução UPDATE
Quando necessitamos de alterar muitos registos
ou quando esses se encontram em diversas
tabelas.
UPDATE tabela
SET coluna1=expressão1, coluna2=expressão2...
Instrução DELETE
Permite eliminar registos de uma ou mais tabelas,
definidas no FROM
DELETE
FROM nome tabela
Elsa Marisa S. Almeida
28
Comandos SQL p/ actualização
Instrução INSERT INTO
Permite copiar linhas de uma tabela para outra
tabela.
INSERT INTO tabela destino
SELECT tabelaOrigem. Campo1
FROM tabelaOrigem
Elsa Marisa S. Almeida
29
Comandos SQL- agregação de dados
Funções de agregação mais usadas:
Avg – calcula a média dos valores não nulos
Count – conta o número de registos
Sum - soma os valores não nulos
Min – retorna o menor valor não nulo do conjunto
de valores de um campo
Max – retorna o maior valor não nulo do conjunto
de valores de um campo.
Elsa Marisa S. Almeida
30
Comandos SQL- agregação de dados
Cláusula GROUP BY
Permite agrupar registos com valores idênticos
num único registo
SELECT ....
FROM ....
WHERE ......
GROUP BY....
Elsa Marisa S. Almeida
31
Comandos SQL- agregação de dados
Cláusula HAVING BY
Semelhante à cláusula Where
Permite aplicar critérios de selecção sobre o
resultado calculado para cada grupo
SELECT ....
FROM ....
WHERE ......
GROUP BY....
HAVING BY expressão1 AND/OR expressão 2
Elsa Marisa S. Almeida
32
Comandos SQL- Junção de dados
Operação INNER JOIN
Permite extrair informação de 2 ou mais tabelas
diferentes
FROM tabela1 INNER JOIN tabela2 ON
tabela1.campo1 comparação tabela2.campo2
Operação UNION
Permite juntar numa única tabela o resultado de
várias tabelas
Elsa Marisa S. Almeida
33
Comandos SQL- agregação de dados
Operações LEFT JOIN e RIGHT JOIN
Podem ser incluidas na cláusula FROM
LEFT JOIN – faz a junção de 2 tabelas com base
na comparação de valores de colunas comuns,
mas ao contrário do INNER JOIN coloca na
tabela final todas as linhas da tabela que se
situa do lado esquerdo.
RIGHT JOIN- funciona como a anterior mas
relaciona-se com a tabela do lado direito.
FROM tabela1 LEFT/RIGHT JOIN tabela2 ON
tabela1.campo1 comparação tabela2.campo2
Elsa Marisa S. Almeida
34
Comandos SQL- operações fundamentais
Restrição - operação relacional unária porque
envolve apenas uma tabela. Efectua uma
selecção de linhas da tabela
Por exemplo: Apenas mostrar os alunos
subordinados à condição Sexo= F
Projecção - finalidade é extrair de uma tabela um
subconjunto do conjunto de colunas dessa
tabela
Renomeação – consiste em atribuir um nome
diferente a uma tabela ou a uma coluna da
tabela
Elsa Marisa S. Almeida
35
Comandos SQL- operações fundamentais
Produto Cartesiano – operação relacional binária
que envolve duas tabelas. O seu resultado é o
aparecimento de uma nova tabela
União – operação relacional binária entre duas
tabelas. As tabelas envolvidas devem possuir o
mesmo número de colunas
Elsa Marisa S. Almeida
36
Download

Importar e Exportar Dados.