Treinamento PostgreSQL - Aula 07
|
|
|
- Tiago Cabral de Oliveira
- 9 Há anos
- Visualizações:
Transcrição
1 Treinamento PostgreSQL - Aula 07 Eduardo Ferreira dos Santos SparkGroup Treinamento e Capacitação em Tecnologia [email protected] eduardosan.com 06 de Junho de 2013 Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia 07 [email protected] 06 de Junho de / 52 edua
2 Cronograma Semana 1: 27 de Maio a 3 de Junho Administração de Dados Semana 2: 4-11 de Junho Administração de Banco de Dados Semana 3: de Junho Alta disponibilidade Semana 4: de Junho Performance Tuning Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia 07 [email protected] 06 de Junho de / 52 edua
3 Para começar Banco de dados não é para amadores. O Sistema Operacional pode ser o melhor amigo (ou inimigo) do DBA. Especicar corretamente o hardware DEVE ser trabalho do DBA, pois é extremamente importante. Os riscos dos erros do DBA são sempre maiores. Aprenda a conviver com o conservadorismo. Estudar é importante, mas para um DBA é muito mais importante! Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia 07 [email protected] 06 de Junho de / 52 edua
4 Sumário 1 Monitoramento Introdução Processador Memória Principal Memória secundária Ferramentas de monitoramento 2 Troubleshooting Introdução Tipos de problema 3 Administração assistida(?) 4 Referências Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia 07 [email protected] 06 de Junho de / 52 edua
5 Monitoramento Introdução 1 Monitoramento Introdução Processador Memória Principal Memória secundária Ferramentas de monitoramento 2 Troubleshooting Introdução Tipos de problema 3 Administração assistida(?) 4 Referências Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia 07 [email protected] 06 de Junho de / 52 edua
6 Monitoramento Introdução Entendendo o SGBD Como o PostgreSQL utiliza o processador? Como é a utilização da memória? Como é o consumo de disco? Como o SO pode ser otimizado? Como identicar os componentes externos? Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia 07 [email protected] 06 de Junho de / 52 edua
7 Monitoramento Introdução Entendendo o SGBD ([Momjian, 2010]) Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia 07 [email protected] 06 de Junho de / 52 edua
8 Monitoramento Introdução Entendendo o SGBD Hardware: Processador Memória principal Memória secundária Sistema operacional e seus subsistemas (principalmente o kernel); Sistema de execução de consultas; Processamento de transações; Armazenamento. Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia 07 [email protected] 06 de Junho de / 52 edua
9 Monitoramento Processador 1 Monitoramento Introdução Processador Memória Principal Memória secundária Ferramentas de monitoramento 2 Troubleshooting Introdução Tipos de problema 3 Administração assistida(?) 4 Referências Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia 07 [email protected] 06 de Junho de / 52 edua
10 Monitoramento Processador Processador O caminho de uma consulta [PostgreSQL, 2010]: 1 A conexão de uma aplicação ao servidor PostgreSQL deve ser estabelecida. O programa transmite a consulta ao servidor e espera pelos resultados; 2 O estágio de parser verica se a consulta possui a sintaxe correta e cria uma árvore de consulta; 3 O sistema de reescrita recebe a àrvore criada criada pelo parser e busca quaisquer regras (armazenadas no catálogo do sistema) que possam ser aplicadas à árvore. São então realizadas as transformações fornecidas pelas regras. Uma das funções do sistema de reescrita é na realização de visões (views). Todas as vezes em que uma consulta em uma visão (ou uma tabela virtual) é realizada, o sistema de reescrita altera a consulta para outra que acessa as tabelas base fornecidas em sua denição. Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
11 Monitoramento Processador Processador O caminho de uma consulta [PostgreSQL, 2010]: 4 O otimizador recebe a árvore de consulta (possivelmente reescrita) e cria um plano de execução que será a entrada do executor. 5 O plano é criado através da criação de todos os possíveis caminhos que levam ao resultado. (...) O caminho mais barato (mais rápido) é expandido em um plano completo que o executor pode utilizar. 6 O Executor caminha recursivamente através da árvore e busca as linhas no formato representado pelo plano de execução. O executor utiliza então o sistema de armazenamento enquanto está vericando relações, fazendo ordenações (sorts) e junções (joins), avalia as qualicações e nalmente envia as linhas encontradas. Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
12 Monitoramento Processador Processador O bom DBA entende suas consultas e conhece a melhor forma de otimizá-la. EXPLAIN ANALYZE é seu amigo! SELECT d i s t i n c t lm. landmark_id, lm. name, ts_rank_cd ( t o _ t s v e c t o r ( aslm. name ' ' a r l m. name ' ' a s r l m. name ), q u e r y ) a s r a n k FROM lm_landmarks lm, ac_state_language_map aslm, ac_ regions ar, ac_region_language_map arlm, ac_sub_regions asr, ac_sub_region_language_map asrlm, p l a i n t o _ t s q u e r y ( ' B a r c e l o n a ' ) q u e r y WHERE aslm. s t a t e _ i d = lm. s t a t e _ i d AND a r. s t a t e _ i d = lm. s t a t e _ i d AND a r l m. r e g i o n _ i d = a r. r e g i o n _ i d AND a s r. r e g i o n _ i d = a r. r e g i o n _ i d AND a s r. sub_region_id = asrlm. sub_region_id AND q u e r t o _ t s v e c t o r ( aslm. name ' ' a r l m. name ' ' a s r l m. name ) ORDER BY r a n k DESC ; Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
13 Monitoramento Processador Processador A consulta é lentíssima! Como sabemos o que consome de processador? EXPLAIN ANALYZE SELECT d i s t i n c t lm. landmark_id, lm. name, ts_rank_cd ( t o _ t s v e c t o r ( aslm. name ' ' a r l m. name ' ' a s r l m. name ), q u e r y ) a s r a n k FROM lm_landmarks lm, ac_state_language_map aslm, ac_ regions ar, ac_region_language_map arlm, ac_sub_regions asr, ac_sub_region_language_map asrlm, p l a i n t o _ t s q u e r y ( ' B a r c e l o n a ' ) q u e r y WHERE aslm. s t a t e _ i d = lm. s t a t e _ i d AND a r. s t a t e _ i d = lm. s t a t e _ i d AND a r l m. r e g i o n _ i d = a r. r e g i o n _ i d AND a s r. r e g i o n _ i d = a r. r e g i o n _ i d AND a s r. sub_region_id = asrlm. sub_region_id AND q u e r t o _ t s v e c t o r ( aslm. name ' ' a r l m. name ' ' a s r l m. name ) ORDER BY r a n k DESC ; Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
14 Monitoramento Processador Resultados Unique ( c o s t = rows =1558 w i d t h =86) ( a c t u a l t i m e = rows=12 l o o p s =1) > S o r t ( c o s t = rows =1558 w i d t h =86) ( a c t u a l t i m e = rows = l o o p s =1) S o r t Key : ( ts_rank_cd ( t o _ t s v e c t o r ( ( ( ( ( ( aslm. name ) : : t e x t ' ' : : t e x t ) ( a r l m. name ) : : t e x t ) ' ' : : t e x t ) ( a s r l m. name ) : : t e x t ) ), q u e r y. q u e r y ) ), lm. landmark_id, lm. name S o r t Method : e x t e r n a l merge D i s k : 15544kB > Nested Loop ( c o s t = rows =1558 w i d t h =86) ( a c t u a l t i m e = rows = l o o p s =1) J o i n F i l t e r : ( q u e r y. q u e r t o _ t s v e c t o r ( ( ( ( ( ( aslm. name ) : : t e x t ' ' : : t e x t ) ( a r l m. name ) : : t e x t ) ' ' : : t e x t ) ( a s r l m. na me) : : t e x t ) ) ) > F u n c t i o n Scan on p l a i n t o _ t s q u e r y q u e r y ( c o s t = rows =1 w i d t h =32) ( a c t u a l t i m e = rows=1 l o o p s =1) > Merge J o i n ( cost = rows = width =54) ( a c t u a l t i m e = rows = l o o p s =1) (... ) Total runtime : ms (35 rows ) Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
15 Monitoramento Processador Monitoramento Pergunta de 1 milhão de dólares: Como saber se o meu banco de dados precisa de otimização? duardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
16 Monitoramento Processador Monitoramento Pergunta de 1 milhão de dólares: Como saber se o meu banco de dados precisa de otimização? Resposta: duardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
17 Monitoramento Processador Monitoramento Pergunta de 1 milhão de dólares: Como saber se o meu banco de dados precisa de otimização? Resposta: Depende! duardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
18 Monitoramento Processador Monitoramento Pergunta de 1 milhão de dólares: Como saber se o meu banco de dados precisa de otimização? Resposta: Depende! O que é lento pra você? Lentidão x Consumo de recursos de máquina Lembrete: usuários de Windows comumente culpam seus computadores quando há alguma lentidão em seu SO. E em bancos de dados? E no PostgreSQL? duardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
19 Monitoramento Processador Ferramentas de monitoramento Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia de Junho de / 52 edua
20 Monitoramento Memória Principal 1 Monitoramento Introdução Processador Memória Principal Memória secundária Ferramentas de monitoramento 2 Troubleshooting Introdução Tipos de problema 3 Administração assistida(?) 4 Referências Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
21 Monitoramento Memória Principal Memória principal O que são os danados dos shared_buers? max_connections Maldito swap do inferno!!! Como monitorar a memória? Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
22 Monitoramento Memória Principal Memória Principal Por que estou preocupado com a memória? duardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
23 Monitoramento Memória Principal Memória Principal Por que estou preocupado com a memória? Resposta: porque o banco de dados está lento duardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
24 Monitoramento Memória Principal Memória Principal Por que estou preocupado com a memória? Resposta: porque o banco de dados está lento No caso de lentidão do banco de dados, quase sempre culpamos a memória. Agora que conhecemos o PostgreSQL, somos capazes de indenticar se o problema está na memória? Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
25 Monitoramento Memória Principal Memória Principal [Momjian, 2010] Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia de Junho de / 52 edua
26 Monitoramento Memória Principal Memória Principal É muito difícil descobrir quanto de memória cada consulta utiliza; O primeiro passo para otimizar a performance é alterar os shared_buers; Uma conguração correta de shared_buers é o que mais afeta o tempo de resposta do banco. Qual valor colocar? Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
27 Monitoramento Memória Principal Memória Principal É muito difícil descobrir quanto de memória cada consulta utiliza; O primeiro passo para otimizar a performance é alterar os shared_buers; Uma conguração correta de shared_buers é o que mais afeta o tempo de resposta do banco. Qual valor colocar? Não existe receita mágica, mas normalmente deve ser algo entre 25% e 40% da memória disponível. Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
28 Monitoramento Memória Principal Memória Principal É muito difícil descobrir quanto de memória cada consulta utiliza; O primeiro passo para otimizar a performance é alterar os shared_buers; Uma conguração correta de shared_buers é o que mais afeta o tempo de resposta do banco. Qual valor colocar? Não existe receita mágica, mas normalmente deve ser algo entre 25% e 40% da memória disponível. Como monitorar? Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
29 Monitoramento Memória Principal Memória Principal É muito difícil descobrir quanto de memória cada consulta utiliza; O primeiro passo para otimizar a performance é alterar os shared_buers; Uma conguração correta de shared_buers é o que mais afeta o tempo de resposta do banco. Qual valor colocar? Não existe receita mágica, mas normalmente deve ser algo entre 25% e 40% da memória disponível. Como monitorar? Observe se cou mais rápido; Utilize o pgbench, que falaremos mais à frente. Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
30 Monitoramento Memória secundária 1 Monitoramento Introdução Processador Memória Principal Memória secundária Ferramentas de monitoramento 2 Troubleshooting Introdução Tipos de problema 3 Administração assistida(?) 4 Referências Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
31 Monitoramento Memória secundária Memória secundária Utilização dos sistemas de arquivos para realização das consultas (Veja 3) WAL Divisão em pequenos arquivos - Método TOAST Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
32 Monitoramento Memória secundária Memória secundária [Momjian, 2010] Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia de Junho de / 52 edua
33 Monitoramento Memória secundária O método TOAST Por conceito, uma tupla não pode car em mais de uma página no sistema de arquivos Cada página tem no máximo 8k 1 Para registros muito grandes podem acontecer problemas de alocação Método TOAST 2 : os registros são então comprimidos e divididos em várias linhas 1 Pode ser alterado na compilação do banco 2 The best thing since slice bread Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
34 Monitoramento Memória secundária Implementação do método TOAST Registros de tamanho variável Os primeiros 32 bits contêm o tamanho do registro em bytes Os dois primeiros bits são reservados e tratados da seguinte forma 00 Valor armazenado sem a aplicação de TOAST 10 O valor armazenado possui cabeçalho (header) de um único byte; o restante representa o total do valor armazenado Dados comprimidos e precisam ser descomprimidos antes de serem utilizados 11 Os valores não possuem nenhum limite particular 3 Se todos os registros restantes forem 0 o valor é um ponteiro para os dados armazenados em outra tabela TOAST Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
35 Monitoramento Memória secundária Memória secundária Para os casos de: Melhores tipos de disco Opções de storage Consulte: Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia de Junho de / 52 edua
36 Monitoramento Memória secundária Monitorando o disco Monitorar o disco pode ser um grande desao para o DBA. A maior parte das ferramentas não dá um número de carga do disco. Métrica mais eciente: load average e blocks in - blocks out. L i n u x amd64 ( nodo406. l a b c l u s t e r ) _x86_64_ avg cpu : %u s e r %n i c e %s y s t e m %i o w a i t %s t e a l %i d l e 3,11 0,01 0,25 0,51 0,00 96,11 Device : tps Blk_read / s Blk_wrtn / s Blk_read Blk_wrtn sda 24,66 579,87 376, sda1 0,00 0,01 0, sda2 0,60 1,50 6, sda3 24,06 578,36 369, Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
37 Monitoramento Memória secundária Monitorando o disco Load Average acima de 3 e baixo processamento indica sinais de problema com o disco. Relação bi - bo acima de 100: o banco vai travar!!! O comando iostat mostra o TPS (transações por segundo no disco). Se o número de transações estiver alto e bi - bo estiver crescendo, há problemas no banco. MUITO IMPORTANTE: Consultas também utilizam o disco, e não somente operações de escrita. Leiam novamente o Método TOAST. Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
38 Monitoramento Ferramentas de monitoramento 1 Monitoramento Introdução Processador Memória Principal Memória secundária Ferramentas de monitoramento 2 Troubleshooting Introdução Tipos de problema 3 Administração assistida(?) 4 Referências Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
39 Monitoramento Ferramentas de monitoramento Ferramentas de monitoramento O log é seu melhor amigo O SO precisa mostrar informações relevantes É possível monitorar a execução diretamente no banco Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
40 Monitoramento Ferramentas de monitoramento A bíblia do monitoramento direto no banco [Momjian, 2010] Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
41 Monitoramento Ferramentas de monitoramento pgbench Muito similar ao método de tentativa e erro: simula carga no banco para vericar a performance; IMPORTANTE: Não se deve usar o pgbench para comparar tempo de resposta entre diferentes ambientes. O tempo varia com muitas variáveis e o resultado não é preciso; O pgbench deve ser utilizado em várias interações incrementais para monitorar ajustes no mesmo ambiente. Exemplo: 1 Executo o pgpench; 2 Anoto os resultados; 3 Altero os shared_buers; 4 Comparo os resultados. Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
42 Monitoramento Ferramentas de monitoramento Exemplos de pg_pench P o s t g r e s q l. c o n f : max_connections = 250 s h a r e d _ b u f f e r s = 3000MB #t e m p _ b u f f e r s = 8MB #m a x _ p r e p a r e d _ t r a n s a c t i o n s = 5 work_mem = 256MB maintenance_work_mem = 512MB #max_stack_depth = 2MB pgbench c50 t100 maquina2 = 117 t p s Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
43 Troubleshooting Introdução 1 Monitoramento Introdução Processador Memória Principal Memória secundária Ferramentas de monitoramento 2 Troubleshooting Introdução Tipos de problema 3 Administração assistida(?) 4 Referências Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
44 Troubleshooting Introdução O que é um problema? Lentidão? Indisponibilidade momentânea? Indisponibilidade prolongada? Perda de dados? (PERIGO!!!) Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
45 Troubleshooting Introdução O que é um problema? Faz parte do trabalho do DBA identicar com o responsável pelo negócio o que é um problema; A identicação de um problema deve vir acompanhada de um planejamento em caso de catástrofe; Tenham em mente a máxima da computação: Shit Happens!!! Nenhum sistema é imune a falhas; Tristemente, só em casos de catástrofe nosso trabalho é valorizado. Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
46 Troubleshooting Tipos de problema 1 Monitoramento Introdução Processador Memória Principal Memória secundária Ferramentas de monitoramento 2 Troubleshooting Introdução Tipos de problema 3 Administração assistida(?) 4 Referências Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
47 Troubleshooting Tipos de problema Lentidão O que está lento? Consulta demorando muito? Demorando para conseguir uma nova conexão? Conheça o banco e saiba identicar pontos de lentidão. spb=# \d pg \ _stat \ _ a c t i v i t y V i s a o " p g \ _ c a t a l o g. p g \ _ s t a t \ _ a c t i v i t y " Coluna Tipo M o d i f i c a d o r e s + + d a t i d o i d datname name p r o c p i d i n t e g e r u s e s y s i d o i d usename name c u r r e n t \ _query t e x t w a i t i n g b o o l e a n query \ _ start timestamp with t i m e zone backend \ _ start timestamp with t i m e zone c l i e n t \ _addr i n e t c l i e n t \ _port i n t e g e r D e f i n i c a o da v i s a o : SELECT d. oid AS datid, d. datname, pg \ _stat \ _get \ _backend \ _pid ( s. backendid ) AS p r o c p i d, pg \ _stat \ _get \ _backend \ _ u s e r i d ( s. b a c k e n d i d ) AS u s e s y s i d, u. r o l n a m e AS usename, pg \ _stat \ _get \ _backend \ _ a c t i v i t y ( s. b a c k e n d i d ) AS c u r r e n t \ _query, pg \ _stat \ _get \ _backend \ _waiting ( s. backendid ) AS waiting, pg \ _stat \ _get \ _backend \ _ a c t i v i t y \ _ s t a r t ( s. b a c k e n d i d ) AS q u e r y \ _ s t a r t, pg \ _stat \ _get \ _backend \ _ start ( s. backendid ) AS backend \ _start, pg \ _stat \ _get \ _backend \ _ c l i e n t \ _addr ( s. b a c k e n d i d ) AS c l i e n t \_addr, pg \ _stat \ _get \ _backend \ _ c l i e n t \ Eduardo Ferreira _port dos ( s Santos. b a c k(sparkgroup e n d i d ) AS ctreinamento l i e n t \ _port epostgresql Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
48 Troubleshooting Tipos de problema Consultas Uma consulta bem escrita é aquela que gera o melhor plano de execução; Mais de 80% dos problemas de performance em bancos de dados estão relacionados a consultas SQL mal escritas; EXPLAIN ANALYZE [?] Eduardo Ferreira dos Santos (SparkGroup Treinamento e Capacitação em Tecnologia [email protected] edua Treinamento PostgreSQL - Aula de Junho de / 52
49 Troubleshooting Tipos de problema Consultas Não seja preguiçoso e não jogue seu tempo fora! Tentativa e erro demora muito e nem sempre traz os resultados esperados; Conheça seu banco de dados e o caminho percorrido pela consulta. Onde está o problema na consulta abaixo? Unique ( c o s t = rows =1558 w i d t h =86) ( a c t u a l t i m e = rows=12 l o o p s =1) > S o r t ( c o s t = rows =1558 w i d t h =86) ( a c t u a l t i m e = rows = l o o p s =1) S o r t Key : ( ts_rank_cd ( t o _ t s v e c t o r ( ( ( ( ( ( aslm. name ) : : t e x t ' ' : : t e x t ) ( a r l m. name ) : : t e x t ) ' ' : : t e x t ) ( a s r l m. name ) : : t e x t ) ), q u e r y. q u e r y ) ), lm. landmark_id, lm. name S o r t Method : e x t e r n a l merge D i s k : 15544kB > Nested Loop ( c o s t = rows =1558 w i d t h =86) ( a c t u a l t i m e = rows = l o o p s =1) J o i n F i l t e r : ( q u e r y. q u e r t o _ t s v e c t o r ( ( ( ( ( ( aslm. name ) : : t e x t ' ' : : t e x t ) ( a r l m. name ) : : t e x t ) ' ' : : t e x t ) ( a s r l m. na me) : : t e x t ) ) ) > F u n c t i o n Scan on p l a i n t o _ t s q u e r y q u e r y ( c o s t = rows =1 w i d t h =32) ( a c t u a l t i m e = rows=1 l o o p s =1) > Merge J o i n ( cost = rows = width =54) ( a c t u a l t i m e = rows = l o o p s =1) (... ) Total runtime : ms (35 rows ) Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
50 Troubleshooting Tipos de problema Indisponibilidade momentânea Houve algum erro quando o sistema foi reiniciado? Alguma das partições não subiu? Problema de fencing em Cluster? O log é seu amigo!!! O bom DBA deve conhecer todos os fatores da infra que afetam o banco de dados. Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
51 Troubleshooting Tipos de problema Indisponibilidade prolongada Denição da variável TEMPO! Validação de consistência. Levantando a cópia de segurança ou o backup. De acordo com Telles [Telles, 2010], pg_dump não é backup!!! Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
52 Troubleshooting Tipos de problema Perda de dados Como estar seguro sobre a perda dos dados? A importância do WAL Como tornar o SGBD menos suscetível a problemas assim? Uma vez perdido, só um restore salva. Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
53 Troubleshooting Tipos de problema Tipos de falha segundo [Momjian, 2010] Falha na aplicação do Cliente; Falha "elegante"no servidor (manda desligar); Falha abrupta no servidor; Falha no sistema operacional; Falha no disco; Remoção acidental de dados (DELETE); WAL corrompido; Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia de Junho de / 52 edua
54 Troubleshooting Tipos de problema Tipos de falha segundo [Momjian, 2010] (continuação) Arquivos removidos; DROP TABLE acidental; DROP INDEX acidental; DROP DATABASE acidental; Instalação não inicia; Índices corrompidos; Tabelas corrompidas. Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia de Junho de / 52 edua
55 Troubleshooting Tipos de problema Ações sugeridas por [Momjian, 2010] Falha na aplicação do Cliente: duardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia de Junho de / 52 edua
56 Troubleshooting Tipos de problema Ações sugeridas por [Momjian, 2010] Falha na aplicação do Cliente: Nenhuma ação necessária. Transações sofrem ROLLBACK. Falha "elegante"no servidor (manda desligar): Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia de Junho de / 52 edua
57 Troubleshooting Tipos de problema Ações sugeridas por [Momjian, 2010] Falha na aplicação do Cliente: Nenhuma ação necessária. Transações sofrem ROLLBACK. Falha "elegante"no servidor (manda desligar): Nenhuma ação necessária. Transações sofrem ROLLBACK. Falha abrupta no servidor: Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia de Junho de / 52 edua
58 Troubleshooting Tipos de problema Ações sugeridas por [Momjian, 2010] Falha na aplicação do Cliente: Nenhuma ação necessária. Transações sofrem ROLLBACK. Falha "elegante"no servidor (manda desligar): Nenhuma ação necessária. Transações sofrem ROLLBACK. Falha abrupta no servidor: Nenhuma ação necessária. Transações sofrem ROLLBACK. Falha no sistema operacional: Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia de Junho de / 52 edua
59 Troubleshooting Tipos de problema Ações sugeridas por [Momjian, 2010] Falha na aplicação do Cliente: Nenhuma ação necessária. Transações sofrem ROLLBACK. Falha "elegante"no servidor (manda desligar): Nenhuma ação necessária. Transações sofrem ROLLBACK. Falha abrupta no servidor: Nenhuma ação necessária. Transações sofrem ROLLBACK. Falha no sistema operacional: Nenhuma ação necessária. Transações sofrem ROLLBACK. Páginas escritas parcialmente são reparadas Falha no disco: Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia de Junho de / 52 edua
60 Troubleshooting Tipos de problema Ações sugeridas por [Momjian, 2010] Falha na aplicação do Cliente: Nenhuma ação necessária. Transações sofrem ROLLBACK. Falha "elegante"no servidor (manda desligar): Nenhuma ação necessária. Transações sofrem ROLLBACK. Falha abrupta no servidor: Nenhuma ação necessária. Transações sofrem ROLLBACK. Falha no sistema operacional: Nenhuma ação necessária. Transações sofrem ROLLBACK. Páginas escritas parcialmente são reparadas Falha no disco: Restaure o backup ou use PITR Remoção acidental de dados (DELETE): Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
61 Troubleshooting Tipos de problema Ações sugeridas por [Momjian, 2010] Falha na aplicação do Cliente: Nenhuma ação necessária. Transações sofrem ROLLBACK. Falha "elegante"no servidor (manda desligar): Nenhuma ação necessária. Transações sofrem ROLLBACK. Falha abrupta no servidor: Nenhuma ação necessária. Transações sofrem ROLLBACK. Falha no sistema operacional: Nenhuma ação necessária. Transações sofrem ROLLBACK. Páginas escritas parcialmente são reparadas Falha no disco: Restaure o backup ou use PITR Remoção acidental de dados (DELETE): Restaure a tabela do último backup. É possível congurar o banco para visualizar tuplas excluídas. WAL corrompido: Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
62 Troubleshooting Tipos de problema Ações sugeridas por [Momjian, 2010] Falha na aplicação do Cliente: Nenhuma ação necessária. Transações sofrem ROLLBACK. Falha "elegante"no servidor (manda desligar): Nenhuma ação necessária. Transações sofrem ROLLBACK. Falha abrupta no servidor: Nenhuma ação necessária. Transações sofrem ROLLBACK. Falha no sistema operacional: Nenhuma ação necessária. Transações sofrem ROLLBACK. Páginas escritas parcialmente são reparadas Falha no disco: Restaure o backup ou use PITR Remoção acidental de dados (DELETE): Restaure a tabela do último backup. É possível congurar o banco para visualizar tuplas excluídas. WAL corrompido: Veja pg_resetxlog. Reveja as transações e identique os danos, incluindo transações parcialmente gravadas. Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
63 Troubleshooting Tipos de problema Ações sugeridas por [Momjian, 2010] (continuação) Arquivos removidos: duardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia de Junho de / 52 edua
64 Troubleshooting Tipos de problema Ações sugeridas por [Momjian, 2010] (continuação) Arquivos removidos: pode ser necessário criar um arquivo vazio de mesmo nome do excluído para que o objeto possa ser excluído e restaurado do último backup DROP TABLE acidental: duardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
65 Troubleshooting Tipos de problema Ações sugeridas por [Momjian, 2010] (continuação) Arquivos removidos: pode ser necessário criar um arquivo vazio de mesmo nome do excluído para que o objeto possa ser excluído e restaurado do último backup DROP TABLE acidental: Recupere do último backup DROP INDEX acidental: duardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
66 Troubleshooting Tipos de problema Ações sugeridas por [Momjian, 2010] (continuação) Arquivos removidos: pode ser necessário criar um arquivo vazio de mesmo nome do excluído para que o objeto possa ser excluído e restaurado do último backup DROP TABLE acidental: Recupere do último backup DROP INDEX acidental: Crie o índice novamente DROP DATABASE acidental: duardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
67 Troubleshooting Tipos de problema Ações sugeridas por [Momjian, 2010] (continuação) Arquivos removidos: pode ser necessário criar um arquivo vazio de mesmo nome do excluído para que o objeto possa ser excluído e restaurado do último backup DROP TABLE acidental: Recupere do último backup DROP INDEX acidental: Crie o índice novamente DROP DATABASE acidental: Recupere do último backup Instalação não inicia: duardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
68 Troubleshooting Tipos de problema Ações sugeridas por [Momjian, 2010] (continuação) Arquivos removidos: pode ser necessário criar um arquivo vazio de mesmo nome do excluído para que o objeto possa ser excluído e restaurado do último backup DROP TABLE acidental: Recupere do último backup DROP INDEX acidental: Crie o índice novamente DROP DATABASE acidental: Recupere do último backup Instalação não inicia: Normalmente problema no WAL. Veja recuperação do WAL Índices corrompidos; duardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
69 Troubleshooting Tipos de problema Ações sugeridas por [Momjian, 2010] (continuação) Arquivos removidos: pode ser necessário criar um arquivo vazio de mesmo nome do excluído para que o objeto possa ser excluído e restaurado do último backup DROP TABLE acidental: Recupere do último backup DROP INDEX acidental: Crie o índice novamente DROP DATABASE acidental: Recupere do último backup Instalação não inicia: Normalmente problema no WAL. Veja recuperação do WAL Índices corrompidos; Use REINDEX Tabelas corrompidas. duardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
70 Troubleshooting Tipos de problema Ações sugeridas por [Momjian, 2010] (continuação) Arquivos removidos: pode ser necessário criar um arquivo vazio de mesmo nome do excluído para que o objeto possa ser excluído e restaurado do último backup DROP TABLE acidental: Recupere do último backup DROP INDEX acidental: Crie o índice novamente DROP DATABASE acidental: Recupere do último backup Instalação não inicia: Normalmente problema no WAL. Veja recuperação do WAL Índices corrompidos; Use REINDEX Tabelas corrompidas. Tente reindexar a tabela. Tente identicar o OID da linha corrompida e copie os dados válidos para uma tabela temporária duardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
71 Administração assistida(?) Seja corajoso!!! Se você espera alguma ferramenta do tipo GUI, esqueca. Mesmo que existam ferramentas, o mais importante é conhecer o SGBD e seus componentes. DBA não é DBV!!! Vale lembrar: é papel do DBA conhecer profundamente o Sistema Operacional Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
72 Administração assistida(?) Ainda assim quero telinhas... Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia de Junho de / 52 edua
73 Administração assistida(?) Vale lembrar Nenhum software vai administrar o banco pra você. Ajudam se forem bem operados; Se você não sabe o que é partição, tipo de sistema de arquivos, paginação, estratégias de buering, volte algumas casas. Está assustado? duardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
74 Administração assistida(?) Vale lembrar Nenhum software vai administrar o banco pra você. Ajudam se forem bem operados; Se você não sabe o que é partição, tipo de sistema de arquivos, paginação, estratégias de buering, volte algumas casas. Está assustado? É possível se tornar um grande DBA sem sair de casa. Acesse e seja feliz! Infelizmente, não é possível evoluir muito em nossa prossão sem o Inglês. Se quiser ser realmente bom, domine a língua primeiro. Finalmente, aprenda fazendo. As empresas valorizam muito o estudo, mas para administrar dados tem que ter experiência. Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
75 Referências Momjian, B. (2010). Mastering postgresql administration. Acessado em 10/11/2009. PostgreSQL, C. (2010). The path of a query. Acessado em 10/11/2010. Telles, F. (2010). Dump não é backup. telles/2010/05/06/dump-nao-e-backup/ Acessado em 10/11/2010. Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia [email protected] de Junho de / 52 edua
76 Referências Contato Eduardo Ferreira dos Santos Sparkgroup Lightbase Consultoria em Software Público Eduardo Ferreira dos Santos (SparkGroup TreinamentoePostgreSQL Capacitação- Aula em Tecnologia de Junho de / 52 edua
PostgreSQL Troubleshooting e Monitoramento
PostgreSQL Troubleshooting e Monitoramento Eduardo Ferreira dos Santos Dataprev Empresa de Tecnologia e Informações da Previdência Social [email protected] eduardosan.wordpress.com 22 de
PostgreSQL Troubleshooting e Monitoramento
PostgreSQL Troubleshooting e Monitoramento Eduardo Ferreira dos Santos Dataprev Empresa de Tecnologia e Informações da Previdência Social [email protected] eduardosan.wordpress.com 11 de
Treinamento PostgreSQL - Aula 09
Treinamento PostgreSQL - Aula 09 Eduardo Ferreira dos Santos SparkGroup Treinamento e Capacitação em Tecnologia [email protected] eduardosan.com 10 de Junho de 2013 Eduardo Ferreira dos Santos
Banco de Dados II. Administrador de Banco de Dados - DBA. Portela
UNIVERSIDADE FEDERAL DO MARANHAO - UFMA Banco de Dados II Administrador de Banco de Dados - DBA Portela * DBA Introdução Atuação Responsabilidades 2 Atuação O Administrador de Banco de Dados (DBA) é o
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
Introdução. descrever os tipos de interfaces e linguagens oferecidas por um SGBD. mostrar o ambiente de programas dos SGBD s
Introdução Contribuição do Capítulo 2: discutir modelos de dados definir conceitos de esquemas e instâncias descrever os tipos de interfaces e linguagens oferecidas por um SGBD mostrar o ambiente de programas
NoSQL Apache Cassandra para DBAs. Conceitos básicos que todo DBA deve conhecer sobre Apache Cassandra.
NoSQL Apache Cassandra para DBAs Conceitos básicos que todo DBA deve conhecer sobre Apache Cassandra. Apresentação Pessoal Ronaldo Martins: Há mais de 14 anos dedicado à tecnologias Oracle, passando pelas
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
Treinamento PostgreSQL - Aula 01
Treinamento PostgreSQL - Aula 01 Eduardo Ferreira dos Santos SparkGroup Treinamento e Capacitação em Tecnologia [email protected] eduardosan.com 27 de Maio de 2013 Eduardo Ferreira dos Santos
Postgre SQL. Apresentação. Objetivo. Facilitador. Dados Principais. Ricardo Barbosa
Postgre SQL Apresentação O PostgreSQL é atualmente o Sistema Gerenciador de Banco de Dados mais avançado do mundo, pois sua robustez e recursos disponibilizados fazem frente aos outros SGBDs proprietários
Configurações de performance no SQL Server José Antônio da Cunha CEFET-RN
Configurações de performance no SQL Server 2005 José Antônio da Cunha CEFET-RN Para obter o máximo de performance, DBAs configuram o SQL Server para atender às suas necessidades de negócio e muitas vezes
Treinamento PostgreSQL - Aula 03
Treinamento PostgreSQL - Aula 03 Eduardo Ferreira dos Santos SparkGroup Treinamento e Capacitação em Tecnologia [email protected] eduardosan.com 29 de Maio de 2013 Eduardo Ferreira dos Santos
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
Instituto Federal de Educação, Ciência e Tecnologia de São Paulo - IFSP
Instituto Federal de Educação, Ciência e Tecnologia de São Paulo - IFSP Campus de Caraguatatuba Tecnólogo em Análise e Desenvolvimento de Sistemas 1 0 Semestre de 2013 BD I Prof. Lineu Mialaret Aula 25:
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
Catálogo de Treinamentos 2016
Catálogo de Treinamentos 2016 PostgreSQL Fundamentos PostgreSQL Tuning PostgreSQL Backup e Restore PostgreSQL Replicação Nativa PostgreSQL Monitoramento PostgreSQL PL/pgSQL PostgreSQL Segurança [email protected]
Fundamentos de Sistemas Operacionais
Fundamentos de Sistemas Operacionais Aula 19: Memória Virtual: Introdução Diego Passos Última Aula Paginação Método de gerenciamento de memória mais usado hoje. Espaço de endereçamento de um processo é
Laboratório de Banco de Dados. Prof. Luiz Vivacqua.
([email protected]) Ementa Conceitos básicos Sistemas de banco de dados Relacional Visão Geral do PostGreSQL Álgebra Relacional Operadores básicos Operadores adicionais A Linguagem de Consulta Estruturada
Curso PostgreSQL - Treinamento PostgreSQL - Fundamental
Curso PostgreSQL - Treinamento PostgreSQL - Fundamental Sobre PostgreSQL PostgreSQL é um sistema gerenciador de banco de dados objeto relacional (SGBDOR), desenvolvido como projeto de código aberto.hoje,
Sistemas de Gerência de Bancos de Dados. Módulo 1 - Armazenamento
Sistemas de Gerência de Bancos de Dados Módulo 1 - Armazenamento Tópicos Introdução Gerência do Buffer Pool Armazenamento em SGBDs Convencionais Armazenamento em SGBDs Orientados a Objeto Introdução Etapas
Bancos de Dados IV. Tuning de Bancos de Dados. Rogério Costa
Bancos de Dados IV Tuning de Bancos de Dados Rogério Costa [email protected] 1 Sintonia (Tuning) de Bancos de Dados O que é? Realizar ajustes de forma a obter um melhor tempo de resposta para determinada
Backup. José Antônio da Cunha CEFET-RN
José Antônio da Cunha CEFET-RN Introdução Sendo as informações o bem mais valioso da empresa e estando estas informações armazenadas nos bancos de dados da empresa, é de fundamental importância que tenhamos
Administração de Banco de Dados
Administração de Banco de Dados Aula 8 Prof. Marcos Alexandruk Aula 8 Índices (Indexes) Índices únicos Índices não únicos Índices de chave invertida Índices baseados em funções Índices de bitmap Tabelas
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
O VALOR DO BACKUP NA NUVEM. Fernando Henrique Feitosa
1 O VALOR DO BACKUP NA NUVEM Fernando Henrique Feitosa [email protected] 2 DESCRIÇÃO Esse artigo tem como objetivo principal explanar de forma gerencial qual visão devemos adotar ao escolher
Este tutorial apresenta uma análise para uso adequado e otimizado de seus parâmetros nos processos de ETL, e sua aplicação em situações distintas.
O Pentaho Data Integration ( PDI ) ou Kettle tem um step responsável pela ordenação ou classificação de dados chamado Sort Rows, este step permite ordenar dados através de campos informados em sua lista.
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.
Computadores podem ser úteis em problemas que envolvem: Grande número de dados. Grande número de cálculos. Complexidade. Precisão.
O uso do computador Computadores podem ser úteis em problemas que envolvem: Grande número de dados. Grande número de cálculos. Complexidade. Precisão. Exemplos: Modelos meteorológicos. Cálculo estrutural.
Banco de Dados. Professora: Luciana Faria
Banco de Dados Professora: Luciana Faria Introdução ao linguagem é a SQL (Structured Query Language) Linguagem de Consulta Estruturada Para se utilizar, administrar, e trabalhar com um banco de dados é
Veeam Endpoint Backup FREE
CONSULTORIA INFORMÁTICA DOWNLOAD GRATUITO Veeam Endpoint Backup FREE Visão Global do Produto Veeam Endpoint Backup FREE 1 Veeam Endpoint Backup está preparado para proteger a sua empresa. O Veeam Endpoint
Análise e otimização de queries no MySQL. Jeronimo Fagundes da Silva
Análise e otimização de queries no MySQL Jeronimo Fagundes da Silva Jeronimo Fagundes da Silva Líder de Desenvolvimento de Software para Web na KingHost Bacharel em Ciência da Computação pela UFRGS Trabalha
Banco de Dados. SGBD - Sistema de Gerenciamento de Banco de Dados Parte 2. Prof. Leonardo Vasconcelos
Banco de Dados Parte 2 Prof. Leonardo Vasconcelos - Conceitos e Arquiteturas de SBD Modelos de dados: conjunto de conceitos que podem ser usados para descrever a estrutura de um banco de dados. Permitem
TOP 20 ROTINAS QUE VOCÊ PODE AUTOMATIZAR HOJE!
TOP 20 ROTINAS QUE VOCÊ PODE AUTOMATIZAR HOJE! Erro Zero; Mais barato que um administrador de redes; Faz qualquer tarefa repetitiva e manual; Flexibilidade para mudar processos automatizados dentro do
Formação de DBAs SQL Server 2008
Formação de DBAs SQL Server 2008 Parte 8: Banco de Dados Distribuído Computação Distribuída Um grupo de elementos autônomos de processamento (não necessariamente homogêneos) que estão interconectados por
O Modelo e a Álgebra Relacional
O Modelo e a Álgebra Relacional O Modelo Relacional Modelo de dados, que se baseia no princípio em que todos os dados estão guardados em tabelas Baseado em lógica de predicados e na teoria de conjuntos.
Aula 05. Fundamentos de Hardware e Software. Prof. Dr. Dilermando Piva Jr.
05 Aula 05 Fundamentos de Hardware e Software Prof. Dr. Dilermando Piva Jr. Site Disciplina: http://fundti.blogspot.com.br/ Fundamentos de Hardware Sistemas de Computação Sistemas de Computação Computador
Introdução à Informática
Introdução à Informática Aula 8 http://www.ic.uff.br/~bianca/introinfo/ Aula 8-28/09/2007 1 Ementa Conceitos Básicos de Computação (Hardware, Software e Internet) Softwares Aplicativos Tutorial: Word Tutorial:
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
MATA60 BANCO DE DADOS Aula: Otimização. Prof. Daniela Barreiro Claro
MATA60 BANCO DE DADOS Aula: Otimização Prof. Daniela Barreiro Claro Introdução a Otimização SQL, SQL3 e OQL são linguagens declarativas O SGBD deve processar e otimizar estas consultas antes delas serem
5.1. Fluxo para geração do Roadmap
46 5 VelvetH-DB Os Sistemas Gerenciadores de Banco de Dados (SGBDs), foram criados com o intuito de permitir o armazenamento e manipulação de grandes volumes de dados, fornecendo uma aplicação que garanta,
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
Hardware - Processador
Hardware - Processador O processador (ou CPU) é uma das partes principais do hardware do computador e é responsável pelos cálculos, execução de tarefas e processamento de dados. A velocidade com que o
MySql. Introdução a MySQL. Andréa Garcia Trindade
MySql Introdução a MySQL Andréa Garcia Trindade Introdução O que é Banco de Dados SGBD MYSQL Tipos de Tabelas Tipos de Dados Linguagem SQL Comandos SQL O que é um Banco de Dados? Conjuntos de dados Grupo
Introdução. Gerenciamento de Armazenamento
Introdução Gerenciamento de Armazenamento Conteúdo Neste arquivo de apresentação: Introdução - hierarquia e custos; ; Questões de escalonamento e performance; Preparação Lógica; No próximo arquivo de apresentação:
BD II (SI 587) Técnicas de Recuperação. Josenildo Silva.
BD II (SI 587) Técnicas de Recuperação Josenildo Silva [email protected] Nota Estes slides são baseados nos slides disponibilizados pelos autores ELMASRI e NAVATHE, para o livro Sistemas de Banco de
Administração de Redes em Software Livre Aula 02 Instalando o GNU/Linux (CENTOS Minimal)
Administração de Redes em Software Livre Aula 02 Instalando o GNU/Linux (CENTOS Minimal) Professor: O que precisamos saber antes de iniciar a instalação? 1. Entender a estrutura de diretório do GNU/LINUX;
Administração de Banco de Dados
Administração de Banco de Dados Adriano J. Holanda http://holanda.xyz 28/8/2015 Índices Para os testes com os índices criaremos uma tabela chamada tteste com o comando teste=> CREATE TABLE tteste (id int4);
Gerência de memória III
Gerência de memória III Eduardo Ferreira dos Santos Ciência da Computação Centro Universitário de Brasília UniCEUB Maio, 2016 1 / 45 Sumário 1 Memória Virtual Segmentação Paginação 2 Alocação de páginas
Aula 06. Slots para Memórias
Aula 06 Slots para Memórias Slot para as memórias 2 Slot para as memórias Os soquetes de memória são numerados: 1, 2 e 3. Instale memória primeiro no 1, depois no 2, depois no 3. Normalmente não é permitido
Computação L. Apresentação da Disciplina e Conceitos Básicos de Computadores
Computação L Apresentação da Disciplina e Conceitos Básicos de Computadores Tópicos da Aula Conceitos básicos de computação Componentes de um computador Como os diferentes componentes interagem Representação
Banco de Dados. SGBDs. Professor: Charles Leite
Banco de Dados SGBDs Professor: Charles Leite Sistemas de BD Vimos que um BANCO DE DADOS representa uma coleção de dados com algumas propriedades implícitas Por exemplo, um BD constitui os dados relacionados
Gerência de Memória. Eduardo Ferreira dos Santos. Abril, Ciência da Computação Centro Universitário de Brasília UniCEUB 1 / 45
Gerência de Memória Eduardo Ferreira dos Santos Ciência da Computação Centro Universitário de Brasília UniCEUB Abril, 2016 1 / 45 Sumário 1 Introdução 2 Espaços de endereçamento 3 Realocação estática e
SQL Linguagem de Definição de Dados. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri
SQL Linguagem de Definição de Dados Banco de Dados SQL Structured Query Language Uma das mais importantes linguagens relacionais (se não a mais importante) Exemplos de SGBD que utilizam SQL Oracle Informix
Banco de Dados e Aplicações em Negócios: Introdução.
Banco de Dados e Aplicações em Negócios: Introdução [email protected] Motivação Extenso uso de Banco de Dados (BD) no cotidiano Bancos, serviços, comércio em geral (comércio eletrônico) Web e seus serviços
Em nosso exemplo, o banco de dados XE está trabalhando no modo NOARCHIVELOG, e para verificar isso, basta executar as seguintes tarefas:
RMAN: Backup em NOARCHIVELOG Quando um banco de dados Oracle está no modo NOARCHIVELOG, resumidamente, não há geração de archives, e conseqüentemente todas as alterações realizadas pelas transações não
Roteiro. Noções de Recuperação de Falhas. BCC321 - Banco de Dados I. Ementa. Posicionamento
Roteiro Noções de Recuperação de Falhas Posicionamento Luiz Henrique de Campos Merschmann Departamento de Computação Universidade Federal de Ouro Preto [email protected] www.decom.ufop.br/luiz
Organização de Computadores I
Organização de Computadores I Aula 2 Material: Diego Passos http://www.ic.uff.br/~debora/orgcomp/pdf/parte2.pdf Organização de Computadores I Aula 2 1/29 Tópicos de Computação. de um Sistema de Computação..
Administração de Banco de Dados
Administração de Banco de Dados Aula 6 Prof. Marcos Alexandruk Aula 6 Estruturas lógicas do Oracle: Tabelas tabelas relacionais tabelas temporárias tabelas organizadas por índices tabelas de objetos tabelas
Análise empírica de algoritmos de ordenação
Análise empírica de algoritmos de ordenação Mario E. Matiusso Jr. (11028407) Bacharelado em Ciências da Computação Universidade Federal do ABC (UFABC) Santo André, SP Brasil mario3001[a]ig.com.br Resumo:
BANCO DE DADOS. info 3º ano. Prof. Diemesleno Souza Carvalho [email protected] www.diemesleno.com.br
BANCO DE DADOS info 3º ano Prof. Diemesleno Souza Carvalho [email protected] www.diemesleno.com.br Na última aula estudamos Unidade 4 - Projeto Lógico Normalização; Dicionário de Dados. Arquitetura
Sistemas de arquivos
Todos os programas precisam armazenar e recuperar dados. Os processos não podem armazenar grande quantidade de dados no seu espaço de endereçamento. Quando o processo chega ao final os dados no seu espaço
SISTEMAS DE ARQUIVOS. Uma das funções de um sistema operacional, é organizar as informações nas memórias de um computador ou dispositivo móvel.
1/5 SISTEMAS DE ARQUIVOS Uma das funções de um sistema operacional, é organizar as informações nas memórias de um computador ou dispositivo móvel. Tudo no computador é gerenciado pelo sistema operacional,
Principais componentes de hardware de um computador. Processador; Entrada; Saída; Barramento; Memória.
Aula 02 Principais componentes de hardware de um computador Processador; Entrada; Saída; Barramento; Memória. Hierarquia Memória Memória RAM Do inglês Random Access Memory (Memória de acesso aleatório
Cap. 1 Arquitectura de Sistemas de Bases de Dados
Cap. 1 Arquitectura de Sistemas de Bases de Dados Abel J.P. Gomes Bibliografia usada: T. Connoly e C. Begg. Database Systems: a pratical approach to design,implementation, and management. Addison-Wesley,
SSC510 Arquitetura de Computadores 1ª AULA
SSC510 Arquitetura de Computadores 1ª AULA REVISÃO DE ORGANIZAÇÃO DE COMPUTADORES Arquitetura X Organização Arquitetura - Atributos de um Sistema Computacional como visto pelo programador, isto é a estrutura
Fundamentos da Informática Aula 03 - Sistemas operacionais: Software em segundo plano Exercícios Professor: Danilo Giacobo
Fundamentos da Informática Aula 03 - Sistemas operacionais: Software em segundo plano Exercícios Professor: Danilo Giacobo Múltipla escolha 1. Em que consiste um sistema operacional: a. Um conjunto de
O que é um sistema de arquivos?
Sistemas de arquivos FAT16 e FAT32 Introdução FAT16 e FAT 32 são nomes de sistemas de arquivos (file systems) utilizados por padrão em versões antigas do sistema operacional Windows (como o Windows 98,
Sistemas Operacionais Aula 16 Memória Virtual
Sistemas Operacionais Aula 16 Memória Virtual Ivan da Silva Sendin [email protected] FACOM - Universidade Federal de Uberlândia Sistemas OperacionaisAula 16Memória Virtual p. 1 Memória Virtual - Definição
DDL DML DCL DTL Tipos Numéricos: INT FLOAT DOUBLE Tipos String: CHAR VARCHAR BINARY BLOB TEXT Tipos Data e Hora: DATE TIME TIMESTAMP YEAR
SQL Structured Query Language, ou Linguagem de Consulta Estruturada, foi desenvolvida pela IBM nos anos 70 para demonstrar a viabilidade do modelo relacional para bancos de dados. No final dos anos 80
LISTA DE EXERCÍCIOS #2 (BASEADO NO ENADE COMPUTAÇÃO)
LISTA DE EXERCÍCIOS #2 (BASEADO NO ENADE 2005- COMPUTAÇÃO) 1) Apesar de todo o desenvolvimento, a construção de computadores e processadores continua, basicamente, seguindo a arquitetura clássica de von
Blob fields in MySQL Databases
Blob fields in MySQL Databases Publicado em: 08/05/2003 Há algum tempo trabalho com bases de dados padrão SQL voltados principalmente para o desevolvimento de aplicações de Internet. Estes dias um colega
Sistemas de Entrada e Saída
Sistemas de Entrada e Saída Eduardo Ferreira dos Santos Ciência da Computação Centro Universitário de Brasília UniCEUB Maio, 2016 1 / 33 Sumário 1 Dispositivos de E/S 2 Interrupções 3 Software de E/S 2
