Descrição das Palestras
Tutoriais
Tutorial: PL/pgSQL Para Diversão e Lucro
- Palestrante: Roberto Mello
- Resumo:
Um tutorial de PL/pgSQL, passando do básico da linguagem até casos comuns de uso.
- Descrição:
PL/pgSQL é uma das principais ferramentas do PostgreSQL, e neste tutorial abordarei -- além do básico -- casos comuns como o retorno de múltiplas tuplas, parâmetros de entrada e saída, gatilhos, etc.
- Mini Currículo:
Roberto Mello é mestre em Ciência da Computação pela Utah State University. Ele trabalha com o PostgreSQL desde 1999 e foi reconhecido como contribuidor do projeto. Roberto já trabalhou como DBA PostgreSQL em ambientes de produção crítico.
Tutorial: O Elefante arborícola: consultas recursivas com expressões comuns de tabelas
- Palestrante: Leandro Guimarães Faria Corcete DUTRA
- Resumo:
Apresentar a maneira padronizada de executar consultas não apenas especificamente hierárquicas, mas recursivas de modo geral, usando expressões comuns de tabelas (CTEs ? Common Table Expressions), parte do padrão ISO SQL que substitui, com vantagens, soluções proprietárias, e mais limitadas, propostas por outros SGBDs e até já
implementadas em PostgreSQL.
- Descrição:
Muitos já sofreram com o problema de representação de hierarquias em SQL, o que já engendrou tanto soluções práticas, mas limitadas, como o CONNECT BY constante do contrib, quanto discussões infindas sobre possíveis representações de hierarquias como o modelo de conjuntos aninhados de Celko. O padrão ISO SQL propôs a solução das expressões comuns de tabelas (CTEs ? Common Table Expressions). Embora um desafio para o aprendizado, as ECTs são muito mais poderosas que o modelo de conjuntos aninhados ou o CONNECT BY, cobrindo muito mais casos de uso ? por exemplo, grafos ?, sendo também mais portáveis e de melhor desempenho.
A idéia é mostrar alguns exemplos de grafos, incluindo pelo menos uma hierarquia; como seria a implementação com CONNECT BY e conjuntos aninhados; e a solução padrão com ECTs.
- Mini Currículo:
Leandro DUTRA é Administrador de (Bases de) Dados com 15 anos em Informática,
sendo 11 anos com SGBDs SQL. Trabalhou em empresas e projetos nacionais e
estrangeiros de todos portes no Brasil e no Exterior, em organizações públicas
e privadas, com e sem fins lucrativos, é coordenador de traduções do projeto
GNU, contribuinte à lista usuários PostgreSQL Brasil e participante da
comunidade, inclusive como palestrante. Também conhecido como o chato da
pgbr-geral.
Tutorial:Tudo o que você queria saber sobre o uso de discos em servidores PostgreSQL mas tinha vergonha de perguntar
- Palestrante: Fábio Telles Rodriguez
- Resumo:
Os discos sempre foram um elemento central na vida dos bancos de
dados. Na verdade a história dos bancos de dados tem muito haver com a
história dos discos. Serão abordados diversos aspectos do
armazenamento de dados como os discos, controladores, sistemas de
arquivos, RAIDs, particionamento e TABLESPACES sob a ótica de dois
elementos fundamentais: a segurança e o desempenho.
- Descrição:
- Tipos de RAID
- Interfaces (PATA, SATA, SCSI, SAS, FBC);
- Características físicas de discos;
- Controladoras;
- Storages;
- Mitos, verdades e especulações sobre SSD;
- Sistemas de arquivo;
- Particionamento de discos;
- Usando Tablespaces de forma inteligente;
- Particionamentos de tabelas;
- Casos práticos
- Mini Currículo:
Fábio Telles é DBA há 7 anos, já foi colaborador no CDI-SP, PSL-ABCD, Debian Zine e atuamente contribui com a Comunidade Brasileira de PostgreSQL.
Já foi palestrante em diversos eventos como FISL, CONISLI e Maratona HowTo Database. Possui artigos publicados e vários locais e se dedica ao seu blog, o "SAVEPOINT" em http://www.midstorm.org/~telles
Tutorial: Particionando os dados e balanceando a carga com o PLPROXY
- Palestrante: João Cosme de Oliveira Júnior
- Descrição:
O Skype tem desenvolvido várias ferramentas para criação de cluster de banco de dados Postgresql. A base de todas estas ferramentas está o plproxy. A melhor maneira de descrever as características do plproxy é que ele poderia ser um "dblink anabolizado". Essa palestra tem como objetivo explicar a instalação do plproxy, fazer uma chamada remota e um banco de dados e configurar um cluster de banco de dados com particionamento horizontal.
- Mini Currículo:
João Cosme é Técnico em Análise de Sistemas e Projeto de Redes pelo CEFET-AL. Bacharel em Ciências da Computação pela Universidade Federal de Alagoas. Pós-graduando em Software Livre. Especialista em Postgresql, presta consultoria e ministra treinamentos. Membro da comunidade brasileira Postgresql. Atualmente trabalha como Analista do SERPRO.
Hacker Talks
Hacker Talk:Proposta de índices hipotéticos no PostgreSQL 8
- Palestrante: Sérgio Lifschitz
- Resumo:
A escolha e materialização de índices são atividades comumente realizadas por administradores de bancos de dados (DBAs) para acelerar o processamento de sistemas gerenciadores de bancos de dados (SGBDs). Devido à complexidade da tarefa de seleção de índices, faz-se necessário a utilização de uma abordagem que auxilie o DBA na escolha correta e significativa dos índices que possam contribuir para o desempenho do SGBD. Este trabalho propõe uma extensão ao SGBD PostgreSQL, permitindo que os DBAs possam simular configurações hipotéticas, sem comprometer o desempenho, ou seja, sem manipular índices de forma materializada. Estas simulações envolvem a criação, remoção e geração do plano de execução de consultas utilizando índices hipotéticos. Esta opção permite estudos de "what-if" na base de dados, ferramenta bastante útil para DBAs. Cabe observar que vários outros SGBDs de mercado já oferecem estruturas hipotéticas ou virtuais.
- Descrição:
A extensão proposta ao SGBD consiste basicamente em registrar índices hipotéticos no catálogo do banco de dados e na alteração do otimizador de consultas para reconhecer as configurações hipotéticas registradas. Esta implementação é restrita aos índices completos organizados como árvores B+.
Os comandos criados foram:
- create hypothetical index ? Registrar os índices hipotéticos no catálogo do SGBD.
- drop hypothetical index ? Remover os índices hipotéticos do catálogo do SGBD.
- explain hypothetical ? Gerar planos de execução e custos de consultas considerando os índices hipotéticos definidos. Assim, é possível executar comandos de acordo com as configurações reais e também simular quais seriam as escolhas do otimizador caso as configurações hipotéticas fossem utilizadas.
Para a implementação destes comandos, foi necessário estender o catálogo do SGBD para que ele conseguisse diferenciar os índices hipotéticos dos reais; além disso, o ajuste de informações estatísticas para índices hipotéticos no PostgreSQL exigiu a análise de quatro fatores: seletividade, correlação, número de tuplas e número de páginas de um índice. Os parâmetros de seletividade e de correlação são calculados no sistema com base em informações sobre a tabela e suas colunas, não sendo necessário fazer ajustes para calcular estes fatores para índices hipotéticos. Já para o número de tuplas e de páginas foi assumido que serão definidos com os mesmos valores de tuplas e de páginas da tabela sobre a qual o índice hipotético está sendo definido. No caso do número de tuplas, esta suposição nos leva a uma estimativa exata da quantidade de linhas que realmente existiria no índice (uma vez que os índices completos no PostgreSQL são também densos). Para o número de páginas, normalmente estaremos superestimando a quantidade de páginas real do índice, o que permite que sejamos pessimistas nas estimativas realizadas com índices hipotéticos.
Em relação ao código do SGBD, as principais alterações realizadas foram: (i) Permitir a criação e remoção de índices hipotéticos no catálogo; (ii) Alterar o otimizador para permitir que planos de execução sejam gerados tanto considerando quanto ignorando a existência de índices hipotéticos; e (iii) Modificar outros componentes do SGBD que devem ignorar a presença de índices hipotéticos.
Para a primeira alteração, foi incluído um novo atributo à relação que registra índices no catálogo, assim como às estruturas de dados correspondentes, para diferenciar índices reais de hipotéticos. Além disso, o analisador sintático também precisou ser alterado para que reconhecesse os comandos create hypothetical index e drop hypothetical index. Por fim, foram implementadas rotinas para criar ou remover índices no catálogo sem invocar os procedimentos de construção física dos mesmos. Para a criação e remoção de índices hipotéticos, identificou-se a necessidade de obter bloqueios menos restritivos sobre a tabela base do que os bloqueios obtidos para as operações sobre índices reais. Durante as operações sobre índices hipotéticos, somente são impedidas outras operações da linguagem de definição de dados sobre a tabela base, sendo possível processar consultas e atualizações normalmente.
Para fazer com que o otimizador pudesse considerar e ignorar os índices hipotéticos registrados no catálogo, observou-se que o mesmo possui rotinas específicas para consulta ao catálogo e criação de estruturas de dados com informações estatísticas sobre tabelas e índices. Dessa forma, foi incluído um modo de operação para que o otimizador pudesse decidir se queria ou não obter informações sobre índices hipotéticos; o comando explain hypothetical também foi adicionado ao analisador sintático. Quando este comando é invocado, utiliza-se o otimizador no modo que reconhece a existência de estruturas hipotéticas. Para os demais comandos, o otimizador opera como se as estruturas hipotéticas não estivessem presentes no catálogo.
Por fim, foram realizadas modificações nos outros componentes do SGBD que realizam operações sobre índices reais para que os índices hipotéticos fossem ignorados, tal como o ?vacuum?.
Um fator importante considerado na implementação é a transparência para o usuário do SGBD, que poderá trabalhar como se a funcionalidade de índices hipotéticos não existisse. Assim, não há impacto sobre as aplicações já escritas para o SGBD.
- Mini Currículo:
Engenheiro Elétrico pela Pontifícia Universidade Católica do Rio de Janeiro (PUC-Rio, 1986), mestre em Engenharia Elétrica - Sistemas, pela PUC-Rio (1990) e doutor em Informática - Bancos de Dados - pela École Nationale Supérieure des Télécommunications, ENST Paris, França (1994). Atualmente é professor associado (adjunto S14) da PUC-Rio alocado no Departamento de Informática. Tem atualmente duas linhas de pesquisa principais dentro da área de bancos de dados: (1) computação autônoma e sistemas contemplando auto-sintonia (self-tuning) e (2) ferramentas e sistemas de gerência de dados para aplicações em bioinformática. Mais detalhes em http://lattes.cnpq.br/8164403687403639
Hacker Talk: Desenvolvendo sua extensão em C
- Palestrante: Euler Taveira de Oliveira
- Resumo:
Este palestra é um guia para aqueles que querem desenvolver uma extensão em C
para PostgreSQL, criando novas funcionalidades tais como novos tipos, novos
operadores e utilitários de análise.
Apresentaremos comandos, API básica, compilação e instalação. Para isso,
será utilizado como exemplo o pg_similarity que é um conjunto de funções e
operadores para casamento de string similares. Ele está disponível em [1] sob
licença BSD.
[1] http://pgfoundry.org/projects/pgsimilarity/
- Mini-Currículo:
Euler Taveira de Oliveira, membro da equipe de desenvolvimento do PostgreSQL,
estudante de mestrado na Universidade Federal do Rio Grande do Sul (UFRGS) na
área de banco de dados. Atua em projetos de integração e desenvolvimento de
sistemas de informação utilizando software livre.
Hacker Talk: How to Get Your PostgreSQL Patch Accepted
- Palestrante: Bruce Momjian
- Resumo:
Developing a patch for the Postgres project is a fairly complex process, and success is not guaranteed. This talk will suggest many ways to improve your chances of submitting a successful patch to the PostgreSQL community.
- Mini Currículo:
Bruce Momjian is a co-founder of the PostgreSQL Global Development Group, and has worked on PostgreSQL since 1996. He is the author of PostgreSQL: Introduction and Concepts, published by Addison-Wesley. Bruce is employed by EnterpriseDB. Previously, he was employed by SRA Japan and Great Bridge LLC, both PostgreSQL support companies. He has spoken at many international open-source conferences. Prior to his involvement with PostgreSQL, Bruce worked as a consultant, developing custom database applications for some of the world's largest law firms. Prior to this, he was a high school computer science teacher and holds a Masters in Education.
Hacker Talk
- Palestrante: Magnus Hagander
- Resumo:
It's about "Using git to help you develop a postgresql patch". It's sort of a crossover between "how to use git" and "how to develop a postgresql patch", and how those two can work together.
- Mini Currículo:
Magnus Hagander is a developer and a committer in the PostgreSQL Global Development Group.
Magnus developed and maintains the Windows port as part of an international team within the PostgreSQL Global Development group. He also works on other parts of the PostgreSQL backend, most recently authentication, SSL and Kerberos-related features.
He contributes to pgAdmin, the postgresql.org website and related infrastructure. He's been a PostgreSQL user since version 6.3. He currently serves as President of the Board for PostgreSQL Europe.
During paid daytime, he is a PostgreSQL and open source software consultant, and provides support and training through Redpill Linpro in Stockholm, Sweden.
Palestras Avançadas
Palestra: PostgreSQL em ambiente financeiro de alta criticidade
- Palestrante: Flavio Henrique Araque Gurgel
- Resumo:
PostgreSQL no ambiente Multicanal da Caixa - o dia-a-dia do suporte, desafios do ambiente, soluções adotadas, alta disponibilidade e alto desempenho num dos cases mais importantes do mundo de implementação de soluções em software livre.
- Descrição:
- Apresentação do ambiente Multicanal e a inserção de software livre e do PostgreSQL nesse ambiente.
- Desafios diários na administração do banco de dados.
- Desafios da manutenção do banco de dados.
- Soluções de alta disponibilidade testadas e utilizadas com o PostgreSQL nesse ambiente.
- Necessidades atuais e futuras.
- Objetivos traçados e alcançados.
- Mini Currículo:
Engenheiro Eletricista pela Universidade Federal do Paraná, entusiasta do Software Livre e Linux desde 1999. Já atuou na migração de escritórios para o Linux e no reaproveitamento de hardware através do LTSP - Linux Terminal Server Project. Especialista em bancos de dados desde 1995, trabalha com PostgreSQL e MySQL, presta consultoria, suporte e treinamento aos clientes da 4Linux. Também desenvolve aplicações em PHP e conhece Assembler de alguns microprocessadores.
Palestra Avançada: pg_similarity: buscas aproximadas
Palestrante: Euler Taveira de Oliveira
- Resumo:
Recentemente, há um interesse considerável em consultas aproximadas na comunidade de pesquisa. Consultas aproximadas são operações fundamentais em muitas áreas, tais como integração e limpeza de dados, bioinformática e reconhecimento de padrões. pg_similarity é uma ferramenta que disponibiliza métodos amigáveis para consultas aproximadas.
pg_similarity é um conjunto de funções e operadores para casamento de string similares. As seguintes funções estão disponíveis: Block Distance, Cosine, Dice, Euclidean, Hamming, Jaccard, Jaro, Jaro-Winkler, Monge-Elkan, Needleman-Wunsch, q-Gram, Smith-Waterman, Smith-Waterman-Gotoh e Soundex. Um conjunto de funções auxiliares está disponível também. Elas permitem um controle flexível sobre limites, normalização e tokenizadores de cada função.
Ele está disponível em [1] sob a licença BSD.
[1] http://pgfoundry.org/projects/pgsimilarity/
- Mini-Currículo:
Euler Taveira de Oliveira, membro da equipe de desenvolvimento do PostgreSQL,
estudante de mestrado na Universidade Federal do Rio Grande do Sul (UFRGS) na
área de banco de dados. Atua em projetos de integração e desenvolvimento de
sistemas de informação utilizando software livre.
Palestra Avançada: Análise Espacial com PostGIS
- Palestrante: Luis Fernando Bueno
- Resumo:
Nesta palestra apresentaremos ténicas de Análise Espaciais de dados, aplicadas diretamente sobre os dados espaciais armazenados no banco PostgreSQL. Serão demonstrados exemplos de diversas funções suportadas pelo PostGIS, além de softwares para visualização dos dados e resultado de consultas espaciais.
- Descrição:
Análise Espacial refere-se ao processo de procurar por padrões e associações em mapas, úteis para caracterizar e entender fenômenos espaciais. Em diversas áreas do conhecimento como saúde, meio ambiente, planejamento urbano e regional, marketing, dentre outras aplicações do Geoprocessamento, destaca-se o uso de técnicas de análise espacial para a resolução de problemas. Com PostGIS é possível aplicar técnicas de análise espacial diretamente nos dados armazenados no PostgreSQL. O PostGIS é uma extensão para o PostgreSQL que permite armazenar objetos espaciais no banco de dados. A utilidade do PostgreSQL com PostGIS pode ir além do simples armazenamento de dados. PostGIS inclui suporte para indexação espacial R-Tree e GiST e funções para processamento e análise de dados espaciais. A extensão PostGIS segue padrões especificados pelo consórcio OpenGIS e permite armazenar tipos variados de dados espaciais como ponto, linha, polígono, multipolígono, multilinha e coleções de geometrias. A conformidade com padrões OGC torna esta solução extremamente flexível e interoperável. Exemplos práticos do uso de diversas funções disponíveis na versão atual do PostGIS serão demonstradas durante a palestra. Os bancos espaciais armazenados no PostgreSQL e PostGIS atualmente podem ser acessados por um grande número de Sistemas de Informação Geográfica, bibliotecas para geoprocessamento e outros softwares da área. Nesta palestra apresentaremos também algumas destas ferramentas para o acesso e visualização dos dados e resultados das consultas espaciais.
- Mini Currículo:
Mestre em Engenharia de Computação pela UERJ. É professor do ILES/ULBRA e Analista Gerencial no Sistema de Proteção da Amazônia - SIPAM. Tem experiência na área de Ciência da Computação, com ênfase em Sistemas de Informação, atuando principalmente nos seguintes temas: geoprocessamento, banco de dados espaciais e tecnologia da informação aplicada a sistemas empresariais.
Mesa Redonda
Mesa redonda: Adoção de PostgreSQL pelo Governo Federal Brasileiro
- Coordenador da mesa:Cladio C. Filho - Dataprev
- Resumo:
Dentro de qualquer sistema corporativo existe a parte da aplicação e o sistema de gerenciamento de banco de dados (SGBD), e no desenvolvimento de um sistema a escolha do SGBD é fundamental por impactar diretamente em questões como acessos concorrentes, manipulação dos dados, escalabilidade, alta disponibilidade, entre outros pontos importantes.
Atualmente, o PostgreSQL está presente no grupo de SGBDs de grande porte, equiparáveis às soluções comerciais mais usadas, com o valor agregado de ser de código aberto. O PostgreSQL é uma opção tecnologicamente viável, economicamente preferível e socialmente sustentável, em concordância com as especificações do e-PING e aderência a Instrução Normativa 04 do Governo Federal
Assim, a Dataprev, em sintonia com estas diretrizes, trás para discussão a adoção do PostgreSQL dentro da Instituição, bem como em outras entidades como MEC, Caixa, Serpro, Banco do Brasil, Itaipu e Celepar, apontando problemas, estratégias e casos de sucesso na adoção deste SGBD
Palestras Normais
Palestra: PostgreSQL 8.4: Ele veio e o que tem de bom?
- Palestrante: Fernando Ike de Oliveira
- Resumo:
Após um longo ciclo de desenvolvimento está saindo mais uma nova versão do PostgreSQL, a 8.4. O objetivo dessa palestra é mostrar as principais novidades desta nova versão com exemplo práticos dessas novas funcionalidades.
- Descrição:
Após um longo ciclo de desenvolvimento está saindo mais uma nova versão do PostgreSQL, a 8.4. A vinda da 8.4 era de grande expectativa de novas funcionalidades. Nesta apresentação, o objetivo é de mostrar o que ocorreu no ciclo de desenvolvimento, as novas funcionalidades (um pouco mais de 200), mostrando exemplos práticos as principais novidades.
Alta disponibilidade com HadoopDB
- Palestrante: Edson Ie
- Descrição:
Com o crescimento da necessidade de trabalhar com grandes quantidades de informaçõess sendo acessadas constantemente, é preciso desenvolver tecnologias voltadas para melhoria do ambiente de banco de dados. HadoopDB pode trabalhar com tolerância a falha em grandes estruturas de dados paralelos, permitindo alta disponibilidade das informações. Além disso, executa análises complexas quase tão rapidamente quanto bancos de dados paralelos comerciais.
Palestra: Introdução ao Npgsql - .Net Data Provider para Postgresql
- Palestrante: Francisco Xavier de Figueiredo Jr.
- Resumo:
Nessa palestra será mostrado o que é o Npgsql, a arquitetura do Npgsql, como o desenvolvedor pode fazer para acessar a base de dados e como é fácil ter o seu programa executando em várias plataformas graças ao .Net e à implementação independente de bibliotecas externas do Npgsql.
- Descrição:
O Npgsql é um .Net Data Provider para postgresql. Ele permite que as aplicações feitas em .Net possam acessar o banco de dados Postgresql. Uma das principais características do Npgsql é que ele é feito 100% em c# o que faz com que ele não dependa de bibliotecas externas para conectar ao banco. Isso trás uma série de vantagens como a facilidade
de instalação e configuração para uso.
Na palestra será explicado o que é o Npgsql, a sua arquitetura e como
utilizá-lo. Serão demosntrados alguns exemplos de aplicações em várias
plataformas.
Ao fim, serão mostrados os planos futuros para o projeto como a idéia
de criar uma versão para dispositivos móveis baseada no Compact
Framework e também a adição do suporte ao VS.Net para facilitar a
utilização do Npgsql de dentro do VS.Net.
- Mini Currículo:
Formado em Ciência da Computação pela Universidade de Brasília (UnB), tem utilizado .Net desde 2002.
Fundador do projeto Npgsql, trabalha como um dos seus principais desenvolvedores juntamente com o amigo Josh Cooley. Também participa do projeto Mono (Implementação .Net OpenSource) como contribuidor.
Atualmente trabalha como administrador de servidores SQLServer além de corrigir os bugs e implementar novas funcionalidades do Npgsql nas horas vagas.
Quando não está trabalhando no Npgsql está jogando video game com os amigos ou andando de bicicleta no parque da cidade Sarah Kubitschek.
Blog: http://fxjr.blogspot.com
Palestra: Introducing PyReplica: a simple and customizable replication solution
- Palestrantes: Mariano Alejandro Reingart e Emanuel Calvo Franco
- Resumo:
Overview of PyReplica and main features:
- Python (PlPython) based, customizable KISS code
- Master/Slave and limited Multimaster support
- Two-Phase commit for psycopg2
- Email Notifications
- Conditional replication
- Async/sync implementations
Case studies:
- Backup and load balancing: dns mirroring
- HA multimaster setup
- Remote servers, conditional replication (POS)
- Syncronic replication for python
http://pgfoundry.org/projects/pyreplica/
- Descrição:
PyReplica is a simple Python-based PostgreSQL master-slave/multimaster synchronous/asynchronous replicator, using a plpython trigger, signals, sequences, two-phase commits and a python client script (influenced by slony & londiste, but much more simple and easy).
Outlook:
1. Introduction. Basic replication concepts (optional)
2. Motivation and goals: simple and customizable code, low resource consumption, survive unreliable networks, filter or transform data, zero administration, multiplatform
3. Alternatives: PgPool, Slony, CyberCluster (optional)
4. Features: asyncronic/syncronic, master/slave and limited multimaster, conditional replication, conflict detection, email notification, connection keepalive, protected with 2PC, direct backend connection, no external tools
5. Features missing: no ddl replication (manually replication of ddl possible), no lo support (but bytea is working!), syncronic mode only for python apps, no automatic conflict resolution
6. Use Cases: Master/Slave (backup, load balancing, datawarehouse), Multimaster (high availability, remote servers, "mobile" servers)
7. Internal design: python powered, < 500 lines, aprox 1/8 slony's C trigger size, no compilation needed, automated unit tests
8. Structure: py_log_replica (plpythonu trigger), pyreplica.py and daemon.py (client)
9. py_log_replica (replication trigger): reassembles and records sql DML into replica_log table, checks conditions, notifies daemons
10. pyreplica.py (replication daemon): listen signals, replays replica_log sql instructions, manage transactions, threads, config, logs, and emails.
11. Installation: dependencies (debian and windows), database setup.
12. Configuration File: dsn0 and dsn1 (master and slave connection string), debugging and notification settings, email parameters (server address, username & password, email subjects).
13. Conditional Replication: setting up expressions on py_log_filter table. examples.
14. Performance: basic speed comparison between no trigger, c trigger (slony), plgpsql, plypthonu (timings for 100k raw inserts)
15. Pending issues: avoid or resolve conflicts, enhance installation procedure, better windows support, lock-free mode using txid_snapshot (8.3+) for
16. PyReplica-Admin (in testing phase): visual administration tool (thanks yenier from cuba)
17. Case study: DNS mirroring, master/slave setup
18. Case study: Multimaster Setup
19. Case study: Point-Of-Sales (POS): remote servers conditional replication
20. Alerce (in developing phase): syncronic master/slave solution for python dbapi compliant applications, similar to Sequoia JDBC approach.
- Mini Currículo:
Mariano Alejandro Reingart: Analyst-Programmer. Teacher. Member of Python Argentina and PostgreSQL Argentina users groups. Creator of projects like PyReplica and PyAfip (free-software). +10 years developing business systems. http://www.linkedin.com/in/reingart
Emanuel Calvo Franco: Using free software since 1999, working -specifically with open Source- databases for the past 2 years. One of the first members of Arpug. Giving technical talks on Postgresql in several platforms and places. http://www.linkedin.com/in/emanuelcalvofranco
Palestra: Monitoramento do PostgreSQL com collectd
- Palestrante: Diogo Biazus
- Resumo:
Veja como coletar e agregar estatísticas dos servidores de banco de dados usando o collectd, uma ferramenta Open Source disponível para diversas plataformas Unix-like.
- Descrição:
A palestra apresenta a ferramenta collectd. Um serviço de coleta e monitoramento de dados para servidores.
Ele pode ser utilizado com um plugin para coletar dados do PostgreSQL além de obter informações do sistema operaciuonal relevantes para a performance do banco.
Essa ferramenta também pode agregar informações de diversos servidores e enviar notificações para o administrador, além de disponibilizar os dados no formado RRD.
Além de mostrar a ferramenta e suas funcionalidades a palestra discuti algumas métricas importantes para monitorar servidores rodando o PostgreSQL.
- Mini Currículo:
Diogo Biazus é formado em ciência da computação pela UFRGS, e trabalha com consultoria e desenvolvimento usando o PostgreSQL. Também colabora com o grupo de usuários nacional
Palestra: Secure PostgreSQL deployment
- Palestrante: Magnus Hagander
- Resumo:
PostgreSQL supports several options for securing communications when deployed outside the typical webserver/database combination. This talk will go into some details about the features that make this possible, with some extra focus on the changes in 8.4. The main areas discussed are:
- Securing the channel between client and server using SSL, including an overview of the threats and how to secure against them
- Securing the login process, using LDAP, Kerberos or SSL certificates, including the use of smartcards to log into the database
- The talk will not focus on security and access control inside the database once the user is connected and authenticated.
- Mini Currículo
Magnus Hagander is a developer and a committer in the PostgreSQL Global Development Group.
Magnus developed and maintains the Windows port as part of an international team within the PostgreSQL Global Development group. He also works on other parts of the PostgreSQL backend, most recently authentication, SSL and Kerberos-related features.
He contributes to pgAdmin, the postgresql.org website and related infrastructure. He's been a PostgreSQL user since version 6.3. He currently serves as President of the Board for PostgreSQL Europe.
During paid daytime, he is a PostgreSQL and open source software consultant, and provides support and training through Redpill Linpro in Stockholm, Sweden.
Palestra:Rapid Upgrades With Pg_Migrator
- Palestrante: Bruce Momjian
- Resumo:
Pg_Migrator allows data to be transfered between major Postgres versions without a dump/restore. This talk explains the internal workings of pg_migrator and includes a pg_migrator demonstration.
- Mini Currículo:
Bruce Momjian is a co-founder of the PostgreSQL Global Development Group, and has worked on PostgreSQL since 1996. He is the author of PostgreSQL: Introduction and Concepts, published by Addison-Wesley. Bruce is employed by EnterpriseDB. Previously, he was employed by SRA Japan and Great Bridge LLC, both PostgreSQL support companies. He has spoken at many international open-source conferences. Prior to his involvement with PostgreSQL, Bruce worked as a consultant, developing custom database applications for some of the world's largest law firms. Prior to this, he was a high school computer science teacher and holds a Masters in Education.
Palestra: O uso do PostgreSQL e PostGIS para o cadastro geocodificado de acidentes.
- Palestrante: George Rodrigues da Cunha Silva
- Resumo:
Os acidentes de trânsito são uma questão de segurança e saúde pública, problema que se manifesta em praticamente todas as cidades médias e grandes no mundo todo. O conhecimento aprofundado da localização dos acidentes de trânsito e de suas variáveis (como ocorreu, data, hora, condição da via, tipo do acidente, etc.) é fundamental para a melhora das condições viárias e para a formulação de propostas educacionais, aumento da fiscalização, alteração da legislação e projetos de engenharia. Este conhecimento detalhado só pode ser atingido com o auxílio de um sistema que cadastre acidentes e as variáveis citadas, e que contenha, não somente uma descrição textual da localização, mas um dado geográfico representativo do evento acidente.
Este trabalho buscou a construção de um algoritmo capaz de processar um endereço cadastrado no banco de dados de acidentes e retornar ao usuário um ponto, dotado de um par de coordenadas XY, passíveis de serem representadas em um plano cartográfico. Esta técnica ou algoritmo é chamado de geocodificação e é bastante comum entre softwares de sistemas de informações geográficas (SIG). O algoritmo foi adaptado e aprimorado utilizando um banco de dados PostgreSQL com a extensão PostGIS.
- Descrição:
Apresentação de conceitos importantes;
Apresentação do modelo de dados, entidades e relações;
O PostGIS e dados geográficos;
O que é geocodificação?
Tipos de Endereçamento;
Algoritmo Geocodificador;
Triggers e automatização
Testando o algoritmo;
Resultados Finais;
- Mini Currículo:
Geógrafo, trabalha com PostgreSQL e PostGIS há um ano. Trabalha ativamente aplicando geoprocessamento às areas de prospecção mineral, engenharia de trânsito e transportes e segurança-pública;
Palestra: Acesse e utilize os Metadados do PostgreSQL sem medo
- Palestrante: Evandro Ricardo Silvestre
- Resumo:
Demonstrar a estrutura que o PostgreSQL utiliza para armazenar os Metadados do banco. Será demonstrada as tabelas do pg_catalog e o relacionamento entre elas. Apresentar o princípio de um Dicionário de Metadados (DMD), como criar um DMD utilizando o PostgreSQL e sugerir formas da utilização desses Metadados em Sistemas de Informação para facilitar o desenvolvimento e a migração entre plataformas de desenvolvimento.
- Descrição:
O intuito principal da palestra é demonstrar a utilização dos Metadados do banco de dados durante o desenvolvimento de software. Inicialmente, serão demonstradas as tabelas do pg_catalog, o que cada tabela armazena (dando ênfase para as principais tabelas) e seus principais campos, também será demonstrado o relacionamento lógico entre as tabelas.
Após essa fase, será introduzida uma forma para criar um Dicionário de Metadados e agregar mais informações aos dados que são obtidos no pg_catalog.
Ao final, será sugerida uma forma de utilizar esses Metadados criados através do Dicionário de Metadados em sistemas Desktop (Delphi) e sistemas Web (Java/PHP). Entre as sugestões estarão: forma de desenhar automaticamente uma tela apenas passando o nome de uma tabela, criação de rotina para criação automatica de comandos IUD (Insert, Update, Delete), conceito de pseudo-view, implementação de regras de negócio dinâmicas, padronização de telas de pesquisa, etc.
O objetivo é dar uma visão ouvintes a uma tendência que os Sistemas de Informações estão seguindo. Aos que nunca utilizaram ou não ouviram falar de Metadados, é esperado que saiam com a vontade de pesquisar mais sobre o assunto e pensar em formas de implementar aos seus sistemas atuais. Aos que já conhecem ou utilizam Metadados, é esperado que ampliem e aprofudem o conhecimento de como utilizá-lo.
- Mini Currículo:
Formado em Bacharel em Ciência da Computação, 24 anos, atua desde 1998 na área de TI. A vasta experiência em desenvolvimento de software abrange conhecimento em técnicas de levantamento, analise e gerência de requisitos, modelagem de banco de dados relacionais e objetos-relacionais, documentação, desenvolvimento de software utilizando técnicas de orientação a objetos, habilidade elevada em manutenção código existente, agilidade para identificar e solucionar problemas, realista, objetivo e prático.
Palestra: Usando PostgreSQL na Regra de Negócio de um ERP
- Palestrantes: Fabiano Machado Dias e Eduardo Wolak
- Resumo:
Mostrar como usamos o PostgreSQL para gerenciar toda a regra de negócio do sistema e não apenas como repositório dos dados. O uso de PL/pgSQL aliado a um modelo de dados bem estruturado, abre um novo leque de soluções para problemas comuns em sistemas integrados de gestão, além de proporcionar segurança, escalabilidade e desempenho.
- Descrição:
No cenário atual, a maioria dos sistemas de gestão do mercado basearam o desenvolvimento de seu núcleo basicamente na linguagem de programação ou em camadas intermediárias entre a aplicação e o banco de dados. Apesar da vantagem dessas aplicações poderem fazer uso de banco de dados diferentes, o que se viu em muitos casos foi a queda de performance e o aumento da manutenção dos sistemas.
Essa palestra pretende demonstrar um cenário oposto ao citado acima, mostrando como um sistema ERP pode ser desenvolvido usando todo o poder do banco de dados PostgreSQL.
- Mini Currículo:
Fabiano Machado Dias atua a mais de 10 anos na área de desenvolvimento de sistemas de gestão, tem experiência em servidores Linux e trabalha com PostgreSQL desde a versão 7.2.
Eduardo Wolak trabalha a mais de 18 anos com desenvolvimento de sistemas de gestão, análise e mapeamento de processos, consultoria e implantação de sistemas ERP.