SlideShare uma empresa Scribd logo
1 de 51
Baixar para ler offline
Banco de dados na prática
Thiago Ferreira
Pandô APPs
Quem conhece?
Quem conhece?
Quem conhece?
Quem conhece?
Quem conhece?
Conceitos Básicos
Table
PK (primary key)
FK (foreign key)
Unique
Join
Normalização
1FN
'Uma tabela está na 1FN, se e somente se,
todos os valores das colunas da tabela
forem atómicos'
1FN
2FN
'Uma relação está na 2FN se, e somente se,
estiver na 1FN e cada atributo não-chave for
dependente da chave primária inteira, isto é,
cada atributo não-chave não poderá ser
dependente de apenas parte da chave.’
2FN
3FN
'Uma relação R está na 3FN se ela estiver na
2FN e cada atributo não-chave de R não possuir
dependência transitiva, para cada chave
candidata de R. Todos os atributos dessa tabela
devem ser independentes uns dos outros, ao
mesmo tempo que devem
ser dependentes exclusivamente da chave
primária da tabela.’
3FN
4FN… 5FN… 6FN… BCNF
Querem saber quando uso isso na prática?
DESNormalização
Desnormatização
Relacional ou não relacional?
Eis a questão!
Desafio 001
Modelar um banco para receber
estações e medições meteorológicas
MySql ou Postgres?
Boa pergunta novamente!
MySql ou SQL Server?
Mais uma boa pergunta!
Testes de stress
/usr/local/mysql/bin/mysqlslap —
user=john —auto-generate-sql
Mysqlslap
shell> /usr/local/mysql/bin/mysqlslap —
user=john —auto-generate-sql —
concurrency=100
Mysqlslap - concurrency
shell> /usr/local/mysql/bin/mysqlslap —user=john —
create-schema=world —query="SELECT City.Name,
City.District FROM City, Country WHERE
City.CountryCode = Country.Code AND Country.Code =
'IND';" —concurrency=100 —iterations=5
Mysqlslap - custom query
Como funcionam CRMs?
(salesforce) - APEX
Como funcionam CMSs?
(WordPress) - Mysql
O que são ORMs?
(Object-relational mapping)
String sql = "SELECT ... FROM persons WHERE id = 10";
DbCommand cmd = new DbCommand(connection, sql);
Result res = cmd.Execute();
String name = res[0]["FIRST_NAME"];
Person p = Person.Get(10);
Aprenda Laravel!
O que faz um DBA?
Quanto ele ganha?
1- Avaliar o hardware do Servidor de Banco de Dados
2- Instalar o Software do Banco de Dados
3- Planejar e Implementar o Banco de Dados
4- Criar e abrir o BD
5- Fazer backup do BD
6- Gerenciar usuários de BD
7- Recuperar o BD em caso de falhas
8- Monitorar e ajustar a performance do BD
Gerentes de banco de dados podem ganhar até
R$ 8.286 em cargos de gerência, de acordo com
a 36ª edição de pesquisa salarial realizada pela
empresa de recrutamento Catho. Segundo o
estudo, os salários mais baixos são dos
estagiários, que chegam a receber, em média,
R$ 781.
Administrador de Banco de Dados Júnior
R$ 2.512
Segundo a fonte, University of Minnesota Twin Cities, United States, 20% das empresas
foram a falência imediatamente após o acidente e 35% fecharam meses depois
SLA Locaweb
O que são APIs?
Que tal um teste?
Que tal outro teste?
E que tal uma infinidade de
testes?
E o que vem pela frente?
Thiago Ferreira
https://www.linkedin.com/in/thiagopando/

Mais conteúdo relacionado

Mais de Thiago Ferreira

Mais de Thiago Ferreira (8)

7 tecnologias que todo startupeiro deve se conectar - Startupday Itajubá
7 tecnologias que todo startupeiro deve se conectar - Startupday Itajubá7 tecnologias que todo startupeiro deve se conectar - Startupday Itajubá
7 tecnologias que todo startupeiro deve se conectar - Startupday Itajubá
 
Futuro das vendas
Futuro das vendasFuturo das vendas
Futuro das vendas
 
Rzx
RzxRzx
Rzx
 
Projecter oficial
Projecter oficialProjecter oficial
Projecter oficial
 
Wp weekend
Wp weekendWp weekend
Wp weekend
 
Ingresseiro.com.br
Ingresseiro.com.brIngresseiro.com.br
Ingresseiro.com.br
 
Que tal um app no seu evento?
Que tal um app no seu evento?Que tal um app no seu evento?
Que tal um app no seu evento?
 
Siga auto
Siga autoSiga auto
Siga auto
 

Banco de dados na prática