Escolar Documentos
Profissional Documentos
Cultura Documentos
DE DADOS
Disciplina: Gerência de Infraestrutura de Banco de Dados
Prof. Marcelo Lucas
2015-2 - 4º Mod. - Curso Superior de Redes de Computadores
Bancos de Dados
Bancos de Dados e Sistemas de Bancos de Dados são componentes
essenciais da nossa vida na sociedade moderna.
Diariamente nos vemos diante de situações que envolvem alguma
interação com sistemas de bancos de dados.
Exemplos:
Pagamento de um produto no caixa de uma loja
Emissão de uma nota fiscal eletrônica
Saque ou pagamento de uma conta no banco
Consulta e compra de produtos na internet
Emissão de contas de luz, gás, água, telefone, etc.
Uma ligação num telefone pré-pago
Etc.
Aplicação de Banco de Dados
Aplicações de Bancos de Dados
Os exemplos citados são de aplicações de bancos de dados
tradicionais, onde a maior parte das informações é
armazenada estruturadamente na forma de caracteres e
números.
Com o avanço da tecnologia surgiram necessidades de
armazenamento de outros formatos como de multimídia,
informações de coordenadas geográficas, textos
digitalizados, etc.
Esta disciplina e esta aula possuem foco principal em
bancos de dados tradicionais.
Porém poderão ser ilustradas algumas questões e conceitos
relacionados a tecnologias emergentes de bancos de
dados.
Objetivos da Aula
Ao final desta aula, o aluno deverá ser capaz de:
Ter uma visão geral sobre bancos de dados em
computadores.
Distinguir e descrever adequadamente os conceitos
relacionados aos sistemas gerenciadores de bancos de
dados.
Fazer uma instalação básica do SQL Server
Pré-requisitos
Terminologiade TI, sistema operacional Windows,
organização de computadores.
Competências da Disciplina
Construção
Manipulação
Acesso e Compartilhamento
Administração
SGBD – Sistema Gerenciador de
Banco de Dados
Software com o propósito específico de lidar com dados
armazenados em computadores, que permite:
Definição
Especificar tipos, propriedades, estruturas e restrições dos dados que serão
armazenados.
Construção
Processo de armazenar os dados em um meio controlado pelo SGBD.
Manipulação
Funções de consulta, inclusão, atualização e remoção realizadas através do
SGBD.
Acesso e Compartilhamento
Diversos usuário e aplicações acessando simultaneamente de forma
organizada e segura.
Administração
Atividades de manutenção, monitoração, performance, controle, proteção
contra falhas, recuperação de problemas, etc..
SGBD – Sistema Gerenciador de
Banco de Dados
Sinônimos duvidosos:
Software de banco de dados
Gerenciador de banco de dados
Banco de dados
Base de dados
Banco
SGBD – Sistema Gerenciador de
Banco de Dados
SQL Server – Database Engine
Oracle RDBMS
MySQL
PostgreSQL
IBM DB2
Firebird
Apache/CassandraDB
MongoDB
Apache/CounchDB
Zope
Virtuoso
...
Aplicação / Aplicativo
Um programa de aplicação passará a acessar e
atualizar indiretamente o banco de dados através
de interações apenas com o sistema gerenciador de
banco de dados.
Aplicação de Banco de Dados
Aplicação de Banco de Dados
Programas da Aplicação
Software SGBD
Componente de Software para
tratar requisições e de dados
Componente de Software
para acessar dados
Definições do BD
BD: Dados
(metadados)
Armazenados
armazenados
Aplicação/Sistema de Banco de Dados
Necessidade de SGBD
Poderiam ser construídas dentro de uma aplicação
suas próprias rotinas específicas de acesso aos
dados que residem em arquivos no sistema de
arquivos.
Sem um SGBD seria necessário implementar uma
quantidade considerável e muito complexa de
software.
Exercícios
Perguntas
1. Cite o máximo de tipos de informações diferentes
de textuais e numéricas que podem ser armazenadas
em bancos de dados de computador.
2. Descreva os conceitos destacando o que os
diferencia: “dados”, “banco de dados”, “base de
dados”, “sistema de gerenciamento de banco de
dados”, “sistema de banco de dados”, “aplicação de
banco de dados”
3. Por que precisamos utilizar um software de sistema
de gerenciamento de bancos de dados?
Exercícios
4. Uma planilha excell contendo informações de contatos
telefônicos é um banco de dados? Justifique.
Estrutura Lógica
Estrutura Física!
Só o excell entende isto...
Visões Interna e Externa dos Dados
Visão Interna = Estruturas Físicas
Modelo Interno = Modelo Físico
Visão Externa = Estruturas Lógicas
Modelo Externo = Modelo Lógico
Independência das estruturas físicas de
dados dos programas
Os SGBD geralmente são fornecidos para múltiplas
plataformas e sistemas operacionais.
O RDBMS Oracle pode ser instalado em praticamente
todas as versões de Linux, Unix, Windows, etc.
O SQL server só está disponível para os sistemas
operacionais Microsoft (Windows).
O DB2 funciona nos mainframes IBM e também em
algumas versões de Unix, Linux, OS2, e Windows.
Independência das estruturas físicas de
dados dos programas
A estrutura física em um sistema Linux certamente
terá algumas diferenças da estrutura física em um
outro sistema operacional, como Windows Server
ou mainframe.
Isto não deverá afetar o funcionamento dos
programas da aplicação. Seu código fonte
referencia os dados através da visão lógica,
independente do sistema operacional hospedeiro.
Dizemos que há uma independência de dados (no
nível físico).
Independência de Dados
Cent/OS
Aplicação
PHP
Migração
MySQL MySQL
Ubuntu Windows
Banco 1 Banco 1
SGBD Relacional
O formato de visualização de dados mais amplamente
adotado pelos SGBD é o formato em tabelas (ou
relações). Onde os dados são organizados em linhas e
colunas e são consultados ou manipulados através do
SQL (Structured Query Language)
São chamados de SGBDs Relacionais os que utilizam o
modelo de apresentação em tabelas/relações e
adotam a linguagem SQL para consultas.
O modelo lógico adotado pelos SGBDRs é chamado
de modelo relacional.
SGBD
Definição de um BD
É uma das responsabilidades do SGBD permitir a definição da
estrutura de um BD que será utilizada para o armazenamento dos
dados pela aplicação e usuários.
Permite especificar a estruturas de armazenamento dos dados que
serão visualizados pela aplicação.
É chamada de estrutura lógica.
No caso de SGBDRs é composta por um modelo de tabelas.
Onde são especificados: tipos, propriedades, campos, nomes de
tabelas, domínios e restrições dos dados que serão armazenados.
A definição dos nomes das colunas, tipos e restrições (a estrutura
lógica) de uma tabela é chamada de esquema da tabela.
O conjunto das estruturas de tabelas utilizadas para o
armazenamento e recuperação dos dados é chamado de Esquema
do Banco de Dados.
Esquema de Tabela
Tabela Cliente (
CPF char(11) chave primária,
Nome varchar(100),
Telefone char(15),
Endereco varchar(200),
E-mail varchar(200)
);
Esquema do Banco de Dados Vendas
Nome da Instância do
SGBD (Seviço SQL-Server):
localhost\SQLEXPRESS
Login:
Usuário nativo do Windows.
Sem senha pois foi utilizada
a autenticação do Windows
na instalação do SGBD
Bancos de Dados – Visão Lógica
Instância do SGBD
Serviço SQL SERVER
4 Bancos de Dados
padrões do sistema
1 Banco de Dados
específico (criado)
Bancos de Dados – Visão Física
Bancos de Dados – Visão Física
Dicionário de Dados - Metadados
Dicionário de Dados - Metadados
...
Uma consulta SQL ao Dicionário de
Dados
use testedata;
Exercícios
Perguntas
7. Descreva os conceitos destacando o que os diferencia: “instância”,
“instalação do SGBD”, “instância de BD”, “instância do SGBD”,
metadados, tabelas de catálogo do BD, esquema, esquema de banco
de dados, esquema de tabela.
8. Descreva conceitos: estrutura física, estrutura lógica, independência
da estrutura física de dados dos programas.
9. Descreva o que é um SGBD Relacional. Quais suas características
marcantes. Sua linguagem de manipulação de definição de dados. Etc.
10) O que são tabelas de dados? Devem existir arquivos específicos
para o seu armazenamento?
11) O que são metadados? Deve existir um arquivo físico específico
para seu armazenamento? Como você acha que o SGBDR faz o seu
armazenamento?
Exercícios
12. O MySQL possui versões para sistemas Linux e Windows.
No sistema operacional Linux, os nomes de arquivos são case-
sensitive, já o sistema operacional Windows não diferencia
maiúsculas de minúsculas. O MySQL cria arquivos em disco
com o mesmo nome das tabelas (quando utilizado o engenho
MyISAM). Desta forma, no sistema linux seria possível a
criação de três tabelas distintas com os seguintes nomes
“Cliente”, “cliente”, “CLIENTE”. Já no sistema Windows haveria
apenas uma tabela.
Discuta esta questão e o conceito de independência de dados.
Explique como esta característica afeta a independência de
dados e dê exemplos em que podem ocorrer problemas
quando uma instância de banco de dados é migrada de um
ambiente MySQL em Linuz para um ambiente Windows.
Laboratório
Laboratório
Lab.1.2) Identifique na sua instalação as ferramentas clientes de acesso ao
banco de dados e execute:
- sqlcmd.exe
- Sql studio
Execute o comando sql e veja os resultados:
select * from information_schema.tables;
Pesquise na internet e vasculhe o sistema de arquivos para identificar as
estruturas físicas (arquivos) do seu banco de dados. Liste nomes de arquivos
que contenham informações do banco de dados e descreva que tipos de
informações contém.
Apresentar relatório contendo:
- Nome do aluno
- Data de referência da aula e número do laboratório
- Suas respostas e conclusões
FIM
Obrigado!!!!