Administração PostgreSQL com Alta Performance

Sobre o curso

Este é um curso completo de administração PostgreSQL que engloba alta performance, disponibilidade e escalabilidade.

Após este curso o aluno estará apto a:

  • Instalar o PostgreSQL nas várias plataformas suportadas;
  • Administrar usuários e bancos de dados;
  • Administrar usando linha de comando e ferramenta gráfica;
  • Fazer cargas de dados;
  • Conectar uma aplicação real;
  • Entender o funcionamento interno do PostgreSQL;
  • Fazer backups com várias estratégias;
  • Ajustar o desempenho para vários modelos transacionais;
  • Otimizar o sistema operacional e os discos;
  • Tomar decisões para comprar hardware;
  • Replicar e criar servidores escravos;
  • Fazer benchmarks;
  • Monitorar o PostgreSQL;
  • Resolver problemas.

Conteúdo Programático

Histórico do PostgreSQL

  • Linha do tempo
  • O PostgreSQL hoje
  • Características: ACID, SQL Ansi , Licença, Empresas
  • Atualização e versionamento

Instalação do PostgreSQL

  • Usuário postgres
  • Script de pós-instalação no Debian e initdb
  • Iniciando o PostgreSQL
  • Os bancos de dados postgres e template1

Estrutura física e logica do PostgreSQL

  • Tablespaces
  • Schemas
  • Databases
  • Índices

Autenticação e gerenciamento de usuários

  • Usuários e papéis
  • Regras e privilégios
  • Arquivo de autenticação pg_hba.conf

Parando o servidor corretamente

  • Smart
  • Fast
  • Immediate
  • Uso do kill

Funcionamento interno do PostgreSQL

  • Componentes
  • Tamanho de página
  • WAL e shared buffers
  • WAL
  • fsync
  • synchrounous_commit
  • wal_sync_method
  • full_page_writes
  • wal_buffers
  • wal_writer_delay
  • commit_delay
  • commit_siblings
  • wal_level
  • checkpoint_segments
  • checkpoint_timeout
  • checkpoint_completion_target
  • checkpoint_warning
  • shared_buffers
  • Background Writer
  • bgwriter_delay
  • bgwriter_lru_maxpages
  • bgwriter_lru_multiplier
  • effective_io_concurrency
  • OID – Object Identifier
  • Armazenamento físico
  • Caminho das consultas
  • Modelo de controle de transações
  • deadlock_timeout
  • log_lock_waits
  • Vacuum;
  • Vacuum
  • vacuum_cost_delay
  • vacuum_cost_page_hit
  • vacuum_cost_page_miss
  • vacuum_cost_page_dirty
  • vacuum_cost_limit
  • vacuum_freeze_table_age
  • vacuum_freeze_min_age
  • Autovacuum
  • log_autovacuum_min_duration
  • autovacuum_max_workers
  • maintenance_work_mem
  • autovacuum_naptime
  • autovacuum_vacuum_threshold
  • autovacuum_analyze_threshold
  • autovacuum_vacuum_scale_factor
  • autovacuum_analyze_scale_factor
  • autovacuum_freeze_max_age
  • autovacuum_vacuum_cost_delay
  • autovacuum_vacuum_cost_limit
  • Vacuum Full

Performance Tuning – Otimização do lado do servidor

  • Recursos de hardware
  • Discos
  • Memoria
  • CPU
  • S.O.
  • Memoria compartilhada
  • Semáforos
  • Memory Overcommit
  • Sistema de arquivos
  • Tipos
  • Journaling
  • Write Barriers
  • Separação do pg_xlog
  • Uso de Pooler de conexões
  • max_connections
  • superuser_reserved_connections
  • pgbouncer
  • pgpool
  • Particionamento de tabelas
  • OLTP :
  • shared_buffers
  • checkpoints
  • log_checkpoints
  • commit_siblings
  • background_writer
  • OLAP
  • work_mem
  • log_temp_files
  • shared_buffers
  • effective_cache_size
  • Monitoramento pontual
  • top
  • ps
  • vmstat
  • iostat
  • pg_top
  • visões de sistema
  • Monitoramento continuo
  • sar
  • Benchmarking com pgbench
  • Consultas lentas
  • Tuning de log
  • log_min_duration_statement
  • log_line_prefix
  • pgbadger
  • Plano de execução
  • Uso de índices
  • Quando utilizar
  • Bloat indexes

