banco de dados Flashcards
banco de dados
é um armazém de dados organizado que facilita consultas e permite extrair informação, mini mundo - representa o mundo real
banco de dados não computadorizado
cartões da biblioteca
sgbd
sistema gerenciadores de banco de dados
o que é sgbd
uma coleção de programas que permite ao usuário criar e manter um banco de dados
dw componentes
1- sistemas transacionais de origem - oltp; 2- área de preparação de dados - staging area; 3- área de apresentação dos dados - olap; 4 - ferramentas de acesso aos dados
staging area componentes
1- dados brutos extraídos, 2- tabelas de staging temporária, 3- ferramentas de acesso aos dados
modelagem é importante no
planejamento de uma aplicação de banco de dados bem-sucedida
entidade
algo do mundo real. é um objeto com existência fiisica (pessoa, carro etc) ou objeto com existencia conceitual (empresa, trabalho etc)
cardinalidade
expressa o número de ocorrências de uma entidade
grau de um tipo de relacionamento
o mais comum é o grau 2 (binário, mas pode ter outros exemplo: um relacionamento entre três entidades é grau três (ternário).
razão de cardinalidade
número máximo de instâncias de relacionamento que uma entidade pode participar, exemplo; 1:n
1fn
o atributo pode conter apenas um valor. se não houver, deve-se dividir o endereço, em partes, exemplo rua, número, bairro. ou criar uma nova tabela.
2fn
os registros das colunas que não são pk deve depender da pk em sua totalidade. caso algum atributo dependa apenas de uma pk, deve ser retirado e colocado em uma nova tabela junto com a pk a qual pertence
3fn
quando o atributo não depende da pk e sim de outro atributo que não é pk, deve-se dividir a tabela em duas.
fnbc
o atributo que possui dependentes apresenta repetição, deve-se decompor a tabela em duas
4fn
a e c são dependentes entre si, mas ambos dependem de l então deve se dividir a tabela para eliminar dependências múltiplas
dependência funcional
a é dependente de d, se d estiver associado a um valor de a
dependência total
o não pk deve depender de ambos pk e não só um
dependência parcial
o não pk depende somente uma pk e não da outra
dependência transitiva
o não pk não depende da (s) pk e sim do atributo não chave
dependência multi valorada
a e c dependem de l mas não depende um do outro
cardinalidade (1,n)
o primeiro representa a cardinalidade mínima de instâncias que pode participar. o segundo representa a cardinalidade máxima de instância que pode participar do relacionamento
domínio
conjunto de valores permitidos para um atributo em uma tabela
char (n)
qualquer valor de digito
varchar(n)
qualquer valor de digito quando não sabe o tamanho fixo de campo
bit
1 corresponde a true e 0 corresponde a false, pode conter 0, 1 ou null
date time e
small date time
baseados em data e hora
ddl
data definition language create, alter rename to, alter add, alter drop, truncate
dml
data manipulation language. insert, select, update, delete
inserir dados na tabela
insert into nome_tabela(coluna1, coluna2, coluna3)
values (valor1, valor2, valor3, …)
selecionar dados da tabela
select nome, idade
from funcionarios
update valores
update nome_tabela
set coluna = valor1, coluna2 = valor..
manter tabela mas deletar dados especificos
delete from cliente
where codigo = 2
comando drop
drop table funcionarios excluir a tabela, não pode ser recuperada a menos que tenha o backup
comando truncante
truncate table funcionarios excluir os dados
alterar nome tabela
alter table cliente
rename column codigo
to cod
acrescentar nova coluna
alter table cliente
add telefone int
excluir coluna
alter table cliente
drop column telefone
=
igual
!= ou <>
diferente
>
maior que
<
menor que
> =
maior ou igual
<=
menor ou igual
like
similar
between
entre
and
e
or
ou
not
não
is
valores iguais
inner
intersecção entre
conjuntos
select coluna1, coluna2
from tabela1
inner join tabela 2
on tabela1.colunacomum = tabela2.colunacomum
left join
todos à esquerda
select coluna1, coluna2
from tabela1
left join tabela 2
on tabela1.colunacomum = tabela2.colunacomum
right join
todos à direita
select coluna1, coluna2
right join tabela 2
on tabela1.colunacomum = tabela2.colunacomum
cross join
produto cartesiano entre duas tabelas
select coluna1, coluna2
from tabela1
cross join tabela 2
on tabela1.colunacomum = tabela2.colunacomum
data ware house
armazém de dados
integra dados de diversas fontes
organizados em estrela, floco de neve
olap
analisa grandes volumes de dados
oltp
usado para gerenciar processos do dia a dia
etl
extrair, transformar, carregar
molap
multidimencional
rolap
relacional
holap
hibrido
dolap
analise de dados de pequena escala.,
exemplo:excel,=
tabela fato transacional
detalhe comleto de cada pedido etc
tabela fato acumulador
dados agregados. exemplo totais diários ou mensais
tabela fato snapshot
dados instantâneos em uma ponta de tempo
ordem oltp, staging area etc
oltp’s -> staging area -> presentation area <- access ferramentas
datamart
subconjunto de dw
a escolha dos atributos da tabela fato e dimensão depende da
análise dos dados e dos requisitos do sistema de BI (Business Intelligence).
hierarquia e agregações da tabela dimensão
exemplo, na dimensão de Tempo, pode haver uma hierarquia como Ano > Trimestre > Mês > Dia. Isso facilita as análises agregadas, como total por ano ou por trimestre.
1:1 caso ambas as cardinalidades mínimas seja obrigatória
Cria-se uma única tabela que irá conter todos os atributos, depois defina a pk
1:1 caso apenas um lado seja obrigatório
O lado obrigatório vai para o outro lado com FK, o atributo da relação vai para o mesmo lado
1:1 caso ambos os lados não seja obrigatório
Vai criar uma tabela para relação, com atributo caso tenha, e essa tabela irá receber o(s) PK(s) das outras tabelas como FK, você escolhe qual será a pk dessa tabela
1:n
A pk do lado 1 vai para a tabela ao lado de n, os atributos da relação caso tenha vai para o lado do n
n:n
Cria-se uma tabela para relação que irá receber as pk das outras tabelas como atributo e o atributos (s) da relação caso tenha
cardinalidade da frase “um professor ensina um aluno”
professor 1 — ensina – 1 aluno
cardinalidade da frase “um aluno realiza vários trabalhos. um trabalho é realizado por ou mais alunos”
aluno (1, n) – realiza – (1, n) trabalhos
tabela fato e dimensão
fato - fk das dimensões e medidas; dimensão - o que, quem quando, onde, como
granularidade alta
granularidade média
granularidade baixa
granularidade alta (por transação) mais detalhes.
granularidade média (por dia) total de vendas por dia
granularidade baixa (por mês) total de vendas por mês mais detalhes