Arquivo de configuração “postgresql.conf”

  • Utilizando a view pg_settings
  • Parâmetros:
  • Conexão
  • listen_address
  • port
  • tcp_keepalives_idle
  • tcp_keepalives_interval
  • tcp_keepalives_count
  • ssl
  • db_user_namespace
  • Uso de recursos
  • temp_buffers
  • Custos do planejador
  • seq_page_cost
  • random_page_cost
  • cpu_tuple_cost
  • cpu_index_tuple_cost
  • cpu_operator_cost
  • Log
  • log_destination
  • logging_collector
  • log_directory
  • log_filename
  • log_rotation_size
  • log_truncate_on_rotation
  • log_min_messages
  • log_error_verbosity
  • log_min_error_statment
  • log_connections
  • log_statement
  • Estatísticas
  • stats_temp_directory
  • Outros
  • statement_timeout
  • lc_messages

Backup e recuperação

  • Backup pontual
  • pg_dump
  • pg_restore
  • Backup Point-in-Time Recovery
  • archive_mode
  • archive_command
  • archive_timeout
  • recovery.conf

Replicação nativa

  • Hot-standby com streaming replication
  • Master
  • wal_level
  • max_wal_senders
  • wal_keep_segments
  • replication_timeout
  • Slave
  • hot_standby
  • max_standby_archive_delay
  • max_standby_streaming_delay
  • wal_receiver_status_interval
  • hot_standby_feedback
  • recovery.conf
  • Replicação síncrona e assíncrona
  • synchronous_standby_names
  • Monitorando estado da replicação
  • Promovendo um nó
  • Outras ferramentas de replicação

APÊNDICE:

  • Ferramenta gráfica pgAdminIII
  • Solução de problemas

Diferenciais deste Curso

  • Único curso PostgreSQL do mercado que une a administração básica com tópicos avançados como tuning de performance e replicação.
  • A 4Linux é responsável pela infraestrutura de dados de empresas grandes como instituições bancárias e toda a experiência do instrutor será utilizada neste curso;
  • O curso utiliza sempre a última versão estável do PostgreSQL, a atualização do curso é contínua;
  • A 4Linux possui instrutores que participam ativamente da comunidade nacional e internacional de PostgreSQL, tendo sido inclusive premiada por ela por sua colaboração e participação;
  • A 4Linux está presente todos os anos em eventos PostgreSQL com palestras e patrocínio;
  • A 4Linux é parceira da EnterpriseDB, empresa norte-americana que contrata desenvolvedores da comunidade PostgreSQL que contribuem com código. Instrutores da 4Linux são certificados pela EnterpriseDB;
  • A 4Linux desenvolve seus treinamentos de banco de dados baseados na documentação oficial e em conhecimentos adquiridos pelos instrutores durante a consultoria aos clientes;
  • O curso utiliza um banco de dados de uma aplicação real da metodologia IT Experience;
  • O aluno utilizará uma máquina virtual durante o curso, que poderá ser copiada e levada para casa em mídia própria do aluno.

Pré-requisitos

  • Para acompanhar este curso, o aluno deve saber utilizar computadores, inicializar uma máquina virtual com VirtualBox. Recomenda-se saber o básico de administração de máquinas Linux, mas não é essencial.

Carga Horária

Curso Presencial: 40H

  • Diurno: 1 semana de segunda a sexta-feira, 8 horas diárias.
  • Noturno: 2 semanas de segunda a sexta-feira, 4 horas diárias.

Curso Online: 40H

  • Curso EAD ágil
  • 08 horas de aulas online (ao vivo) com o professor através de videoconferência.
  • 32 horas de aulas offline (mínimo recomendado pela 4Linux). Estas horas são alocadas e controladas pelo aluno que deverá acessar o conteúdo digital: vídeo aulas com hands-on e fazer os laboratórios, exercícios e desafios.

Próximas Turmas

Início Término Horário
22/11/2017 13/12/2017 EAD - 12 videoaulas práticas intercaladas com 4 aulas online ao vivo em vídeoconferência às Quartas-feiras das 20h às 22h
12/03/2018 16/03/2018 Diurno - Segunda a Sexta das 08:30h às 17:30h
26/03/2018 09/04/2018 Noturno - Segunda à Sexta das 18:30h às 22:30h
18/04/2018 09/05/2018 EAD - 12 videoaulas práticas intercaladas com 4 aulas online ao vivo em vídeoconferência às Quartas-feiras das 20h às 22h

Temos outras turmas, para mais informações entre em contato com um de nossos vendedores.

Compartilhe esta página

Receba Datas e Valores

Quem irá pagar o seu curso?
Modalidades
Preferência de horário
CAPTCHA
This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.
7 + 1 =
Resolva este problema matemático simples e digite o resultado. Por exemplo para 1+3, digite 4.