Sunteți pe pagina 1din 61

Frum de TIC Dataprev

CADERNO DE DEBATES N 3

Banco de Dados

Braslia
EMPRESA DE TECNOLOGIA E INFORMAES
DA PREVIDNCIA SOCIAL - DATAPREV Dezembro de 2009
FRUM DE TIC DATAPREV

Um espao de dilogo entre gestores e estudiosos


da rea de tecnologia da informao e comunicao

CADERNO DE DEBATES N 3

Banco de Dados

Braslia
Dezembro, 2009.
Empresa de Tecnologia e Informaes da Previdncia Social
Dataprev

Rodrigo Ortiz Assumpo


Presidente

lvaro Luis Pereira Botelho


Diretor de Finanas e Servios Logsticos

Daniel Darlen Corra Ribeiro


Diretor de Infraestrutura de TIC

Janice Fagundes Brutto


Diretora de Pessoas

Rogrio Souza Mascarenhas


Diretor de Relacionamento, Desenvolvimento e Informaes

Expediente

Organizao

Rachel Quintiliano
Coordenadora-Geral de Comunicao Social

Colaborao

Equipe Dataprev
Felipe Miranda Pereira
Joo Fernando da Silva Carli
Mrcio Firmino de Sena
Mrcio Montavo Reis

Projeto grfico, diagramao e acabamento


Coordenao-Geral de Comunicao Social Dataprev

Impresso e Acabamento
Servio de Editorao e Reprografia Dataprev

O Frum de TIC Dataprev Banco de Dados


ocorreu no dia 21 de maio de 2009

Licena Creative Atribuio-Uso No-Comercial-Vedada a Criao de Obras Derivadas


2.5 Brasil Commons.
ISSN 2176-4298

SAS Q.1 Bloco E/F


Braslia DF CEP: 70070-931
Tel.:61. 3262-7100
www.dataprev.gov.br
Apresentao
Rodrigo Ortiz DAvila Assumpo
Presidente da Dataprev

Este Caderno de Debates resultado do III Frum de TIC da Empresa de Tecnologia


e Informaes da Previdncia Social (Dataprev), realizado no dia 21 de maio de
2009, em Braslia. Durante a atividade, foram relatadas experincias relacionadas
a banco de dados de diversas instituies pblicas.

Conhecer as experincias de nossos parceiros e clientes fundamental, sobretudo,


neste momento em que a Dataprev se prepara para concluir um ambicioso Plano de
Modernizao Tecnolgica, cuja nfase est na migrao de dados e sistemas de
mainframe para plataformas de cdigo aberto; na modernizao do Cadastro
Nacional de Informaes Sociais (CNIS) e no desenvolvimento da primeira fase do
Sistema Integrado de Benefcios (Sibe 1).

Os relatos da Universidade Federal de Minas Gerais, da Empresa Brasil de


Comunicao, do Banco do Brasil, da Caixa e do Servio Social de Processamento
de Dados contribuiro para que os nossos tcnicos encontrem caminhos mais
slidos e novas solues para o processo em curso na Dataprev.

Ao mesmo tempo, essa troca de experincias contribuir tambm para o


fortalecimento do quadro tcnico de cada uma dessas instituies e da inteligncia
brasileira em tecnologia da informao e comunicao.

Certos desta contribuio, agradecemos a todos os participantes do Frum que


cederam o udio de suas apresentaes para a composio desta publicao.

Boa leitura!
Sumrio

05 Migrao de DMS II para Oracle


Mrcio Firmino de Sena
Empresa de Tecnologia e Informaes da Previdncia Social Dataprev

15 Uso do PostgreSQL em ambiente corporativo: mito ou realidade?


Fernando Ike de Oliveira
Empresa Brasil de Comunicao EBC

Tendncias de banco de dados de software livre


23 Jos Edson Marinho de Souza
Servio Federal de Processamento de Dados Serpro

Perspectivas Futuras para Tecnologia de Bancos de Dados


33 Wagner Meira Jnior
Universidade Federal de Minas Gerais UFMG

Administrao de Base de Dados


Ronaldo Romani
41 Banco do Brasil BB

PostrgreSQL em Ambiente de Alta Criticidade


Jair Silva
51 Caixa Econmica Federal Caixa
Migrao de DMS II para Oracle

Mrcio Firmino de Sena


Gerente do Departamento de Planejamento e Projeto da Infraestrutura de TI
Diretoria de Infraestrutura de TIC Dataprev

Atualmente, a Dataprev a nica empresa de tecnolo-


gia da informao dentro do governo federal que Figura 1
possui uma estratgia bem definida para a migrao Ambiente Mainframe
de todo o seu acervo de mainframe. O nosso desafio
migrar todos os nossos sistemas que esto dispostos
em plataforma proprietria e port-los para uma
plataforma aberta que nos permita forte concorrncia
entre fornecedores. Ao falar em desafio da migrao,
remetemo-nos possibilidade de superao de uma
arquitetura em que h um nico fornecedor para todos
os elos da corrente, por meio da adoo de outra em
que haja vrios pontos e que permita, assim, maior
concorrncia. Abordaremos, portanto, as seguintes
questes: o desafio da migrao da atual infraestrutu-
ra dos mainframes; os principais servios; os volumes
que rodam nesse ambiente; as tecnologias de banco
de dados at hoje implementadas; as aes em
andamento; o processo de modernizao tecnolgica;
e os desafios dos nossos administradores de banco de
dados (DBAS). Fonte: Departamento de
Planejamento e Projetos de TI
O nosso ambiente mainframe possui uma arquitetura (Depi).
baseada no sistema operacional MCP e no banco de
dados DMS II. Temos trs unidades de mainframe.
Essas trs mquinas so utilizadas para os seguintes
trabalhos: temos duas mquinas no Rio de Janeiro,
uma para o processamento da carga do nosso
Cadastro Nacional de Informaes Sociais e outra para
a nossa base de benefcios; e a terceira est hospeda-
da em So Paulo, destinada ao processamento dos
dados da Receita Federal do Brasil. Existem tambm
dois storages nos centros de processamento do Rio de
Janeiro e de So Paulo, com suas respectivas unida-
des robticas. Nesse ambiente, tanto a manuteno
quanto o fornecimento dos insumos de hardware e
software so dependentes da Unisys em todas as
linhas. Nosso objetivo, portanto, migrar dessa
arquitetura proprietria para uma arquitetura aberta
(Figura 1).

Para termos uma idia dos volumes executados, so


quase 27 milhes de benefcios pagos. A arrecadao
processada ultrapassa anualmente os R$ 100 bilhes.
So 5 milhes de impresses mensais, com picos de
at 25 milhes; 89 servios disponibilizados na
internet; 120 servios disponibilizados na intranet.
Chegamos a ter 22 milhes de transaes por dia
nesses ambientes. Trata-se de um ambiente extrema-

Frum de TIC Dataprev Banco de Dados 05


Migrao de DMS II para Oracle
Mrcio Firmino de Sena

mente robusto. H em mdia 21 mil estaes conecta-


das, com picos de 35 mil conexes simultneas no
ambiente mainframe. Temos 1.716 datasets, ou seja,
tabelas no DMS II. Nosso acervo de dados tem 35 anos Figura 2
e ultrapassa os 20 bilhes de registros (Figuras 2 e 3). Volumes de dados e
transaes nos
A Dataprev, por meio de um convnio com o Banco do mainframes
Brasil, disponibilizou h pouco tempo o Extrato
Previdencirio. Esse extrato retirado no caixa eletrni- TRANSAES ESTAES CONECTADAS
MAINFRAME ON-LINE / DIA MDIA/DIA
co permite a voc verificar toda a sua vida laboral,
desde o seu primeiro emprego, os seus vnculos, etc. BENEFCIOS 15.000.000 10.588
Para tanto, consultamos um acervo de dados de cerca
de 20 bilhes de vnculos e remuneraes. Quem j
CNIS 3.700.000 4.136
conhece o extrato consegue visualizar o tamanho e a N

complexidade dessa transao.


RECEITAS 3.500.000 6.925
A equipe de administradores de banco de dados
responsvel pela sustentao de seis tecnologias de
banco de dados, a saber: DMS II, Oracle, MySQL, TOTAIS 22.200.000 21.649
PostgreSQL, SQL Sever e D3. O DMS II est na casa h
no mnimo 25 anos. O Oracle h uns quinze anos. O
PostgreSQL mais recente, tendo sido incorporado h
dois anos no mximo. O SQL Server, por sua vez, vem Fonte: Departamento de
sendo usado h dez anos; enquanto o D3, h pelos Sustentao da Infraestrutura
de TI (Desi)
menos vinte anos. A implementao dessas tecnologi-
as diz respeito aos primeiros processos de informatiza-
o da Previdncia, colocando os sistemas de conces-
so de benefcios on-line em todas as agncias. O
ambiente operacional no qual se processa a conces-
so dos benefcios formado por 444 bases de dados Figura 3
na plataforma baixa, assim distribudas: 118 bases de Volumes e espao utilizado
dados em Oracle; 25 em PostgreSQL; 26 em MySQL;
205 em SQL Server; e 70 em D3.

Dentro da nova estratgia, as 205 bases de dados SQL


DATASETS QTD REGISTROS ESPAO
Server migraro para um ambiente PostgreSQL. No MAINFRAME
desenvolveremos, nem ser mais adquirido o SQL
Server. Com isso, esperamos ganhar maturidade com BENEFCIOS 684 5.267.139.878

o PostgreSQL. O mesmo procedimento tende a ocorrer 9 Tb


com o Oracle. A expectativa ter uma base livre e uma CNIS 545 10.400.521.527
opo para um banco proprietrio. Nesse sentido, o D3
tambm est sendo eliminado por meio de um proces- RECEITAS 487 4.678.952.536 3 Tb
so de migrao. No final, trabalharemos com trs
tecnologias, duas livres e uma proprietria.
TOTAIS 1.716 20.346.613.941 12 Tb
A direo da empresa, luz dessa modernizao
tecnolgica, tem investido fortemente na adequao
da nossa infraestrutura de TI. O nosso grande desafio,
todavia, no apenas a migrao de sistemas, mas a Fonte: Departamento de
migrao do acervo de dados. Quem trabalha com Sustentao da Infraestrutura
mainframe sabe o que administrar um ambiente de TI (Desi)
monoltico. Trata-se de uma ambiente muito mais
tranquilo, mais fcil e estvel, sobretudo quando
comparado a um ambiente distribudo em camadas,

Frum de TIC Dataprev Banco de Dados 06


Migrao de DMS II para Oracle
Mrcio Firmino de Sena

como esse para o qual estamos migrando. Para a


Dataprev, esse processo de migrao um compro-
misso. Nosso desafio fazer a migrao mantendo, no
mnimo, os acordos de nveis de servios (SLAs) atuais, Figura 4
garantindo a mesma disponibilidade e a mesma Modernizao Tecnolgica
robustez que temos hoje nos mainframes.

Tomemos como exemplos o site de So Paulo, que


atualmente processa uma arrecadao de mais de
100 bilhes por ano, e o processo de folha de paga-
mento dos aposentados e pensionistas. A Dataprev
nunca atrasou um dia sequer o processamento desses
crditos, compromisso que precisa ser mantido. A
capacitao tcnica outra rea que tem recebido
fortes investimentos. Interessa-nos melhorar a
qualidade do atendimento. O Novo Modelo de Gesto
(NMG) do INSS um exemplo emblemtico nesse
sentido. Ou seja, investimentos na melhoria da
capacidade das pessoas, processos, equipamentos e
sistemas, esses tambm so os desafios da Dataprev
nesse processo de modernizao e integrao de
bases de dados (Figura 4). Fonte: Depi.

Nesse sentido, a Dataprev est trabalhando em duas


linhas. Uma linha de migrao e outra de redesenho
dos sistemas. Essa uma pitada a mais de complexi-
dade que nossa rea de desenvolvimento tem encara-
do com bastante competncia. A pergunta : quais as
vantagens que enxergamos nesse processo de
migrao? A primeira delas diz respeito modularida-
de de sistemas, que nos possibilita ter concorrncia de Figura 4
fornecedores, compatibilidade com o mercado, total Modernizao Tecnolgica
acessibilidade s informaes, reduo da manuten-
o dos aplicativos, etc. Alm disso, nossa rea de
desenvolvimento criou um framework em que todas as
aplicaes seguem um padro de acessibilidade e
usabilidade, o que diminuiu os custos atuais de
treinamento para capacitao dos usurios dos
nossos sistemas e servios.

Temos um histrico de vrias aplicaes e tecnologias


diferentes, desenvolvidas numa poca, num cenrio.
Por conta disso, no existe um padro nico de navega-
bilidade. Ocorre que as novas aplicaes esto sendo
construdas diante de um framework que permite toda
uma reduo de custos, numa arquitetura cuja propos-
ta garantir maior disponibilidade aos nossos siste-
mas (Figura 5). A arquitetura que est sendo projetada
para suportar e absorver a migrao constituda de
servidores dispostos em camadas: uma camada de
apresentao com tecnologia X86, outra camada de
servidores de banco de dados high end - sendo que
concorreram para essa camada equipamentos padro
Risc e Epic, com a garantia de competio de vrios
fornecedores.

Frum de TIC Dataprev Banco de Dados 07


Migrao de DMS II para Oracle
Mrcio Firmino de Sena

A idia ter um ambiente redundante, com garantia de alta disponibilidade em


todas as camadas. Para a camada de apresentao, utilizaremos o conceito de
farm, ou seja, uma fazenda de servidores que garanta alta disponibilidade. Para a
camada de banco, pretendemos utilizar um cluster de mquinas de banco de dados.
Essa arquitetura para que, no caso de indisponibilidade de uma mquina ou um
problema de hardware, no ocorra indisponibilidades dos sistemas. Isso permite
que continuemos atendendo sem que nosso cliente perceba uma parada em funo
de indisponibilidade no ambiente de TI. A estratgia para armazenar o acervo de
dados trabalhar com disco fiber channel para alto desempenho, discos Sata para
backup, dados histricos e aplicaes de baixa criticidade. Atualmente, no temos
mais janela de tempo para execuo de backup. Hoje as 135 centrais de atendimen-
to trabalham at mesmo aos sbados at as 22 horas, restando apenas os domin-
gos para a realizao dos backups.

Na estratgia que est sendo projetada, o primeiro backup ser realizado no prprio
disco. Estamos adquirindo complexos de armazenamento de dados com intelign-
cia de software que fazem a replicao dos dados para um disco Sata. Em seguida,
os dados replicados nos discos Sata sero copiados para uma fita e um site secun-
drio. Assim, nossa base principal no ser comprometida e o ambiente no
precisar ser desligado para a realizao da salva off-line, como executada
atualmente para a maioria dos nossos bancos de dados.

Esse um resumo do trabalho que temos feito para garantir a maior disponibilidade
possvel de todo o nosso acervo. A Dataprev est se prevenindo at mesmo quanto
ocorrncia de desastres, uma vez que o acervo de todos dos nossos segurados est
contingenciado e pronto para entrar em produo em outro site. Nesse sentido,
alm de migrarmos o mainframe, estamos oferecendo mais segurana com um
maior nvel de contingenciamento dos sistemas atuais.

Mais uma vez, temos de falar sobre os desafios. O primeiro corresponde gesto do
processo de implantao de um novo banco. Como que vamos fazer isso? As
responsabilidades nesse processo de implantao, o planejamento de projeto, a
sustentao do que j foi para a produo, como que trabalhamos para a atualiza-
o de uma nova verso? No podemos simplesmente implantar diretamente uma
nova verso. Existem atualmente mais de duzentas aplicaes rodando em nossos
ambientes de produo. No podemos simplesmente mudar a aplicao sem antes
testar e garantir que aquelas aplicaes continuem funcionando aps uma atualiza-
o. Como realizamos esses testes? No mainframe h uma ou duas ferramentas.
Na plataforma baixa, existem mais pontos de falhas, vrios ns dentro dessa cadeia
que podem falhar. Ento, preciso garantir o monitoramento de ponta a ponta.

Para quem acompanhou o processo pblico de migrao, lembra que a Dataprev


anunciou que, no seu primeiro processo, a migrao seria para uma tecnologia Java
e um banco de dados Oracle. Desenvolver todos os novos sistemas e retrabalhar o
que existe, testando e garantindo que tudo o que estava l em cima funcione aqui
em baixo remete ao desafio de garantir a portabilidade dos dados. Como adminis-
trar a tenso portabilidade versus desempenho? Algumas coisas so diferenciais
nesse processo. Uma opo seria usar features proprietrias. Mas at que ponto
essas features proprietrias podem ser usadas em prol do desempenho, sem
comprometer a portabilidade dos seus dados? Temos o exemplo do particionamen-
to. Usamos particionamento hoje em funo do desempenho. O particionamento
no compromete, apesar de ser uma feature proprietria. Ou seja, voc pode migrar
para outra base, s no vai ter o compartilhamento e vai perder desempenho. Com
efeito, voc no est comprometido com uma migrao direta dos seus dados.
Ento, quais as vantagens? Essa era justamente uma questo que queramos

Frum de TIC Dataprev Banco de Dados 08


Migrao de DMS II para Oracle
Mrcio Firmino de Sena

entender. A pergunta : o que vocs usam? Gostaria de saber, dos que usam Oracle
ou DB2, que nvel de dependncia existe em suas empresas? O que vocs usam de
tecnologia proprietria desses fornecedores para melhorar a performance e o
desempenho desses bancos de dados? Como blindamos isso de modo a no ficar
presos a uma determinada tecnologia?

Outra coisa o seguinte: Ns temos o desafio de garantir os mesmos SLAs dos


atuais mainframes, certo? E uma das coisas que o nosso cliente tem cada vez mais
nos exigido a alta disponibilidade. Ele quer as Agncias da Previdncia Social (APS)
disponveis sempre. Isso faz parte do processo de melhoria do atendimento. Os
senhores viram que a tecnologia que estamos disponibilizando tem redundncia.
Fazendo um paralelo com a antiga e conhecida diferena de um equipamento no-
break para um equipamento short-break, em se tratando de servidores de banco de
dados, isso passa mais ou menos pela questo de ter uma mquina de espera num
cluster ativo-passivo ou ter uma mquina funcionando em paralelo formando um
cluster ativo-ativo. Em situao de falha, no caso do cluster ativo-passivo, coloca-se
a outra mquina, mas h uma indisponibilidade mnima de alguns minutos. No caso
do nobreak, no ocorre essa parada, no h perda, nem um lapso temporal de perda
de dados em funo dessa conexo e desconexo, quando sai o master e entra o
secundrio.

Estamos no terreno do terceiro desafio, ou seja, manter alta disponibilidade e


garantir contingenciamento. Surge, ento, outra pergunta: voc faz contingencia-
mento com lapso temporal ou voc j investiu em uma tecnologia que possibilite a
no-perda de dados em momento algum por exemplo, em funo de ocorrncia de
um desastre, que impossibilite a operao do site o que faremos? Observem, no
estamos falando de indisponibilidade de hardware, porque, para esse caso, j
estamos especificando mquinas de altssima disponibilidade e prevendo um
cluster que garanta a no-ocorrncia de interrupes em funo de falha de equipa-
mentos. Nossa preocupao o contingenciamento entre sites.

Por fim, o ltimo tema que gostaria de compartilhar est relacionado ao tratamento
do processo de segurana dos ambientes de banco de dados. Temos de garantir
ambientes cada vez mais seguros, principalmente nosso acervo de dados. A ttulo
de ilustrao, toda a vida laboral de muitos milhes de brasileiros est registrada no
acervo de dados da Previdncia Social. Interessa-nos enormemente manter esses
dados cada vez mais seguros. Ento, temos trabalhado em polticas de senhas,
estratgia de acesso de banco de dados e alguns conceitos de segurana e gostaria
de entender um pouco do dia-a-dia da empresa de vocs.

Frum de TIC Dataprev Banco de Dados 09


Migrao de DMS II para Oracle
Mrcio Firmino de Sena

DEBATE

Serpro - Para sistemas de alta disponibilidade com informao com muito mais simplicidade e agilidade.
contingncia, temos identificado dois fatores crticos Outra questo que considero importante a portabili-
dentro do Servio Federal de Processamento de dade. No se trata de simplesmente pegar os dados do
Dados (Serpro). O primeiro diz respeito queda no mainframe e trazer para uma plataforma avanada.
desempenho. Desempenho e alta disponibilidade so Isso exige uma modelagem total desse novo sistema
altamente conflitantes. Em ambientes OLTP, a perda na nova plataforma. s vezes, querer simplesmente
no significativa, mas em ambientes de Data importar traz mais problemas do que solues.
Warehouse, sim. Por qu? Isso depende exclusiva-
mente do modelo de dados que foi implementado. Serpro Ainda sobre a alta disponibilidade, h algu-
Assim, tem de ser desenvolvido no modelo de dados. mas questes. Quando voc tem um Rack, possvel
Hoje, quem diz que um ambiente de alta disponibilida- dizer: muito simples, a distribuio de usurios se
de e contingncia vai funcionar independentemente faz pela conexo. At ai, tudo bem. Atende a OLTP? Na
da aplicao e do modelo de dados no tem conheci- maioria das vezes, sim. Em caso de DW, isso no
mento. Em ambientes de alta disponibilidade, o ocorre, porque o grande problema no a quantidade
ambiente dever ser planejado a partir do modelo de de usurios na mquina, mas a complexidade do
dados. Outra coisa tambm muito difcil em alta comando SQL que est rodando naquele momento.
disponibilidade o uso de ndices. Normalmente, os No faz sentido deixar o comando SQL ficar em uma
ndices bi-tri no se adquam alta disponibilidade. mquina s. Se voc distribuir o comando SQL nas
Terei de partir para outro raciocnio. O conceito de alta duas mquinas, haver um ganho, mas tambm outro
disponibilidade implementvel? Sim, mas deve ser problema: as reas de classificaes. algo bastante
pensado desde a sua concepo. complexo. Em ambiente Rack, para comandos exausti-
vos, voc vai ter de distribuir e lidar com as consequn-
Dataprev - O Serpro est trabalhando nesse ambiente cias disso. Outra coisa: como fazer os seus servios
de banco de dados e tem adotado uma estratgia noturnos no ambiente Rack? Como sero rodados os
parecida com a Dataprev quanto ao ambiente de uso servios batches? Como fazer essa distribuio? Isso
de banco de dados. no automtico. Quem acha que alta disponibilidade
passa simplesmente por jogar a aplicao no tem
Serpro - No sei se a MySQL continuar livre daqui conhecimento e no passou pelas dificuldades. Alta
para frente, tendo em vista a fuso entre a Oracle e a disponibilidade algo que precisa ser pensado desde
Sun. Portanto, precisamos ter cuidado ao falar em o modelo, bem como na implementao, no backup.
MySQL. A nova diretoria do Serpro tem enfocado
bastante a questo do uso da estrutura de software Dataprev - Queria fazer um comentrio sobre portabi-
livre, seja para SGBD, seja para aplicaes nos lidade e migrao. Ao portar dados, voc acaba
servidores. Ao mesmo tempo, tem feito um trabalho trazendo os problemas existentes, at mesmo com
grande de migrao de sistemas e banco de dados, de riscos de acrescentar problemas novos plataforma
mainframe e at mesmo de plataformas baixas baixa. Fica, ento, o questionamento: em que medida
proprietrias - de SQL Server ou ainda Oracle para o portar no uma fase dessa migrao? O quanto que
PostgreSQL e a verso livre de MySQL. Esse projeto o portar no o primeiro passo para se fazer uma
comeou h cerca de dez anos, estando envolvidos os sada do mainframe e migrar os sistemas de forma
sistemas da Receita Federal. So sistemas isolados selecionada? Eu acho que a nossa empresa est indo
uns dos outros. Quando um atendente do Centro de por esse caminho. A escolha tanto de nvel tcnico
Atendimento ao Contribuinte (CAC) precisa consultar quanto estratgico, at porque faz parte do contrato
os dados gerais de algum, tem de acessar um no mudar os sistemas durante a transio.
sistema. Se quiser consultar a dvida ativa da mesma
pessoa, tem de entrar em outro sistema. A plataforma Dataprev - Outra coisa importante o desafio dessas
avanada vem facilitar a integrao desses sistemas e implementaes. Como vocs trabalham uma nova
o trafego de um lado para o outro, sem vrias cone- verso do seu banco de dados? Como feito o proces-
xes. Ou seja, permite a voc puxar a ficha de um so de testes? E o envolvimento das pessoas? Como se
contribuinte, de um devedor ou qualquer outra d a programao de uma nova verso? A Dataprev

Frum de TIC Dataprev Banco de Dados 10


Migrao de DMS II para Oracle DEBATE
Mrcio Firmino de Sena

segue a estratgia de trabalhar com uma verso Nesse esforo, no bastava levar as funes para
abaixo da ltima verso. Quando comeamos a outro lado. E os dados daquela rea? Por que o cadas-
implementar a ltima verso, ela j ganhou um nvel tro nico para todo mundo? H tambm a questo da
de maturidade, recebeu as features e os patches disponibilidade. Voc tem de construir uma quantida-
corretivos. Como vocs trabalham nas suas empre- de de sistemas para conseguir gerenciar o seu gerenci-
sas? A verso saiu e j tem um grupo estudando? ador. Embora parea meio paradoxal, voc tem de
Conseguem participar com quem trabalha com banco saber quais so os backups feitos, as tabelas em que
livre? Sabemos que alguns fornecedores disponibili- so feitas reorganizaes (re-orgs), do que preciso
zam um beta antes para as equipes testarem. Como fazer backup e atualizaes de estatsticas, etc. So
funciona isso? todas operaes que causam muita indisponibilidade.
Como resolver isso? O Banco do Brasil conseguiu
Banco do Brasil - As tarefas so dividas. Para o associar e comprar utilitrios que minimizam esse
mainframe, uma equipe trata da parte de aquisio e processo, os quais no trabalham por meio do SGBD.
outra cuida dos outros bancos de dados e demais Eles vo direto ao sistema operacional e trabalham o
plataformas. H Oracle suportando DW, ou seja, vrios arquivo. Assim, tem de fazer um re-org. Para todos os
aplicativos departamentais suportando esses dados. efeitos, mantm-se o arquivo disponvel, trabalha-se
A questo da disponibilidade muito crtica. A pergun- todo o arquivo off-line e faz-se uma cpia. Na verdade,
ta que surge : o que o Banco do Brasil est fazendo? faz-se uma cpia do arquivo, trabalha off-line, reorga-
No passado, a empresa adotou uma estratgia de niza-se o arquivo, chaveia-se o nome que o SGBD
centralizar todos os aplicativos e todas as bases de reconhece e, no instante seguinte, aplicam-se todas as
dados em um cluster, uma vez que havia recebido um atualizaes. Ocorrem, porm, pequenos momentos
direcionamento da IBM de que os membros desse de indisponibilidade. Com efeito, coaduna-se tudo isso
cluster poderiam crescer pelo menos at 24 ncleos com a janela batch. Isso andou bem at o momento
ali dentro. Entretanto, acabou se dando conta de que em que o Banco resolveu fazer a parceria varejista.
no havia mais endereos para advices. Havia trs Como trabalhar com esse nvel de acoplamento. Havia
caracteres para designar o endereo. O que fazer? uma janela batch definida, que impedia o no corren-
Partimos para comprar outro ambiente Sixplex. Veio, tista de ter carto de crdito. Com a parceria varejista,
ento, a dvida: o que tirar desse primeiro e levar para outras ferramentas tiveram de ser construdas para
o segundo? J em funo do grande acoplamento identificar e resolver essas questes de desacoplar
entre os dados e as funes, partimos da seguinte dados e funes. Fez-se necessrio ir base de dados
pergunta: o desenvolvedor que dono dos dados?. e trazer um determinado conjunto de informaes,
E ele dizia: Eu no acesso o dado de outro sistema, a trabalhar, entregar os dados para o prximo nvel.
no ser pelo prprio sistema. Comeamos a trabalhar Assim, cada um foi trabalhando at que aquele que
num esquema de sub-rotinas. Isso muito bom porque solicitou a primeira sub-rotina tivesse a informao
protege bastante, cria uma camada boa, porm gera necessria. Somado a esse processo j complexo,
uma vinculao muito grande entre dados e funes. preciso trabalhar com a integrao entre as platafor-
Quando se descobre que o dono do dado no o mas. Disso emergem os problemas de backup do
administrador de banco de dados (DBA), no a Oracle e do DW. At hoje so os mesmos problemas.
aplicao, mas o negcio, fica-se engessado. No tem Quando se montou o DW, a rea de TI disse assim: O
mais para onde ir. O atual desafio do Banco do Brasil , que ns sabemos fazer e o que a administrao de
ento, tirar os ovos de uma cesta, comea a classific- dados (AD) faz?. A questo que ns, tcnicos da
los e lev-los para outras cestas? Para voc comear a rea de banco de dados sempre, temos esse dilema.
fazer acordos de SLA, que tem 100% de disponibilida- H uma intriga muito grande entre as reas de dados e
de para tudo, no acontece. Ento agora ns escolhe- funes. Ora as funes se sobrepem aos dados, ora
mos qual SLA queremos. Ento, ele pegou a estratgia. o inverso. Ento, a TI tem de fazer um exame muito
Isso tambm difcil. Trata-se de um caso suis generis criterioso, de modo a identificar o que ela consegue
no Brasil, porque nos outros pases, quando o banco suportar e o que tem de repassar para outra rea.
faz negcio, depsito, retirada e emprstimo. E o Trata-se de ir mesclando as coisas. No h como ter
banco vende muitas coisas. Vende imveis, vende um sistema gerenciador de banco de dados sem
seguro. Uma sada encontrada foi comear a isolar dispor de um sistema para gerenciar o prprio sistema.
esses dados e ver o que cada um acessava. Para Essa a concluso a que chegamos.
comear, resolvemos o problema do acoplamento e
conclumos sobre a necessidade de separao por Dataprev - Eu sei que o Banco do Brasil e a Caixa tm
reas. Seguridade foi uma delas. Finanas outra. acervos enormes. Como o trabalho dessa janela de

Frum de TIC Dataprev Banco de Dados 11


Migrao de DMS II para Oracle DEBATE
Mrcio Firmino de Sena

backup desses dados de um acervo to volumoso, disco fibre channel para desempenho implica ter
com um SLA e uma expectativa de no parada dessa ntida compreenso do desempenho que se quer; que
disponibilizao de servios? mdia fica em fibre channel; o que pode ficar numa
mdia mais barata, quanto tempo ser gasto para levar
Banco do Brasil preciso ver como as coisas funcio- essa informao para fita. Para as informaes que
nam. O gerente da agncia, quando recebe um cliente, esto atualmente num disco Sata - um disco mais
tem de olhar o funcionamento da agncia. A agncia lento, porm mais barato - , existem estratgias para
tem os segmentos de atendimento e autoatendimen- recuperar os dados crticos. Uma informao vinda da
to. No atendimento, h o caixa e os terminais de fita demora a ser baixada, principalmente nos volumes
mltiplas funes operados pelo atendente. A pessoa que temos e administramos. Mas como isso se d? H
est com um problema vai ao banco e atendida ali. um grupo multidisciplinar voltado para negcios. No
Atualmente, o gerente tem um conjunto de informa- nosso caso, so as reas de desenvolvimento. Eles
es que lhe permite saber quem a pessoa que est sabem exatamente de quem essa informao,
sendo atendida. Ento, quando partimos para as conhecem a lei. Gostaramos de saber como feito
estruturas de DW, temos de saber exatamente o que esse tratamento nas empresas de vocs?
queremos resolver. O Banco resolveu sua questo
especfica inserindo todos os aplicativos no mainfra- Serpro - O Serpro uma empresa pblica que desem-
me. Isso permitiu ao gerente saber exatamente o perfil penha uma funo um pouco diferente, sobretudo por
do cliente sempre que for preciso. Outra questo no trabalhar com solues para si. Trata-se de uma
importante diz respeito situao dos negcios. Esses empresa prestadora de servios. Consequentemente,
so os grandes desafios que a alta administrao temos servios das mais diversas tecnologias e
tenta resolver. Temos de construir toda uma infraestru- solues. Seja para o Tesouro Nacional, a Receita
tura que torne essas duas informaes possveis. A Federal, o Instituto Chico Mendes ou a rea de comr-
partir disso, seguem os desdobramentos: Quem meu cio exterior, entre algumas dezenas de clientes. A
fornecedor? Quem so as pessoas que entregam? empresa , por essa razo, estruturada em diretorias
Quem entra? Quem interage com o negcio? Outro de desenvolvimento, clientes, infraestrutura, etc. No
dilema. Toda a infraestrutura est voltada para tenho uma visibilidade total da empresa, mas posso
resolver essas duas questes. s vezes nos perdemos
dizer, grosso modo, como isso funciona. Voltando
um pouco por achar que a infraestrutura dada pela
pergunta feita, foi colocada a questo dos versiona-
prpria infraestrutura, mas no . O gerente da
mentos. Em geral, quando um produto chega empre-
agncia tem condies de saber quem o fornecedor.
sa, segue para um projeto de desenvolvimento, depois
Quanto ao andamento dos negcios, preciso saber o
para uma rea de administrao de dados e, posterior-
qu? De incio, ao colocar um produto novo no merca-
do, tem de se fazer o controle e ter o registro. No mente, para uma rea de desenvolvimento. Terminada
momento em que a primeira pessoa faz uma opera- a fase de desenvolvimento, passa-se homologao,
o, algumas vezes ns no temos como trabalhar quando so criados ambientes especficos. Da,
esse dado, porque temos de trabalhar essa operao segue-se para um ambiente de testes e, finalmente,
durante toda a vida til daquela operao, e mais, para a produo. As equipes de desenvolvimento tm
temos de manter essa informao para efeitos de ferramentas de versionamento dessa parte produtiva,
complains. Hoje os rgos internacionais, em funo de forma que, quando o produto chega para a equipe
das vrias crises, comearam a exigir que o registro de DBA de banco de dados e a de DBA de aplicativos, j
permanea disponvel por at vinte anos. Em razo se tem a verso a ser implantada na produo. Dentro
disso, passamos a colocar nos modelos informaes da nossa estrutura, temos ainda outro nvel de segu-
com as quais no nos preocupvamos antes. Por outro rana para os casos de uma verso de objeto, uma
lado, vem a questo do desempenho. Manter os dados package de banco, por exemplo. A verso no
no disco faz com que a aplicao fique mais lenta. aplicada de imediato naquele banco de produo,
Como, ento, ganhar performance tentando manter porque o desenvolvedor sabe o que est pedindo, mas
esse dado em memria? esse o desafio dos DBAs? no conhece o impacto daquilo dentro do processo
produtivo. Temos um banco modelo do DBA, onde se
Dataprev - Para fazer um backup, no preciso deixar realizam essas aplicaes. Em geral, isso feito
o banco de dados fora do ar. Essa exatamente a durante uma janela de produo. No podemos fazer
estratgia de infraestrutura que apresentei. Afora isso, durante o expediente, porque o usurio facilmente
cabe responder: Como trabalhar a questo do ciclo de percebe as alteraes no momento em que est
vida da informao? Como realizar o gerenciamento fazendo sua transao. Mas acontecem aqueles
desse ciclo de vida? Hoje a mdia muito cara. Usar um processos que so corretivos do desenvolvimento.

Frum de TIC Dataprev Banco de Dados 12


Migrao de DMS II para Oracle DEBATE
Mrcio Firmino de Sena

Dataprev - Parece que vocs tm um ambiente bem Ministrio da Previdncia - Por que se fala em migra-
segmentado em todas as fases at mesmo na o? Porque as grandes empresas hoje trabalham
homologao - , com a preocupao e a precauo de com mainframes, a exemplo da Dataprev, do Serpro e
aplicao de packages e cdigos desenvolvidos pelo do Banco do Brasil. At onde sei, as grandes aplica-
desenvolvedor que vo rodar dentro do banco de es ainda esto baseadas na arquitetura mainframe,
dados num ambiente isolado. Sobre isso, tenho que uma arquitetura de banco de dados e construo
algumas perguntas: Como trabalhar o relacionamento do cdigo em si. Minha pergunta: Para as grandes
com o desenvolvedor no que diz respeito ao contedo aplicaes crticas e de alta disponibilidade, o que
dos dados desse banco de homologao? Existe uma cada uma dessas empresas tem hoje, o ambiente
expectativa de o desenvolvedor sempre ter aquele Oracle, SQL Server ou banco de dados livres, o ambien-
acervo completo, com o banco de dados de homologa- te entendendo banco de dados e aplicao, o que
o igual ao de produo? Vocs trabalham com vocs diriam sem considerar legado? Vou construir
conceito de Itil, que tem todas aquelas gerncias de hoje um sistema novo. Banco do Brasil, conta corrente,
servios. Isso j est implementado? Banco Nacional, o Serpro. Mas hoje, onde vocs
colocariam um aplicao crtica em Oracle, SQL Server
Serpro - No Serpro, dispomos do Specs X, uma ou banco de dados livre? Vocs colocariam sua
ferramenta de desktop que trabalha todas as fases do aplicao crtica em qual dessas plataformas?
Itil, por meio da qual fazemos gerncia de problemas,
mudanas, servios e incidentes. possvel tambm Serpro No Sepro j trabalhamos assim. Diversas
fazer gerncia de inventrios, mas isso ainda no foi aplicaes crticas j rodam em Oracle. H um exem-
implantado. Para realizar as gerncias, o desenvolve- plo de um banco em SQL, super crtico, que o das
dor precisa distribuir um objeto num ambiente de Notas Fiscais Eletrnicas. Existem vrias outras
homologao ou de produo. Ele abre uma demanda aplicaes de mainframe que esto sendo migradas,
dentro dessa ferramenta, direcionada a um grupo portadas para a plataforma baixa.
executor podendo tambm ser dezenas de grupos. O
grupo precisa ter conhecimento de qual outro executa Serpro - Ns temos que avaliar o projeto, porque no
aquela demanda. Se para banco de dados, tem l um podemos confundir disponibilidade com performance
endereo; a cai naquele grupo de execuo. A partir e SLAs. So trs assuntos diferentes no mundo de TI.
da, a equipe de DBA, a executora, avalia viabilidade da Quando voc contrata um projeto, preciso especifi-
demanda. Se no for vivel, a demanda devolvida ao car sua prioridade: disponibilidade, performance ou
demandante, que analisa e faz as correes devidas. segurana dos dados. Eu imagino que um sistema
Se for aplicada e no houver o sucesso, acontece a bancrio e de caixa priorize a disponibilidade. A
mesma coisa. Temos uma ferramenta de desktop que performance importante porque tem uma pessoa ali
atende a essa soluo. Quanto ao ambiente de aguardando na fila, mas a disponibilidade daquela
homologao de produo, a segurana na verdade transao mais interessante que a performance.
a nossa grande questo. O desenvolvedor, em geral, Agora, para um sistema que armazena informaes,
precisa e quer ver o dado que est em processo ter garantia de que os dados no sero perdidos o
produtivo, bem como fazer um select (comando de que mais interessa. Trata-se de solues que no
seleo) e ver o valor de uma determinada coluna. Isso convivem entre si.
uma questo sria que ns temos. O dado do negcio
do cliente. O nosso cliente no Ministrio do Dataprev O Banco do Brasil j tem servios crticos
na plataforma baixa?
Planejamento, no Ministrio da Fazenda que o
dono da informao. Observem que nem o DBA,
Banco do Brasil - Temos uma estrutura de DW consi-
embora tenha at certa visibilidade desse dado e
derada forte e outra em Oracle. H questes crticas do
ferramentas que podem permitir criptografia ou outras
banco relacionadas disponibilidade. At roda em
solues para blindar esses dados, mas o desenvolve-
baixa plataforma, em DB2, mas ficam solues quase
dor, normalmente, no tem conta, nem permisso que departamentais. Agora, atendendo o negcio,
para ver dados no ambiente de negcios e tambm no atender cliente voc entrar, saber que o cliente pode
ambiente de homologao. Isso porque presumimos estar disponvel, pode estar querendo interagir com o
que o ambiente de homologao j um ambiente de negcio qualquer hora do dia, sendo cliente ou no,
pr-produo, contm dados de negcio, mesmo que que mais difcil vai autorizar crdito em cima de
mascarados. A massa de teste s estar disponvel no cadastros de outros at, porque cliente da casas Bahia
ambiente de teste e desenvolvimento. O desenvolve- pode sair com um carto de credito que o banco
dor ter acesso para visibilidade somente ali. forneceu e est controlando. Penso que pecamos pela

Frum de TIC Dataprev Banco de Dados 13


Migrao de DMS II para Oracle DEBATE
Mrcio Firmino de Sena

robustez. Esse outro item que somaria queles trs.


No se trata simplesmente de olhar o lado da disponi-
bilidade ou o do planejamento de capacidade.
preciso criar uma soluo que d conta do conjunto da
obra. No sei se conseguiramos atender o cliente hoje
em outra plataforma que no fosse o mainframe.

Dataprev Atualmente, a Dataprev tem na plataforma


baixa o sistema Sabi rodando em Oracle.
Consideramos o Sabi um sistema muito crtico.
Chegamos a ter nove mil conexes simultneas nessa
base. Cerca de 40% de todas as transaes das
Agncias da Previdncia Social j so feitas graas
utilizao desse sistema.

Banco do Brasil - No Banco do Brasil, falar em aplica-


es crticas remeter ao mainframe com toda
robustez que ele d. A deciso que tomamos anos
atrs de investir nisso tem nos encaminhado para o
desafio de classificao dessas aplicaes. Nesse
sentido, a resposta pergunta sim, porque hoje j
temos o experimento e um paradigma tecnolgico
estabelecido. A classificao permanece sendo um
trabalho muito rduo que precisa ser feito. Hoje, at
pela segurana que uma determinada plataforma ou
tecnologia de banco de dados nos d, precisamos
definir qual o limite de criticidade de cada uma dessas
aplicaes.

Frum de TIC Dataprev Banco de Dados 14


Uso do PostgreSQL em ambiente corporativo: mito
ou realidade?
Fernando Ike de Oliveira
Gerente de Tecnologia da Informao
Empresa Brasil de Comunicao

O tema central dessa comunicao o sistema gerenciador PostgreSQL. As polmi-


cas a esse respeito comeam na escrita e na pronncia do nome. So comuns os
casos em que as pessoas o escrevem e pronunciam de modo equivocado. Sites
foram cancelados ou questionados em virtude disso. Por razes tcnicas e at
mesmo jurdicas, o correto seria adotar s seguintes grafias: PostgreSQL ou
Postgres assim pronunciadas: postigres-s-qui-uel ou postigres. Parece algo
bobo, mas no . Certamente, cada um j viu ou escreveu de formas diferentes.

A construo do Postgres iniciou-se em 1977, numa pesquisa desenvolvida em


Berkeley, na Universidade da Califrnia, sobre um conceito de banco de dados
relacional que resultou no Informex e, em seguida, no Ingres. A partir de 1986, o
produto desse trabalho passou a ter o nome de PostgreSQL. Cabe registrar um
detalhe: em 1980, criou-se a empresa Ingres, que foi comprada pela Computer
Associates em 1994. No se trata, portanto, de algo novo, mas de uma das bases de
cdigo mais antigas, talvez perdendo apenas para o Oracle.

Quanto s suas caractersticas, primeiramente, cabe destacar o fato de esse


sistema contar com um melhor suporte por ser independente de fornecedor. Ao
contrrio do que possa parecer, esse trao no implica a inviabilidade de crticas. O
Postgres tem um time de desenvolvimento e vrias empresas que do suporte,
como todas as empresas de banco de dados proprietrios ou qualquer produto ou
software. A diferena est apenas nas especificidades dadas por qualquer tecnolo-
gia livre. Mas, de modo geral, apresenta as mesmas caractersticas que se espera
encontrar em outros bancos de dados, como:

Baixo custo de manuteno e tuning;


l
Alta estabilidade;
l
Extensibilidade
l - pode ser personalizado com funes e tipos ou por
meio do acesso ao cdigo fonte. Extenses na pasta Contrib ou no
Pgfoundry;
Flexibilidade - roda em vrias plataformas (incluindo BSD);
l
Robusto - criado para suportar grande volume de dados e transaes
l
concorrentes;
Controle de transaes utilizando MVCC ou Locks explcitos;
l
Compatvel com ANSI SQL;
l
Funes em SQL, C, C++, PLpg/SQL, PL/Perl, PL/Python, PL/TCL
l
suportadas nativamente, alm de PL/Java, PL/PHP, PL/R, PL/Ruby,
PL/Scheme, PL/Lua, PL/sh, PL/Mono.

Tais facilidades, todavia, podem no ser suficientes para eliminar as dvidas sobre
a aquisio do Postgres? Com efeito, afora a questo do melhor suporte, outras
vantagens podem ser ressaltadas. A principal delas que o Postgres tem licena
BSD, que permite modificar, alterar, copiar, distribuir e, at mesmo, fechar o cdigo.
Empresas como Dataprev, Petrobras, Caixa e Banco do Brasil optaram por cria a
funcionalidade de segredo de Estado. Isso tanto possvel quanto fcil de fazer.
Outros exemplos desse tipo de poltica so oferecidos pela Bizgres e a Enterprise
DB.

As experincias confirmam o Postgres como algo vantajoso, haja vista que empre-
sas internacionais como IBM, SUN, EnterpriseDB, Greenplum, Command Prompt,

Frum de TIC Dataprev Banco de Dados 15


Migrao de DMS II para Oracle
Fernando Ike de Oliveira

Fujitsu, Unisys, Red Hat, PgExperts e BULL tm patrocinado financeiramente ou


mantido desenvolvedores desse sistema gerenciador. Alm disso, h as nacionais,
como Softa, Dextra, 4Linux, B2BR, OpenGEO, que oferecem servio de suporte e
treinamento.

Curiosamente, ainda h quem pense que o Postgres s serve para padaria. Por qu?
Simplesmente pelo fato de ser gratuito, possuir um frum de discusso por meio do
qual muita gente oferece suporte e responde dvidas gratuitamente. Isso o que
justifica esse julgamento. Diferentemente do que sugere essa viso simplista, de
uns dez anos para c, o Postgres tem sido pensado em lugares crticos, que preci-
sam de performance e tm um alto nvel de estabilidade.

No por acaso, o departamento de Estados dos Estados Unidos, Apple, Cisco,


Hitachi, Servio Federal de Processamento de Dados (Serpro), Caixa Econmica
Federal, Metr-SP, Empresa Brasileira de Pesquisa Agropecuria (Embrapa) e Fora
Area Brasileira (FAB) passaram a utiliz-lo. A Nasa, por sua vez, usa o Postgres para
fazer processamento de imagens de satlite. Alm dela, a NTT (Telecom Japo) um
dos maiores usurios de Postgres no mundo, tendo um campo de pesquisa focado
em Postgres para cluster e alta disponibilidade. Sony, Fujitsu, Skype so outros
usurios desse sistema. O Skype trabalha com bases em instncias de dados
particionados e, atualmente, tem 15 milhes de usurios on-line conectados
fazendo algum tipo de verificao.

O Postgres, provavelmente, o banco de dados que tem a maior quantidade de


plataformas suportadas. Entre os exemplos, destacam-se: Intel, Power PC, S/390,
Itanium, Sparc 32, PA-Risc. So plataformas de alta performance, alto desempenho
e as mais usadas no mercado corporativo. Quanto s funes aderentes aos SQL
2003 e 2008, temos:

ndices btree, hash, rtree, gist, bitmap;


?
Sequncias;
?
Views - pode receber Update, Insert e Update por meio de Rules;
?
Domnios;
?
Esquemas - pode estar atrelado ou no aos usurios;
?
Tipos de dados;
?
Funes de agregao;
?
Funes de operadores;
?
Funes de converso de caracteres;
?
Funes de converso de tipo de dados;
?
Funes de utilizao de ndices;
?
Gatilhos (Trigger), Restries (Constraint);
?
XML; e
?
Full Text Search.
?

Bsico para ambiente corporativo, ele suporta Kerberos e LDAP. Ento, se tiver
Active Directory ou OpenLDAP, ou qualquer outro que seja LDAP, o PostgreSQL tem
suporte. Ele oferece suporte em inmeras localizaes e idiomas. muito tranquilo
criar um Postgres em idiomas como chins, tailands, latim, etc. Isso tem se tornado
uma prtica comum, uma vez que as informaes no so mais de um pas, tendem
a ser globais. Particularmente, recomendo o uso do TF8 ou do Unicode. Embora seja
um processo difcil, preciso comear a convergir.

Frum de TIC Dataprev Banco de Dados 16


Migrao de DMS II para Oracle
Fernando Ike de Oliveira

No que diz respeito aos tipos de transaes possveis, esse sistema gerenciador
possibilita os usos do modo auto-commited; do controle de multiverso MMVC - que
permite acesso simultneo de leitura e escrita, utilizando um snapshot separado de
Lock explcito do tipo Acces Share, Row Share, Row Exclusive, Share Update
Exclusive, Share, Share Row Exclusive, Exclusive e Access Exclusive; bem como do
Savepoint para retornar a transao at pontos especficos.

Outra questo importante de se mencionar o backup. At a verso mais recente,


fazer restaurao de backup (backup usando pg_dump) no Postgres, em mquinas
com mltiplo processamento e muitos ncleos, era algo muito lento. No se conse-
guia restaurar bases muito grandes num tempo hbil. Esperamos solucionar esse
problema na verso 8.4, cujo lanamento est previsto para o fim de junho. A idia
fazer restaurao paralelizada, usando mltiplos ncleos (processadores) de um
servidor.

O Postgres tem uma estrutura de armazenamento diferente da maioria dos bancos


de dados. Nele no possvel ver a base de dados crua, nem extrair os dados
binrios. So utilizados TableSpaces para tabelas e ndices. O conceito de
TableSpace no Postgres tambm diferente dos outros bancos de dados, pois tem
de rodar em diferentes sistemas operacionais e plataformas. Por isso, cada
TableSpace define um diretrio vazio onde o Postgres cria arquivos automaticamen-
te. Esses diretrios so ligados por links simblicos. A rea para catlogo do sistema
e armazenamento temporrio definida na criao do Cluster e no pode ser
modificada. Um mecanismo interno denominado Toast gerencia o armazenamento
de tabelas com mais de 1 GB em colunas de comprimento varivel. Colunas de
tamanho varivel podem ser comprimidas ou no e armazenadas em arquivo
separado da tabela ou no. Isso garante uma flexibilidade maior caso seja preciso
mover os dados para uma mquina fsica ou para o storage.

Seja como for, o Postgres tambm tem limites e defeitos. Esses limites dependem
da verso do sistema operacional e da plataforma. Se por um lado, o tamanho
bsico do banco de dados ilimitado, o tamanho mximo de uma tabela atualmen-
te de 32 TB. Acima disso, tem de particionar. A quantidade de linhas por tabela
ilimitado, mas o tamanho mximo de cada linha 1,6 TB; e de um campo, 1 GB. O
limite de colunas por tabela varia de 250 a 1600, dependendo do tipo de dados. O
nmero de ndices tambm ilimitado e depende da aplicao.

Diante dessas limitaes, preciso recorrer a tcnicas de otimizao de performan-


ce, a exemplo do Vacuum e do Autovaccum. H ainda as ferramentas de gerencia-
mento. A mais conhecida o PgAdmin3. De todas as ferramentas disponveis,
prefiro o PSQL, que parecido com o SQL Plus. O PhpPgAdmin, por sua vez, uma
interface WEB, enquanto o Power Architect serve para fazer modelagem para banco
de dados, uma ferramenta pblica, gratuita e que tem conectores para Postgres
feitos em Java. H tambm softwares proprietrios que fazem gerenciamento em
Postgres, como: Power Architect, Case Studio, Erwin e Power Designer. Essas so
importantes ferramentas de mercado, j consolidadas e com driverr para Postgres
disponvel.

Passemos, ento, a uma questo polmica, a saber, as restries. Normalmente


encontramos restries quando vamos mudar de linguagem, plataforma ou mesmo
banco de dados. Ocorre que, tendo bons mtodos de desenvolvimento, essa
mudana se torna relativamente tranquila. No caso do Postgres, recorrente a
queixa de esse sistema no ter um driverr compatvel com a linguagem de progra-
mao utilizada. Curiosamente, das linguagens mais conhecidas no mercado, no

Frum de TIC Dataprev Banco de Dados 17


Migrao de DMS II para Oracle
Fernando Ike de Oliveira

h driver apenas para o Visual Basic. Para vrias outras, at mesmo para algumas
bem estranhas, como Ada, Algol e Cobol, h. Portanto, possvel programar em
qualquer linguagem que conecte a um banco de dados Postgres. Ele , provavel-
mente, o banco de dados que tem a maior quantidade de linguagens disponvel.

Para escrever cdigos dentro do Postgres, h oficialmente as seguintes Procedural


Languages (PL): Phyton, TCL, Perl, SQL, PgSQL, C; ou qualquer outra que gere uma
biblioteca binria. Outras linguagens disponveis no oficialmente suportadas, mas
muito usadas, so: Java, PHP, R, Ruby e Scheme.

Afora essas, so recorrentes as perguntas sobre o Postgres escala? Como tenho


observado, em 80% dos casos, ela (ela = sistema/software) nunca foi preparada
para trabalhar com cluster. Nunca foi preparada para trabalhar de forma paraleliza-
da. O procedimento quase sempre aplicado tem sido o seguinte: Como no h
escala, o problema repassado para o banco de dados. Chega-se a criar vinte
bancos de dados para resolver o problema. Assim, a DBA, o sysadmin, o administra-
do de rede, enfim, outros tm de se virar. Esse um ponto muito crtico, porque,
dependendo da especificidade, uma soluo melhor que a outra.

No caso do Postgres, a minha resposta bate-pronto. Qualquer especialista consul-


tado vai dizer que no h soluo como Oracle RAC para Postgres. No caso do RAC,
uma estrutura que est acima do banco de dados, que faz outro tipo de controle,
no entra no mrito do banco de dados.

Assim, sempre que se vai desenvolver uma aplicao ou preciso mexer numa
aplicao com problema de performance, as primeiras perguntas que fao so: Que
cuidado foi dispensado previso do volume de dados que pode ser gerado? Foi
estimado o nmero de conexes e transaes? Pensou-se em escalar? A resposta
geralmente negativa.

J aconteceu de haver vrias mquinas com servidor Java na frente que apresenta-
ram problemas de concorrncia. A chave primria ficava presa. A aplicao ficava
lenta, pois no era possvel trabalhar com a chave primria em vrias instncias. O
que serviu para uma aplicao, no necessariamente serve para as demais. Insistir
nisso acaba resultando numa estrutura deficiente, que no foi planejada.
Geralmente nego tambm falas assim: Eu tenho um Data Center em Porto Alegre e
aqui em So Paulo, ou no Rio, ou em Braslia. Ento, eu quero que seja simultneo,
entendeu? Se fizer uma transao aqui, quero que a transao esteja no outro Data
Center (remoto) e que isso seja instantneo, sem que o usurio perceba. A eu falo:
os conceitos de sncrono e no assncrono so muito relativos. Se eu pegar uma
lanterna e acender apontando para o final da sala, parecer rpido e instantneo.
Porm, se fizer a mesma comparao, usando o sol, a luz que sa do Sol e chega
Terra leva oito minutos. Ento, o que sncrono num ambiente transacional comum
no considerado sncrono para esse caso.

Existem, para tanto, algumas solues com estratgias diferentes. Destacarei


algumas para fazer clusters em banco de dados, no caso de Postgres. O PgBouncer
um pooler de conexo. muito usado junto com o PgPool-2, o PL/Proxy ou o Slony
com esse objetivo, pois, geralmente, em virtude de uma traduo diferente, algu-
mas aplicaes acabam fazendo um Select, abrindo uma consulta ou conexo. s
vezes, h cinco ou seis conexes da mesma transao fazendo operaes diferen-
tes, segurando um banco de dados. O PgPool-2, ento, realiza uma aplicao
sncrona de dados ou de banco, servindo tambm como pooler de conexo. Todavia,

Frum de TIC Dataprev Banco de Dados 18


Migrao de DMS II para Oracle
Fernando Ike de Oliveira

isso gera uma perda de performance, o que torna esse recurso aconselhvel
apenas em ambientes muito crticos. Alm do mais, exceto as transaes bancrias
e on-line, a maioria das aplicaes no Brasil que conheo no tem esse tipo de
problema.

O PL/Prox, por seu turno, um tipo de linguagem procedural para banco de dados.
No caso do Postgres, serve para fazer particionamento de dados e tabelas. O Slony e
o Londsite so replicadores assncronos. Servem, sobretudo, para trabalhos com
informaes off-line ou que sero utilizadas de outra forma. O PgCluster seria o
Oracle Rack do Postgres se ele funcionasse. incrvel como ainda tem gente no
Brasil insistindo em usar o PgCluster em ambientes crticos ou em ambientes
pequenos e mdios. Isso no funciona. Ele lento, tem problema de instabilidade, o
cdigo ruim. Em bases acima de 10 GB, costuma cair ou mesmo corromper.

J o PyReplica e o GolConde foram desenvolvidos por duas empresas para fazer


soluo interna como o PL/Proxy e o Londsite, que so ferramentas do Skype. Eles
trabalham com o conceito Two Face Commit (Commit em duas fases), inserida na
verso 8.2 do Postgres. Por exemplo, desejo replicar as informaes que esto em
Braslia para Belo Horizonte. Ele fecha a transao, envia e armazena a informao
numa instncia que est na outra ponta. Isso no lhe impede de liberar a informa-
o a partir de Braslia. Considero o Golconde e o Pyreplica implementaes
interessantes dessa funcionalidade. Tenho feito testes em alguns ambientes e
gostado dos resultados.

O Postgres-R, por sua vez, um partido na viso dos desenvolvedores desse


sistema que precisam de solues de cluster. Ele est sendo trabalhado para se
tornar a soluo de cluster do Postgres, algo semelhante ao Oracle Rack. O Warm-
up/Stand-by corresponde a um conceito clssico, bem conhecido pela maioria dos
administradores de banco de dados.

O Bucardo uma ferramenta de replicao multimaster assncrona, a primeira


ferramenta do Postgres estvel para trabalhos com esse objetivo. O Bizgres para
trabalhar com BI, Datamine. O GridSQL tambm uma modificao do Postgres
para trabalhar com BI, Datamine. Por fim, o Pargres uma soluo desenvolvida,
salvo engano, pela prpria Universidade Federal de Minas Gerais (UFMG) para fazer
paralisao de consulta pensando em BI.

Entre as implementaes do Postgres, podemos destacar o SQL/Med, que permite


a conexo de instncias de banco de dados - no caso o Postgres - ou mesmo
bancos de dados diferentes. Essa estrutura vai mudar um pouco a partir da verso
8.4, pois estamos alterando a API que faz tal comunicao. O DBI-Link uma
ferramenta desenvolvida em PL/Perl, que funciona tambm dentro do banco de
dados. Permite conectar/manipular em qualquer banco de dados suportados pelo
Perl/DBD, como Oracle, MSSQL, Firebird, DB2, Teradata, MySQL, CSV, Excel e at a
BigTable, que o Google liberou. O DB-Link uma funcionalidade que possibilita
conectar/manipular em outros servidores PostgreSQL. O PL/Proxy, como disse
anteriormente, permite fazer particionamento horizontal, replicar ou fazer balance-
amento de carga de tabela e registros.

Embora a maioria dos rgos pblicos sempre queira uma certificao para o
Postgres, ainda no h certificao oficial. Algumas empresas como a EnterpriseDB e
a SRA-JP tem oferecido treinamento com certificao. Com efeito, alguns desenvolve-
dores do Postgres tm plena conscincia desse problema. No caso do mercado,

Frum de TIC Dataprev Banco de Dados 19


Migrao de DMS II para Oracle
Fernando Ike de Oliveira

principalmente, esto trabalhando numa certificao semelhante ao BSD. um


trabalho aberto. Portanto, se as pessoas quiserem contribuir ou saber do estgio
atual, podem acompanhar e dar contribuies para essa certificao. A previso que
daqui a dois anos, ela esteja pronta e seja liberada para uso no mercado. Mais
informaes podem ser encontradas no site: http://www.postgresqlcertification.org.

Uma radiografia bsica - O Postgres tem mais de 800 mil linhas de cdigos. O valor
aproximado do cdigo do Postgres de 1,8 bilho de dlares. O Pgfoundry, que o
repositrio de fomento de projetos, j ultrapassou os 292 projetos e mais ou menos
8 mil usurios. No SourceForge, h mais de 750 projetos com Postgres. So aproxi-
madamente duzentas pessoas envolvidas diretamente, trabalhando com cdigos,
traduo, documentao, caa aos bugs entre os quais eu me incluo. H uma lista
brasileira com cerca de 2 mil pessoas cadastradas para dar suporte. Alm disso,
trinta grupos de usurios esto espalhados pelo mundo, os quais organizam
encontros que entre desenvolvedores, usurios e pessoas interessadas. No Brasil,
essas reunies costumam acontecer no segundo semestre, em setembro.

Funcionalidades para novas verses A verso 8.4 apresentar as seguintes


novidades: Window functions; consultas recursivas; restaurao paralela; permis-
ses em colunas; psql compatvel com verses anteriores; estatstica de funes; e
infraestrutura para SQL/MED. Para a verso 8.5, esto previstos os acrscimos:
replicao sncrona; suporte SE-Linux (SE-Postgres); e Hot Stand-by. Outras altera-
es ocorrero, mas ainda no foi aberto o seu desenvolvimento.

Um estudo de caso - Participamos de um teste. Era preciso subir um novo ambiente


transacional dentro de um cliente para substituir o ambiente transacional antigo,
que estava todo em mainframe. Tinham dvida de onde rodar esse ambiente, no
mainframe (IBM), na plataforma mdia (Sun) e plataforma baixa (I386, AMD64).
Eles nos pediram ajuda para fazer o teste na plataforma baixa. Solicitaram que
utilizssemos Postgres e JBoss e propuseram que fizssemos, no teste, sete cargas
de 1 milho de transaes, na mdia de 750 transaes por segundo. A preparao
do teste, a definio do escopo e a realizao levaram praticamente quatro meses.
No teste na plataforma baixa, chegamos mdia que eles queriam, 750 transaes
por segundo, para 7 milhes de transaes que aconteceram. O mainframe chegou
em mil e poucas transaes por segundo. E a plataforma Sun, que era o Sun One e
Oracle se perdeu no teste. Na segunda vez, pararam de fazer o teste porque s
conseguiram 250 transaes. Na hora de fazer o custo de TCO, contando com o
treinamento dos funcionrios, com a contratao de um suporte 24 X 7 para dar
sustentao operao, mais a aquisio de mquinas, a diferena entre o main-
frame e a plataforma baixa foi da ordem de mais de 100 vezes o custo total. Ento, o
mainframe era cem vezes mais caro do que manter essa soluo em plataforma
baixa. H outros casos. Eu sei que o Serpro usa muito Postgres. O pessoal de
sensoriamento de desmatamento e vigilncia da Amaznia tambm o utiliza para
dados georeferenciados. Outras utilizaes so feitas pela Polcia Federal, o Metr-
SP, a FAB, etc.

Frum de TIC Dataprev Banco de Dados 20


Migrao de DMS II para Oracle
Fernando Ike de Oliveira

DEBATE
N.I.: Debatedor e/ou instituio no identificados.

N.I - Voc conhece ou tem experincia de Mondrian por ndice? Sendo o ndice tambm particionado,
com PostgreSQL? Que contraste h entre ele e o como acesso por meio de um ndice cuja funo join
MySQL para DW com Mondrian? vai entender o ndice particionado e as funes de join
tambm so particionadas?
EBC Eu conheo um caso em virtude de um trabalho
que desenvolvi com uma equipe que trabalhava com EBC - Sim. Isso transparente para quem est
Mondrian. relativamente tranquilo, pois a parte mais fazendo.
pesada Mondrian em si. a seqncia que est
rodando o Mondrian. O repositrio depende muito do N.I. - Mas quais so as funes existentes dentro do
conhecimento das pessoas envolvidas. Se houver Postgres para fazer esse acesso? Porque o particiona-
gente especializada em Oracle, MySQL ou Postgres e mento no fsico, o principal o acesso. Eu no vou
se ajustar a equipe para atender, as performances so
acessar, por exemplo, uma tabela que eu no sintetizo.
parecidas. Naquele caso, saram de MySQL e vieram
para Postgres, sendo a base e a performance muito Eu tenho que primeiro ter o ndice particionado e a
parecidas. funo Join particionada na entrada...

Dataprev - O PL/Proxy no est no core (cdigo EBC - Ento, se voc fizer um Select e Left ou After
principal) do Postgres, isso? Como o trabalho de Join, isso fica transparente.
particionamento? Se particiono a base de dados do
Postgres, mexo em alguma parte do cdigo escrito na N.I. - E quando no transparente?
aplicao? Ou ele fica essencialmente por conta do
PL/Proxy no banco de dados? EBC O que costumamos fazer trabalhar com uma
estrutura de ndice diferente, com ndice invertido.
EBC - Se voc fizer particionamento da mesma Depende do tamanho e da quantidade de particiona-
instncia ou s de locais fsicos diferentes, no mentos. No caso, s do ndice, porque, quando
precisar do PL/Proxy. Agora, se for de muitas instnci- escrevo a clusula e mando para o banco, ele entende
as, vai precisar do PL/Proxy. Era para ele ter entrado na e sabe de onde vai pegar. Ocorre que, em algumas
verso 8.4, mas, como foi identificado que a API do situaes, trabalho com o ndice invertido, que o GIN.
Postgres para esse tipo de funo tinha um problema Na verdade, ele tem uma estrutura de controle. Se
de segurana, ele foi reescrito. Mas, no caso, o vocs forem olhar no cdigo, vero que h um negcio
PL/Proxy tem uma vantagem e uma desvantagem. A chamado Toast, que faz o controle desse tipo de coisa.
vantagem que se consegue fazer o balanceamen-
Eu no olhei o cdigo para saber te responder, mas sei
to/particionamento da forma que quiser. A desvanta-
gem que se tem de escrever aplicao para suportar porque automatizado. S me preocupo com o ndice.
isso. No transparente.
Dataprev - Normalmente quando vamos fazer o
N.I - Para mim, quanto ao particionamento, o funda- projeto, verificamos quais so os critrios principais de
mental no o fsico, mas o acesso. Como o Postgres consulta no banco, os mais crticos. A partir da,
tem as funes de join usando particionamento? criamos as estruturas de banco particionadas e
atreladas a esses critrios de consulta. Ento, acredito
EBC - Particionamento fsico? que no Postgres seja o mesmo conceito. Por que existe
esse tipo de implementao? Por exemplo, podemos
N.I. - No. Eu j tenho a tabela particionada. No particionar por range (intervalo). A, por exemplo, eu
importa como foi fisicamente particionado. Eu quero vou dividir por ano. Mais simples. Ento a minha
saber o seguinte, como o Postgres pega o join, a consulta Where ano igual a tal. Eu s vou pesquisar
clusula where e particiona? Quais so as funes de aquele subconjunto de dados daquela tabela e
join para particionamento? Como particiono o acesso daquele ano. Isso me facilita.

Frum de TIC Dataprev Banco de Dados 21


Migrao de DMS II para Oracle DEBATE
Fernando Ike de Oliveira

Dataprev - Na configurao do Postgres, voc pode SLTI - No tenho dvida de que teremos de conviver
escolher o mtodo de pesquisa a ser utilizado? Ele com a soluo. Outras alternativas disponveis esto
particiona ndice tambm? automtico? Mas voc em todos os nossos sistemas e eu acho que todas as
diz que para particionar tabela e ele particiona instituies lidam como essa questo da misso
ndice? crtica. Nem todos tm programas crticos.

EBC - Particiona ndice. SLTI Penso que temos de acelerar o processo dentro
das alternativas disponveis, conhecendo essas
Dataprev - Voc mencionou o Yahoo como sendo um alternativas, vencendo os nossos mitos. Assim,
grande caso de BI usando Postgres. Voc tem conheci- poderemos chegar do outro lado. Do contrrio, no
mentos de empresas aqui no Brasil fazendo o mesmo? vamos ter alternativas. Atualmente, so bastante
significativos os gastos com esse componente no
EBC - O pessoal que trabalha com SMS para a Tim. nosso oramento de TIs. Precisamos buscar uma
alternativa para isso.
SLTI Essa discusso sobre banco de dados traz
consigo uma questo muito importante que o custo
de Tecnologias de Informao. Os clientes tendem a
querer disponibilidade do negcio, tempo de resposta
e, ainda, pagar menos por isso. Essa uma questo
essencial para ns gestores. Porque quando chega
nossa mesa uma pequena fatura e estamos falando
sobre banco de dados. Vivemos o tempo do mainfra-
me, quando as faturas (custo) eram altssimas e hoje a
vivemos mesmo em uma plataforma aberta e uma
outra fatura enorme. Quem milita na rea e busca
racionalizar a questo da TI sabe que melhorar
tecnicamente essa questo do custo no significa
apenas reduzir, passa por melhorar essa racionaliza-
o dos componentes de TI. Ocorre que o banco de
dados tem se tornado um bandido ao longo dos anos.
Penso que essa uma questo muito importante para
ns que estamos militando e discutindo justamente a
esse respeito. As alternativas oferecidas pelo Postgres
vm de uma realidade para as empresas pblicas.
Temos vrias e cada vez maiores limitaes quanto a
oramento. Ns, que at criticamos a indstria em um
dado momento, que tomamos a deciso de mudar um
paradigma tecnolgico mainframe para uma platafor-
ma, temos de ter responsabilidade de no criar outro
paradigma tecnolgico que nos engesse. Penso que
no precisamos usar a melhor soluo para tudo, mas
precisamos fazer um trabalho das casas de categori-
zar, de buscar alternativas, de colocar a soluo
tecnolgica para a necessidade que tem, com a
negociao com os nossos clientes. Hoje, como
administrador de uma empresa pblica, no tenho a
menor dvida disso. No gostaria de substituir contra-
tos de mainframe por outro fornecedor. O que eu estou
buscando uma alternativa. Se no nos unirmos
nesse sentido, estaremos em srios apuros em breve.

N.I. - Diante dos cronogramas, haveria tempo hbil


para comear a investir nessa possibilidade?

Frum de TIC Dataprev Banco de Dados 22


Tendncias de banco de dados de software livre

Jos Edson Marinho de Souza


Gerente de diviso de tecnologia do Serpro

Nossa rea de trabalho a prospeco de software. Dentro da rea de tecnologia,


h outra diviso voltada para a prospeco e a aquisio de hardware. Ento, tudo
que for referente aquisio de software para os nossos ambientes - no s para
banco de dados, mas para toda a linha - , toda necessidade da empresa acaba
passando por nossa rea de tecnologia. Nesta comunicao, faremos uma aborda-
gem sobre banco de dados especificamente. Ao final, falaremos um pouco sobre a
tendncia Serpro de software livre, dos direcionamentos estratgicos de empresa.
Temos buscado incorporar essa diretriz em todos os segmentos, tanto nos sistemas
operacionais e softwares aplicativos quanto nos bancos de dados da empresa.

O atual ambiente do Servio Federal de Processamento de Dados (Serpro) com-


posto por bancos de dados, operando nos mais variados ambientes operacionais,
por exemplo, mainframe, com Adabas, Risc com Oracle, Intel com SQLServer,
MySQL e PostgreSQL, sendo esses bancos depositrios de grandes volumes de
informaes. Tendo em vista os bancos de dados em Oracle, os principais sistemas
so: o Sistema Integrado de Informaes Econmico-Fiscais (Sief); o DW Receita
Federal; e o Sistema Integrado de Administrao Financeira (Siafi).

O Sief um sistema gigantesco, com bancos de dados trabalhandos em cluster


Oracle, numa plataforma Risc, sendo que esse cluster composto por trs servido-
res e trs instncias operando simultaneamente. Com isso garantimos tanto a alta
disponibilidade quanto a acessibilidade. Alm do mais, ele tem aproximadamente 5
TB. O DW um banco de acesso on-line para as Delegacias da Receita Federal
distribudas em todo o Brasil. Grande parte do atendimento ao pblico da Receita
feito por meio desse sistema. Trata-se de um banco extremamente crtico. Qualquer
problema que acontea dentro de um ambiente como esse traz consequncias
diretas populao. Felizmente, h algum tempo no temos tido esses contratem-
pos. O Siafi outro banco crtico. Toda a informao financeira de governo fica
armazenada ali. Esses trs bancos de dados trabalham em plataforma baixa, em
ambiente Risc, com o Unix .

Tendo em vista o nvel de interao, a forma de acesso, o volume de acesso a dados


e a necessidade de integrao dos sistemas estruturadores do Governo citados
anteriormente, operando sob sistemas operacionais Risc ou Cisc, com as bases de
dados do mainframe, os referidos sistemas constantemente vo ao mainframe para
buscar informaes e retornam para atualizao dos bancos de dados da platafor-
ma baixa (Risc ou Cisc). Os bancos de dados de plataforma baixa atualizam bases
no mainframe e sofrem atualizaes dele por meio da interao entre as platafor-
mas.

Afora esses trs sistemas citados, h uma gama imensa de bancos de dados no
ambiente de plataforma baixa. Se formos falar somente em Oracle, so mais de 140
bancos de dados com dimenses diferentes. O menor tem aproximadamente 100
GB. So raros os casos de bancos pequenos na estrutura do Serpro, quando o SGBD
Oracle. Geralmente so bancos institucionais para atendimento aos clientes e
que, portanto, tm a populao como usurio, sendo, portanto, de grandes volumes
e altssima criticidade.

Frum de TIC Dataprev Banco de Dados 23


Tendncias de banco de dados de software livre
Jos Edson Marinho de Souza

O SQLServer outra infraestrutura muito grande, destinada, principalmente, para


bancos crticos. Rene cerca de 1800 bancos, mas optamos por trazer apenas dois
exemplos. O primeiro o banco de Notas Fiscais Eletrnicas (SPED), que nasceu
particionado, com 2 TB e a possibilidade de crescimento, tendo em vista o armaze-
namento de todas as notas fiscais que tramitam no pas. uma estrutura bastante
consistente, trabalhando com uma srie de servidores. No opera com cluster ativo-
ativo, como caracterstica do SQLServer, mas com alta disponibilidade, com ativo-
passivo. O Oracle j trabalha de forma ativa-ativa. O outro exemplo de banco de
dados em SQLServer o da Secretaria do Tesouro Nacional (STN).

No importa a finalidade dos bancos, todos so crticos e assim so tratados dentro


do nosso ambiente, com nvel de criticidade estabelecido nos acordos de nveis de
servio. Entre os clientes que utilizam nosso ambiente, esto: Receita Federal do
Brasil, Secretaria do Tesouro Nacional, Ministrio dos Transportes, Ministrio do
Planejamento, Tribunal de Contas da Unio (TCU), Polcia Federal, Presidncia da
Repblica, Instituto Nacional de Colonizao e Reforma Agrria (Incra) e Instituto
Chico Mendes. Estamos falando de usurios com seriais e ambientes completa-
mente distintos, com respectivos nveis de criticidade muito altos e, em decorrncia
disso, acordos de nveis de servio compatveis com a importncia e a criticidade
dos servios/sistemas desses usurios/clientes - obviamente, dentro de suas
regras, polticas e do seu negcio. Ainda que o usurio final no chegue ao mainfra-
me, sua aplicao o acessa por meio das rotinas de sistemas. Essa integrao
constante para a maioria dos sistemas existentes no Serpro. muito difcil ter no
Serpro um sistema que seja totalmente independente, que no busque e traga
informaes ou no sofra influncia ou atualizao de outras bases. A maior parte
dos sistemas trabalha de maneira totalmente integrada.

Ainda sobre nosso ambiente atual, temos aproximadamente 220 bancos em


MySQL. Cada base tem aproximadamente 30 GB de volume de dados. Em
PostgreSQL, h cerca de 120 bases de dados, com volume de 800 GB. Trabalhamos
com o Postgres desde a verso 7.4.

Inicialmente, falei do Sistema de Nota Fiscal Eletrnica (Sped) operando em


SQLServer, fazendo acesso a mainframe. Ns j estamos partindo para a criao de
ambiente operacional para esse mesmo sistema, atuando em ambiente operacio-
nal com PostgreSQL, com a perspectiva de parte de um sistema muito crtico, como
o Sped, entrar em produo nos prximos meses em base de dados em software
livre. Assim como ele, h outros sistemas crticos operacionais em software livre.

Outro sistema com tendncia a ter parte ou a totalidade de sua base em PostgreSQL
o Sistema de Medio de Vazo (SMV), da Receita Federal, cujo ambiente de
produo instalado em cada distribuidora e envasadora de bebidas no pas, a fim
de fazer a aferio do processo/volume de envasamento. No toa que o Governo
tem aumentado consideravelmente seu montante de arrecadaes. Podem at
diminui os volumes/valores das taxas, porm a arrecadao continuar aumentan-
do consideravelmente em virtude da melhoria nos sistemas e na fiscalizao pelos
rgos de Governo. Mais um sistema crtico tambm presente nesse ambiente, com
SGBD em software livre, o da Relao Anual de Informaes Sociais (Rais). Tanto o
banco da Rais quanto o do SMV tiveram, na ntegra ou em parte, suas bases migra-
das do ambiente mainframe para a plataforma baixa em PostgreSQL. Nesse
momento, ainda no trabalhamos com Postgres em sua plenitude, porque falta
implementar efetivamente a alta disponibilidade.

Frum de TIC Dataprev Banco de Dados 24


Tendncias de banco de dados de software livre
Jos Edson Marinho de Souza

Gerncia de multitecnologias Como gerenciamos todo esse ambiente de banco de


dados e de servidores, sistemas operacionais e softwares aplicativos? H um
software livre chamado Zabbix, que disponibiliza a informao pontual quando uma
tabela est atingindo 80%, 70% de sua rea alocada. Voc define o limiar e, com
base nesse parmetro, o software coleta e envia a informao para uma Central de
Gerenciamento. O Zabbix est integrado ao processo de gerenciamento e monito-
ramento dos servidores e servios do Serpro e, dessa forma, envia um trap no
caso da ocorrncia de algum desvio no ambiente de bancos de dados e sistemas
operacionais. A partir da, um incidente automtico aberto e encaminhado para a
classe responsvel pela soluo. J est implementado h um bom tempo, embora,
em nossa opinio, ainda haja algumas limitaes e possibilidades de melhoria, nas
quais estamos trabalhando. Atualmente, a soluo responsvel pela centralizao
do gerenciamento dos servidores do Serpro em plataforma baixa o HP OpenView,
uma ferramenta de gerenciamento e monitorao de ambientes, adquirida em
certame licitatrio.

Seguindo o processo de gerenciamnto e monitoramento, temos as torres de contro-


le, que so as reas de gesto de servio, ou seja, reas que recebem as informa-
es quando da ocorrncia de desvios nos ambientes operacionais e ficam encarre-
gadas pelo processo de notificao e contatos, verificao, cobrana e conferncia
para que os incidentes abertos por meio de um chamando pela ferramenta Zabbix
ou pelo Open View estejam com o atendimento no prazo, conforme acordo de nveis
de servio estabelecidos para cada sistema.

Existe toda uma tecnologia aplicada s ferramentas de gerenciamento, que, por si


s, no agregariam valor algum. lgico que o valor principal o conhecimento do
negcio e dos ambientes onde os negcios esto aplicados. No adiantaria nada ter
essa ferramenta se, ao configurar o trashold, se deixasse um limiar muito pequeno
e, de repente, ele estourasse de uma forma muito rpida. No daria tempo de
interveno. Ento, a maneira como o negcio pode e deve ser tratado reflete na
configurao das ferramentas de gerenciamento. No d para trabalhar de maneira
totalmente igual em nveis de servio diferentes. preciso levar cada caracterstica
de acordo com a necessidade de cada ambiente. Por isso, para disponibilizar um
servidor/servio, podemos fazer a configurao Default e, posteriormente, ajustar
os parmetros e o detalhamento do esquema de configurao, adequando o
ambiente e o sistema monitorado com os nveis de servio acordados.

Segurana de banco de dados - Os bancos, normalmente, ficam em DMZs distin-


tas, separadas e protegidas por firewall. Ou seja, o usurio no acessa diretamente
os bancos. Quem faz isso so servidores ou servios de aplicao que ficam em
outras DMZs.

H uma briga muito antiga sobre essa questo do bloqueio de usurio para o acesso
aos bancos de dados desde o comeo da implantao dos sistemas em ambiente
produtivo. Os desenvolvedores sentem a necessidade de ver os dados sua frente
medida que julguem conveniente, recomendado ou imprescindvel, ainda que sem
ter o poder de entrar nos bancos e fazer alteraes. No Serpro foi definida uma
poltica no sentido de conscientizar os profissionais das reas de desenvolvimento
de que eles so usurios do ambiente produtivo. Dentro do ambiente de produo,
no podem e no tem um perfil que os permita fazer alteraes nesse ambiente.
Isso se tornou regra e tem sido colocada em prtica. Falta um pouquinho para
chegar ao estado da arte, mas caminhamos para isso.

Frum de TIC Dataprev Banco de Dados 25


Tendncias de banco de dados de software livre
Jos Edson Marinho de Souza

Quanto ao ambiente de homologao e treinamento, os dados so completamente


descaracterizados, porque tudo o que temos em nossos ambientes diz respeito a
clientes, a pessoas fsicas, pessoas jurdicas, ou seja, diz respeito a nomes e
informaes pessoais e empresariais. Quando temos necessidade de treinamentos
o que uma constante - , os recortes dos dados dos bancos so completamente
descaracterizados, mantendo somente a regra de negcio. Ou seja, faz-se o treina-
mento, obtm-se todas as informaes de negcio necessrias, mas no se tem
acesso s informaes pessoais de cada cidado cujos dados esto armazenados
na base.

Alm do bloqueio ao acesso do servidor de banco de dados e as DMZs diferentes


com regras abertas entre esses ambientes, h ainda a poltica de backup com
garantia de restore. O backup algo muito fcil de ser feito. O problema normalmen-
te aparece na hora de restaur-lo, pois existem estruturas gigantescas que trazem
problemas crnicos. s vezes temos de recuperar parte de um banco de dados, um
trecho de informaes de um banco, para depois recortar uma informao deseja-
da.

Hoje, para o backup, utilizamos a ferramenta proprietria Tivoli Storage Manager


(TSM). Trabalhamos dentro da estrutura com Lan Free Backup. Nossa infraestrutura
robtica foi recentemente migrada e atualizada. Estamos com uma capacidade
muito boa de silos robticos. Os bancos de dados principais esto com archiving
habilitados, por isso possvel continuar em processo de atualizaes enquanto o
backup realizado.

Quanto tempo aproximadamente gasto para se fazer um backup? Voc tem


storage? A rotina de backup com a qual trabalhamos prev um pool de discos, para
onde, primeiramente, os dados so levados, uma vez que o tempo de gravao em
disco muito menor do que o tempo de gravao em fita. A partir da, o TSM comea
a fazer vazo para as fitas. Os dados backupeados residem, definitivamente,
sempre em fitas. Se houver a necessidade de restore, isso ser feito por meio da
base de fitas robotizadas. Esse ambiente de produo todo montado em discos DS
8300 IBM, Hitachi, HP, discos de alta capacidade.

Tem uma srie de aplicaes que estamos procurando fazer a migrao de mainfra-
me para a plataforma baixa. Por exemplo: Uma aplicao de patrimnio interno da
empresa, o Adpat, estava no mainframe e ns j procuramos fazer o teste para
produzi-lo em plataforma baixa. Fizemos uma srie de estudos, at mesmo sobre o
custo de uma aplicao no mainframe para podermos dispor cada servio no
ambiente mais adequado. No mainframe, permanece o que crtico, o que
imprescindvel, o que ocupa dimenses gigantescas, o que requer o nvel diferencia-
do que o mainframe consegue prover. Por outro lado, no tem muito sentido perma-
necer com um sistema de patrimnio interno da empresa no mainframe, uma vez
que onera todos os outros sistemas crticos. Ento, procuramos fazer esse tipo de
anlise e estabelecer essa definio para comearmos a alinhar o que permanece e
o que sai do mainframe.

Proposta para banco de dados de software livre - Nossa equipe tcnica realizou
laboratrios/testes recentes, tanto aqui em Braslia quanto em So Paulo. Nesse
laboratrio, precisvamos aferir efetivamente o nvel de confiabilidade da utilizao
do PostgreSQL em cluster. Isso porque temos sistemas crticos, aproximadamente
110 bancos de dados, que esto em Postgres. Porm, todos so single instance, ou
seja, no trabalham com clusterizao, nem com alta disponibilidade. Temos toda a
segurana de backup e segurana de dados, mas, se perdermos um servidor
completamente, teremos de fazer restore. E isso gera uma indisponibilidade. por

Frum de TIC Dataprev Banco de Dados 26


Tendncias de banco de dados de software livre
Jos Edson Marinho de Souza

essa razo que outros sistemas ainda no entraram em ambiente de software livre
com bancos de dados PostgreSQL.

A tendncia do Serpro, a partir dos laboratrios que realizamos, comear a criar


ambientes clusterizados com PostgreSQL - o banco que o Serpro identificou como
aquele que melhor se adqua nossa necessidade, ao nosso direcionamento e
nossa meta. Com a criao desses clusters de alta disponibilidade, garantiremos
um bom SLA para determinadas aplicaes. A sim, poderemos investir mais
efetivamente no crescimento da utilizao dessa plataforma.

A opo pelo PostgreSQL foi um direcionamento estratgico do Serpro, definido a


partir de uma orientao do Governo. Este governo vem preconizando o uso do
software livre de uma forma muito ntida, e o Serpro, como um dos rgos de TI do
Governo, assumiu essa premissa. O PostgreSQL um direcionamento interno no
Sepro. Utilizar o Linux, principalmente, sem subscrio um direcionamento do
Sepro para que tenhamos reduo de custos. Fazer migraes de uma srie de
aplicaes, tanto de alta para baixa quanto de SQL e de Oracle - que no tenham
necessidade de ficar no Oracle ou no mainframe - tambm um direcionamento,
devendo essas aplicaes ir para bancos de dados livres. Principalmente porque
teremos a possibilidade de disponibilizar clusterizao para esses ambientes.

Uma dvida que tnhamos no laboratrio era a questo do fencing no banco de


dados do cluster. Para os bancos de dados de PostgreSQL, no tnhamos realizado
um teste efetivo de no corrupo de base, por exemplo. Ento, tivemos de parar e
fazer isso em So Paulo e Braslia para chegarmos realmente concluso de que
hoje temos segurana para comear a colocar aplicaes mais crticas dentro desse
ambiente (SGBD livre - PostgreSQL).

Nesse sentido, quanto mais caminhamos, mais avanamos em direo ao Linux Figura 1
sem subscrio e ao PostgreSQL. Isso sem abrir mo daqueles servios de misso Proposta de Banco de
crtica, que tm de ficar e vo permanecer no mainframe ou no Oracle. At porque Dados em Software
no podemos ser to inflexveis a ponto dizer que
vivel tirar tudo do mainframe e colocar numa platafor-
ma baixa. Essa ainda no nossa realidade. Mas cada
ambiente tem uma caracterstica, um nvel de comple-
xidade e um nvel de necessidade. Baseado nisso
que o Serpro, como empresa, est trabalhando.

Vamos permanecer com uma srie de ambientes


distintos. Mas o crescimento e a evoluo, com
certeza, vo ser sistemas de softwares sem subscri-
o. mais ou menos o que estamos projetando ao
trabalhar com dois ou mais servidores atuando em
cluster, com banco de dados em software livre (Figura
1)

O quadro apresenta a Red Hat Cluster Switch. O


esquema ali apresentado j est sendo mudado.
Passamos a trabalhar com Centos, que disponibiliza-
do pela Red Hat para comunidade de software livre,
porm sem subscrio. essa tecnologia que deve ser implementada dentro desse
novo ambiente. Na criao da infraestrutura fsica dos servidores, trabalharemos
com GFS ligados em sute e com acesso a uma mesma base de discos. Cabe
observar que os servidores precisam ter disponvel, alm de capacidade de proces-

Frum de TIC Dataprev Banco de Dados 27


Tendncias de banco de dados de software livre
Jos Edson Marinho de Souza

samento, porta de comunicao, placas de rede e placas HBA. Voc ganha em


segurana, mas tem de ter o recurso suficiente para prover essa segurana.
Conectar um cabinho de um lado pra outro, entre os servidores, fazendo Cross para
Hartbeat funciona? Funciona. S que no uma soluo elegante e nem traz
segurana quando tratamos de ambiente produtivo e profissional. apenas uma
soluo que funciona. Mas no se trata de uma soluo aplicvel para centros de
dados.

DEBATE
N.I.: Debatedor e/ou instituio no identificados.

Dataprev Sobre a migrao do sistema Rais. Vocs precisa fazer aquele restore. Ento, vocs tm uma
estavam fazendo do mainframe para Postgres, rea de disco ou em outro servidor, semelhante quela
correto? Como estabeleceram essa estratgia? Foi onde voc fez os dados originais, para praticar de vez
pensado em Oracle? Por que no foi? Como vocs em quando o restore, ver se realmente a ferramenta
partiram para a definio j explcita de Postgres? est funcionando? Se ela realmente est atendendo
as suas expectativas? Ainda sobre a recuperao, de
Serpro Havia um direcionamento de Governo para a vez em quando voc tem de recuperar dados para
definio da plataforma ou, preferencialmente, para atender a aplicao, ou seja, uma coisa fazer o
utilizar plataformas livres. A equipe de desenvolvimen- restore da sua base em cima de incidentes ou proble-
to responsvel pelo sistema Rais j se sentia confort- mas de servidores; outra coisa ter de recuperar
vel e vontade o suficiente para trabalhar com esse dados para atender um problema da rea de negcios.
sistema dentro da plataforma, uma vez que ela j
garantia estabilidade e performance. Todas essas Serpro - Quanto recuperao parcial, medida que
definies foram feitas em conjunto, com as equipes temos necessidade, vamos criando um ambiente
de desenvolvimento, as reas de suporte do Serpro, paralelo para fazer a recuperao das tabelas.
bem como com as reas do cliente, que so os donos Recuperamos, trazemos a tabela, o subsite do banco,
efetivos das informaes. Ento, j partimos para e, a partir da, fazemos o recorte necessrio para as
atender o direcionamento conhecendo a potencialida- atualizaes na tabela do banco principal. Essa uma
de, a capacidade e a especificidade da demanda e da caracterstica. Em relao a ter um ambiente idntico
soluo proposta. Hipoteticamente, caso a Receita para fazer restore, isso seria impraticvel hoje em
decida fazer uma migrao de um sistema de sua base termos de volumes. Voc pega um banco de dados s,
de dados, e no queira utilizar a plataforma baixa para a exemplo do Sief, so trs instncias, em um s
esse sistema, ns teramos de coloc-lo em outra banco, so trs ns de Risc, cada n com determinada
plataforma. O direcionamento seria para alocar em quantidade de processadores, cada n com grande
software livre. De todo modo, a prpria Receita, por rea de memria e discos alocados. A ltima vez em
meio de um dos mdulos do Sped est vindo para o que acompanhei, estava com 35 GB de memria para
PostgreSQL. um n. imprescindvel ter performance. Voc tem
uma quantidade de placas de rede alocadas virtual-
mente por meio do Virtua IO, e bancos com placas de
Dataprev Sobre as reas de banco de dados e do
rede alocadas. Alis, mquinas com placas de rede
projeto de migrao, falou-se que o backup a parte
que tambm podem ser alocadas fisicamente. Toda a
mais fcil, bem como sobre a garantia do restore.
infraestrutura de IO direcionada s para esse ambien-
Tambm comentou que h uma rea que faz os
te em funo de sua criticidade. Criar ambiente similar
backups para o disco e depois direciona l para as a esse para testes impraticvel. Quando dizemos ter
robticas. Dentro dessa garantia, vocs fazem testes a garantia de conseguir restaurar, alm de j termos
contnuos ou peridicos desse restore? Define a feito restore, temos o sistema de backup. Hoje, ele faz
poltica de backup, implementa e, de repente, voc o backup, gera os logs daquilo que levou, informa de

Frum de TIC Dataprev Banco de Dados 28


Tendncias de banco de dados de software livre DEBATE
Jos Edson Marinho de Souza

que maneira est armazenado e em que fitas esto. Temos uma discusso grande com as equipes da
H ainda uma rea que acompanha isso, tambm produo acerca dos volumes. Dentro da empresa,
mediante processo automatizado. Temos uma ferra- tambm normatizada uma quantidade de registros
menta de automao de produo chamada Control- que pode ser tratada no ambiente de desenvolvimen-
M, que gerencia toda a execuo dos backups. A partir to, que pode ser passada do ambiente de desenvolvi-
do momento em que temos o backup executado, com mento para o de produo, mas que, normalmente,
return Code Zero, ou seja, foi executado com suces- no atende aos volumes necessrios para testes de
so, aquelas informaes esto reservadas, esto DWs e sistemas de informao gerencial. Queria saber
armazenadas em fita, certo? Se tivermos qualquer se vocs tm alguma poltica diferenciada nesse
problema com a fita, a empresa responsvel pelos aspecto. Uma segunda curiosidade sobre a desca-
auxlios robticos ou pela soluo vai se virar no que racterizao dos dados. Gostaria de saber se vocs
for, mas vai ter de trazer as informaes. tm alguma ferramenta para fazer isso ou se feito por
meio de codificao mesmo.
Dataprev Ns j tivemos problemas com algumas
ferramentas. Usamos o Archi Server. Temos o Legato.
Dataprev - A nossa caracterizao do dado - e a s
Temos tambm um dos primeiros bancos, uma
um complemento - nem sempre totalmente poss-
ferramenta desenvolvida na casa que opera por meio
de file system, que seria o CPIO mesmo, direto. vel. Se voc vai homologar uma soluo e levar dados
Passamos por situaes como: tnhamos a data da fictcios, no conseguir realmente homologar aquele
expirao para a ferramenta, mas a da fita j estava produto. Ento, a descaracterizao feita conforme a
vencida. Com isso, ele considerava aquela fita como regra de negcios e o desenvolvimento responsvel
scratch e no conseguamos mais recuperar a infor- pelo processo de descaracterizao.
mao. De certa forma, concordo contigo, se for
possvel exigir isso no contrato, bom obrigar o Serpro - Ou seja, o desenvolvimento que acaba
fornecedor a fazer de tudo para que a fita volte a ser fornecendo no necessariamente a massa de dados,
utilizvel. Mas se o cara no conseguir, voc perder mas a forma de descaracterizar aqueles dados que
essa garantia desse restore e ficar na mo do forne- sero colocados em ambiente de treinamento de
cedor. Seja como for, em algumas situaes temos de homologao futura.
ter essas polticas de backup muito bem definidas.
No que nem o banco como um todo, voc tem uma Dataprev - So o desenvolvimento e o cliente, que
rea comum, que deve ser nica, em que a cada hora dono da informao, os que definem o nvel de desca-
se joga um banco ali e vai para a robtica. racterizao possvel naquele ambiente de testes e
homologao.
Serpro - At pode, mas dentro do volume de banco de
dados existente. Essa rea est em uso constante- Serpro - Outra questo est em relao s quantida-
mente. Enquanto um banco est subindo para fita, j des, manuseio ou extrao dos dados, vale lembrar
tem outro subindo com backup. Ento, voc tem de ter que o cliente, que o dono dos dados, Receita ou
a janela totalmente bem dimensionada para conseguir qualquer outro cliente, quem vai utilizar os dados
atender todo o parque de banco de dados que h na extrados aps a descaracterizao dos mesmos. Para
sua empresa. ser feita qualquer extrao de dados da base para
homologao, o dono das informaes tem de nos
Dataprev - Perfeito. Nossa poltica de backup passar autorizao formal, por escrito com os volumes
validada pelo DBA operacional. Quando voc implanta e as autorizaes. S assim feito o processo de
o produto, a aplicao na produo, a poltica, extrao, mesmo seguindo todo esse processo Itil. A
validada e testada o store em ambiente de homologa- autorizao do cliente faz parte do processo.
o. Assim, garantimos que aquele modelo de backup
desenhado para aquela soluo funcione. Agora, Dataprev - Existe algum critrio formal para definir as
quanto garantia de que voc recupere um versiona- plataformas de bancos de dados? Como isso acontece
mento de backup, realmente o produto quem tem de efetivamente?
garantir isso.
Serpro O cliente quem demanda, quem contrata o
Dataprev - Mencionou-se a existncia de uma poltica servio do Serpro, juntamente com a unidade de
para os ambientes de produo, homologao, teste e negcios, responsvel por comprar ou vender o
desenvolvimento. E tambm ouvimos que o desenvol- servio com o Serpro. Eles definem a plataforma de
vedor no tem acesso ao ambiente de produo. acordo com a caracterstica. Embora seja possvel que

Frum de TIC Dataprev Banco de Dados 29


Tendncias de banco de dados de software livre DEBATE
Jos Edson Marinho de Souza

um produto funcione em Postgres, o cliente pode


querer uma plataforma proprietria. Ento, ter de
pagar o preo de uma plataforma proprietria. S que
o direcionamento dado tanto pelas reas de desen-
volvimento quanto pelas reas de negociao inter-
nas. Alguns bancos, algumas plataformas j so de
uso constante. Leva-se isso para as reunies com os
clientes e tenta-se mostrar a viabilidade e a adequa-
o daquela regra, daquele negcio ou daquele banco
a essa estrutura.

Dataprev - bem similar Dataprev. A estratgia que


queremos adotar para os sistemas em SQLServer e
comear por eles, porque eles esto dentro da nossa
seara de sustentao.

Frum de TIC Dataprev Banco de Dados 30


Perspectivas Futuras para Tecnologia de Bancos
de Dados
Wagner Meira Jnior
Professor adjunto do Departamento de Cincia da Computao
Universidade Federal de Minas Gerais (UFMG)

A discusso que proponho aqui tem como ponto de partida tanto os novos tipos de
dados quanto os j existentes, mas que precisam ser tratados de alguma forma.
Trata-se da fora motriz que vai impulsionar o desenvolvimento das tecnologias
sobre as quais falarei aqui.

O primeiro caso corresponde aos dados no estruturados, que compreendem textos


de vrias origens, ou seja, toda sorte de documentos que tramitam nas organiza-
es, em processos administrativos, laudos, etc. A integrao de tais documentos
figura como um desafio, na medida em que eles tm origens e construes diferen-
tes, bem como apresentam linguagens ambguas. Solucionar as ambiguidades e,
ao mesmo tempo, integrar os dados so questes ainda em aberto.

Os dados multimdia formam o segundo conjunto de informaes que nos interes-


sam. Trata-se de dados registrados em som, imagem e vdeo. Existe uma quantida-
de enorme de elementos nessa direo. Tendo em vista os clientes da Dataprev,
vamos pegar o caso do Instituto Nacional do Seguro Social (INSS). Percias, fotos,
radiografias, exames, entre vrios outros documentos, tudo isso tem de ser armaze-
nado. Mais complicado do que armazenar vem a ser representar esse contedo e,
eventualmente, extrair informao dali. De todos, os registros de udio so os que
tm tecnologia mais desenvolvida para tanto. H vrios programas que transfor-
mam falas em textos. Com efeito, quase certo depararmos com o problema da
ambiguidade em falas, tal como mencionado para o primeiro grupo.

Os documentos em imagem e vdeo trazem outras dificuldades. Estamos diante do


problema da viso computacional. No adianta simplesmente armazenar a ima-
gem, porque quando for preciso recuperar as informaes ali contidas, ela no vai
fornec-las por si s. Uma sada possvel tem sido dada pelo recurso aos usurios da
WEB, que atribuem categorias de sentido s fotos. Ou seja, os usurios esto sendo
chamados a classificar as fotos em benefcio da coletividade como um todo. At
porque muito difcil determinar matematicamente ou por meio de algoritmos os
elementos que caracterizam uma imagem. A anlise de vdeo ainda mais compli-
cada em razo de seu dinamismo. Isso, porm, no tem diminudo a sua permeabili-
dade e o seu enorme impacto. Atualmente, um tero das buscas do Google vem do
Youtube, o que atesta o apelo da informao em vdeo.

O terceiro grupo de dados extrapola os limites dos casos anteriores, embora ambos
possam estar includos em virtude de sua riqueza semntica. Estamos falando dos
dados sobre relacionamentos, causalidades e temporalidades. Sua natureza
complexa, por exemplo, pode ser percebida luz dos casos de redes de fraudadores
que guardam uma enorme variedade de relacionamentos. Lidar com essa multipli-
cidade de relacionamentos tem sido um problema quase intratvel. Com efeito, se
armazenar esses dados no tarefa fcil, o que dizer, ento, do trabalho de dispor
esses dados de forma que seja possvel acess-los e, ainda, manipul-los. nesse
momento que as questes de causalidade e temporalidade entram em cena. Isso
por si s aumenta a complexidade da busca nos bancos de dados.

Frum de TIC Dataprev Banco de Dados 33


Perspectivas Futuras para Tecnologia de Bancos de Dados
Wagner Meira Jnior

Retrospectivamente, possvel dizer que, ao tempo em que o modelo relacional


permitiu um maior nvel de organizao e favoreceu a popularizao do uso da tecnolo-
gia de banco de dados, acabou abafando diversas iniciativas e vertentes que poderiam
ter sido mais interessantes. Uma dessas tecnologias interessantes que no prosperou
foi um banco de dados chamado PIC, que possua caractersticas fantsticas como
tamanho de campo no limitado. A julgar pelo que atualmente ocorre na WEB,
possvel imaginar o impacto que aquela tecnologia poderia ter tido dentro das organiza-
es. Embora tenha algumas reservas aos usos da WEB como um parque de diverso,
algo utilizado sem muito compromisso, em que no h muita qualidade de entrega,
indiscutivelmente possvel extrair dali elementos fundamentais para influenciar o uso
dos bancos de dados.

Outros fatores tecnolgicos tm concorrido, paralelamente, para mudar as arquitetu-


ras dos bancos de dados, exigindo, em muitos casos, o redesenho das opes de
construo de projetos no apenas dos bancos, mas das ferramentas do sistema de
gerenciamento em plataformas multi-core. Essas plataformas multi-core j existem. H
vinte anos, o Oracle j fazia processamento em multiprocessadores, mas vrios
problemas permanecem em aberto. Para se ter uma ideia, at hoje, ningum sabe
fazer uma juno em paralelo eficientemente. Ningum sabe se solvel. Nos termos
do uso em escala de paralelizao, isso demandaria que se expurgasse a juno das
tarefas a serem paralelizadas. Isso tornaria a juno invivel? No, mas teria de ser
feito de outra forma, ainda que mantendo o mesmo ponto de vista. Seja como for, a
construo de banco de dados para plataformas multi-core ainda algo que gera
muitas discusses.

Outra questo interessante advm do uso de placas grficas. H uma nova gerao de
arquitetura de processadores representada pelas placas grficas e pelo chamado Cell.
Trata-se de processadores assimtricos heterogneos, com unidades de processamen-
tos especializadas e que mudam uma caracterstica fundamental das arquiteturas X86
tradicionais, a saber, so otimizados para throughput e no para latncia. Com efeito, o
uso desses processadores s faz sentido quando se faz uma sequncia enorme de
tarefas. Cada tarefa em si acaba sendo um pouco mais longa, mas existe um ganho na
amortizao da paralelizao dessas tarefas.

Uma placa grfica de mil reais nos permite, atualmente, realizar centenas de opera-
es simultneas. Alcanamos ganhos da ordem de 200 vezes em relao verso
sequencial no caso de aplicaes de uso intensivo. Num ambiente em que custo e
desempenho so fundamentais, fica, ento, a pergunta: quando esse tipo de estrat-
gia ser, efetivamente, explorada no sistema gerenciador do banco de dados? Um
Playstation 3, que est disponvel em qualquer loja, muito mais potente que o top de
linha da Intel do ponto de vista de capacidade de processamento, dependendo da
aplicao feita. H, portanto, um caminho alternativo s arquiteturas Intel. A desvanta-
gem a ausncia de software.

De todo modo, uma tendncia para qual devemos nos atentar. At porque, a grande
lio tirada de ambientes como o Google foi: dependendo do volume e da especificida-
de, compensa redesenhar tudo. Esse um desafio interessante para rea de informti-
ca em geral, pois, at certo ponto, estvamos naquele esquema de boi no confinamen-
to. Uma sacolejada dessas propores nos obriga a parar e avaliar os rumos do
mercado de software. Notem que o aplicativo multi-core um negcio que ainda no
existe. Imaginem o que pode ser feito para essas coisas que falei aqui.

A memria flash tambm aparece entre as novas possibilidades. Tendo em vista as


especificidades dos membros desse frum, o acesso uniforme memria secundria
no vai alterar tanto suas respectivas realidades, pois as mquinas no desligam,

Frum de TIC Dataprev Banco de Dados 34


Perspectivas Futuras para Tecnologia de Bancos de Dados
Wagner Meira Jnior

trabalham 24 X 7. Mesmo assim, do ponto de vista da confiabilidade, isso pode


representar alguma mudana. Caso a mquina venha a ser desligada, no se
perdem as informaes. Alm disso, possvel criar mecanismos de redundncia os
mais variados. Estamos falando de uma tecnologia cara, mas temos de nos atentar
para o fato de que ela rompeu a barreira do eletromecnico do disco, o que diminui a
tendncia de falha.

Nessa mesma linha, temos a computao em nuvem ou cloud computing, que traz a
questo da terceirizao. O preo do armazenamento da Amazon, certamente,
obriga-nos a pensar sobre as vantagens desse servio. O preo bastante reduzido
que a empresa cobra para manter um terabyte faz a opo de colocar ali nossos
backups algo bem interessante. O caso que armazenar o backup no tudo. A
questo da computao em nuvem traz um dilema: mais interessante optar por
um grande volume de mquinas de menor custo ou um nmero menor de mquinas
de alto custo? Qual o compromisso a ser adotado entre custo e tolerncia a falhas?
Essa discusso colocada em um livro disponvel na WEB de autoria do engenheiro
Luiz Barroso, um dos que conceberam o sistema do Google. So elementos que
eventualmente precisam ser amadurecidos. No que eu esteja sugerindo a substi-
tuio do mainframe por essa opo, mas se trata de algo que est caminhando.

O fato que tudo isso est relacionado ao desafio da confiabilidade. Uma forma
interessante de tratar disso recorrer ao exemplo do Google e outros que seguiram
estratgia semelhante. Eles romperam com um pacto de mediocridade que existia
na microcomputao. Primeiramente, apresentaram a ferramenta de busca que
responde com muito mais informao e mais rapidamente. No departamento de
computao da UFMG, acontece um fenmeno que para mim demonstra a supera-
o operada por eles: acessar o Gmail de dentro do departamento algo que
consome menos tempo que acessar o e-mail institucional. Alm disso, quando todo
mundo dava 20 MB de e-mail, eles disponibilizaram 1 GB.

Sero necessrias dcadas, geraes para resgatarmos a reputao da rea de


informtica considerando uma srie de fracassos e problemas recentes que tem
afetado a sociedade como um todo. Todavia, o exemplo serve para demonstrar
como possvel trabalhar no sentido de superar o estigma de que a computao
no funciona, o qual foi se formando na sociedade ao longo do tempo. Na minha
percepo, a rea de informtica estava na torre de marfim e a microcomputao a
jogou dentro do pntano. De fato, fomos negligentes para com as consequncias
desse rpido processo de popularizao da informtica.

Por fim, temos as iniciativas capilarizadas, um processo que est acontecendo


parte do mundo formal da computao. O caso da Caixa um dos exemplos dispon-
veis para tratarmos dessas iniciativas. A Caixa tem de manter centenas de aplica-
es que vm de todos os lugares. Talvez eu esteja at subestimando esses nme-
ros. Se pegarmos um repositrio de softwares livres do tipo Sourceforge, h at doze
mil softwares mantidos ali dentro. Se voc foca nos chamados mashups, que esto
populando todas as pginas da WEB, Google maps, entre outros, ns j estamos
em 3 ou 4 ordens de magnitude acima. Todo mundo pega um pedacinho de
cdigo, remenda, executa o cdigo de novo, pega outro pedacinho, estende e usa
novamente. E o processo cresceu a tal ponto que um diretrio de mashups tinha
algo em torno de duzentos mil programas diferentes, o que muito maior do que a
escala que estamos acostumados a lidar, mas que est acontecendo no mundo
real. Outra iniciativa capilarizada diz respeito ao chamado projeto R, um software de
apoio estatstico. Ele j suplantou o similar proprietrio, o S Plus, e produzido de
forma colaborativa, sem um processo claro e fortemente baseado em voluntariado.
Mas como isso deu certo neste caso e em muitos outros? Essa uma pergunta para
o pessoal de engenharia de software.

Frum de TIC Dataprev Banco de Dados 35


Perspectivas Futuras para Tecnologia de Bancos de Dados
Wagner Meira Jnior

Tais possibilidades servem para demonstrar o processo de construo de caminhos


alternativos. Trata-se de algo que est virando realidade, que subverteu completa-
mente a ordem de construo de sistemas. H um grande nmero de pessoas
envolvidas em projetos desenvolvidos totalmente fora da estrutura formal da
informtica. Cabe, portanto, a seguinte pergunta: o que vamos aprender com essa
experincia? Tempos atrs, meu orientador Tom LeBlanc, atualmente na
Universidade de Miami, observou que os grupos que faziam pesquisas em banco de
dados estavam deixando de faz-lo. A justificativa era que, a partir de um determina-
do momento, a indstria passou a dominar o estado da arte de banco de dados.
Acontece que hoje nenhuma universidade domina os algoritmos do software
desenvolvido pela Oracle. No h quem desenvolva tese para mudar alguma coisa
no software da Oracle. Por essa razo, ela segue dominando a tecnologia.

Se, naquela poca, a discusso se preocupava em perceber como a academia


podia ser relevante, agora a pergunta mudou um pouco de direo: como a estrutu-
ra formal da computao pode continuar relevante? Atualmente, h elementos
completamente externos que dominam o processo. Um caso emblemtico dado
pela obrigatoriedade legal da garantia de transparncia dos dados pblicos, o que
intensificou o gerenciamento das informaes.

Seja como for, em termos de tecnologia, h duas tendncias bem definidas. A


primeira corresponde ao modelo de banco de dados monoltico, que suporta tudo e
roda toda sorte de informao. O Oracle caso tpico dessa tendncia. Nesta
direo, um Oracle passa a ter tcnicas de minerao de textos. Um Oracle imple-
menta algoritmos de minerao de dados em geral e coisas do gnero ou, ento, se
acoplam plataformas WEB em cima do Oracle. Ou seja, continua aquele modelo do
banco de dados sendo o ente central do sistema. A segunda vertente a dos
chamados bancos de dados especializados ou de armazenamento especializado,
cujo foco est em tarefas especficas. O maior exemplo disso o Google, tendo em
vista o volume de dados armazenado e o nmero de transaes realizadas.
Estamos falando de centenas de milhares de mquinas trabalhando simultanea-
mente e atendendo a bilhes de consultas. Isso um nmero respeitvel para
qualquer sistema, sobretudo se levarmos em conta a eficincia e mesmo reconhe-
cendo a dificuldade existente para distinguir as ambiguidades.

A questo, portanto, no passa por optar por uma dessas tendncias, uma vez que
uma apresenta como vantagem a comodidade e a outra a eficincia. algo seme-
lhante ao problema dos dados legados, pois, ao mesmo tempo em que voc tem de
armazenar os dados, tem tambm de garantir as transaes, a durabilidade, etc.
Trata-se de uma operao complicada. Os casos de sucesso no contexto especiali-
zado existem, mas, como a operao cara e no h garantia de que funcione
sempre, preciso ter cautela. Existe uma tendncia enorme de utilizar o modelo
concentrado no banco de dados por conta do legado. Mas temos de estar atentos
para precisar at que ponto que esse argumento explicvel. Vou discutir com mais
detalhe a partir de um conjunto de tcnicas que tenho mais familiaridade, que so
as tcnicas de inteligncia, que no demandam propriedades transacionais como
durabilidade. Nesse caso, o que se deseja extrair informaes e que, se algo der
errado durante o processamento, o problema seja limitado e reversvel, ningum
morra ou as agncias do INSS parem. Pode haver uma variao, mas um negcio
em discusso, porque, enquanto existe o Oracle empilhando tcnicas as mais
variadas, h outras opes interessantes aparecendo tambm, bem como casos
mistos.

Passemos, agora, s pesquisas em banco de dados. A academia tem estado


distante dessa questo, mesmo que algumas excees sejam observadas em
estudos que fogem um pouco do tecnolgico especfico e se voltam mais para o

Frum de TIC Dataprev Banco de Dados 36


Perspectivas Futuras para Tecnologia de Bancos de Dados
Wagner Meira Jnior

conceitual. Um caso tpico de pesquisas voltadas para a otimizao o escalona-


mento de consultas em banco de dados. O problema que, alm de ser um procedi-
mento complicado, observamos uma mudana contnua nas cargas de trabalho.
Como a otimizao de consultas tenta calibrar essa questo de acordo com a carga
de trabalho observada, se ela no se repete, o esforo tem pouca efetividade. Num
prazo mais longo, a demanda por pesquisas na rea permanece. O caso tpico por
meio do que podemos observar isso se encontra nos benchmarks que so muito
utilizados tipo tpc, tpd e vrios outros tp, os quais tm sido expandidos para outros
cenrios. Atualmente, temos um benchmark de inteligncia, um benchmark WEB,
entre vrios outros, por qu? Porque as cargas so diferentes. Isso, obviamente, d
oportunidades para voc tratar de forma diferente o problema em si, alm de outras
questes como paralelizao e robustez, ou seja, como incorporar a robustez no
escalonamento de consultas e coisas do gnero.

Outra parte das pesquisas gira em torno dos bancos de dados probabilsticos. Isso
vale no s para os bancos de dados em si, mas tambm para a questo de arma-
zns, minerao de dados, etc. O que est armazenado tende a ser tcito, verdadei-
ro e inquestionvel. S que, s vezes, no . Podem ocorrer casos de entrada
manual de dados, a partir de formulrio, entrada digitada ou transcrio de formul-
rio em papel. O SUS ainda faz muito isso. Obviamente, o risco de erro muito maior
do que se tivessem sido implementados processos de checagem e consultas on-
line. O que se faz nesse caso? Atribui-se um grau de confiabilidade ao dado e passa-
se a usar esse parmetro como atributo de toda a cadeia. Por exemplo, meu nome
tem trs entradas na base do INSS em virtude de erros cometidos pelos contadores
que trabalhavam para mim quando eu tinha uma empresa. Nesse caso, os dados
podiam ser trabalhados a partir da identificao de uma alta probabilidade de
duplicao. Isso traria muitas repercusses em termos de anlise e mesmo no dia a
dia.

Os dados relacionais representam outra questo interessante, mas considero que


j falei bastante sobre isso no incio, sobretudo no que diz respeito s estratgias de
armazenamento e manipulao. Por outro lado, tem muita gente discutindo o
impacto dos avanos tecnolgicos em tecnologias como multi-core e flash. H um
crescimento do volume de dados e da demanda. Manter os sistemas escalveis e
eficientes usando bem os recursos implica a ampliao de pesquisas em consumo
de energia.

Em todas as arquiteturas atuais, os dispositivos de armazenamento, memria,


disco e mesmo barramento no acompanham a evoluo dos processadores, tanto
em termos de desempenho quanto a respeito de consumo de energia. Isso
problema, porque quando observamos os grficos de uso de energia em datacenter,
o consumo associado memria cresce em relao aos gastos com CPU. H um
bom tempo, investe-se mais em CPU e menos nesses mecanismos de armazena-
mento e comunicao. Eles so, atualmente, muito ineficientes em relao ao
quesito energia e gerao de calor. Quando falamos em energia, a questo do
resfriamento est implcita. Com efeito, tem havido uma alterao nessa tendncia.
Hoje h os processadores Dual Core. Eles so da ordem de 2 GHz e as placas-me
se tornaram mais eficientes do ponto de vista energtico, gerando menos calor.
Trata-se de uma tendncia que deve continuar. Mas isso um problema constante,
bem como a questo da memria, que mantm o gap entre o custo de acesso
memria e o de consumo de energia, que vem da dcada de 1980 e tem piorado nos
ltimos trinta anos.

Existe tambm um contraponto dado pelas aplicaes de inteligncia em armazm


de dados e negcio. Elas tm de processar inmeros volumes de dados, com

Frum de TIC Dataprev Banco de Dados 37


Perspectivas Futuras para Tecnologia de Bancos de Dados
Wagner Meira Jnior

processamento intensivo. Em particular, as aplicaes de inteligncia de negcios


lidam com algoritmos de alta complexidade, no transacionais. Por mais que se
tente incorporar esses algoritmos ao Oracle, se voc faz mo, cem mil vezes mais
rpido do que usando o banco de dados. No estamos falando apenas de comodi-
dade. H a questo do custo. A depender da especificidade da aplicao, voc ter
de usar estratgias particularizadas. Considere uma aplicao de batimento de
cadastro. uma demanda permanente e contnua de todas as agncias que fazem
inseres no cadastro a todo o momento. Ser que o batimento em si tem de ser
feito no sistema transacional? Ou poderia ser feita por um sistema parte com
requisitos menos estritos? uma pergunta interessante. Se o nosso objetivo
reduzir custo e melhorar a qualidade do servio, temos de avaliar o quanto isso vale
a pena.

Pensando sobre os rumos das pesquisas, a questo da incerteza algo que vem
crescendo na rea de inteligncia. At porque os dados so incertos por natureza. A
partir do momento em que consideramos os dados como verdades tcitas, perde-
mos informao. O ponto interessante que remete ao grande nmero de tcnicas
que buscam trabalhar com um conjunto menor de dados. H tambm a questo das
relaes densas.

Com efeito, o que mais tem chamado ateno a minerao em redes sociais,
minerao de relacionamentos, modelos baseados em grafos. Inmeras pesquisas
vm sendo feitas, interessadas ao mesmo tempo em garantir que isso se d em
tempo hbil. Porque todos esses algoritmos tm uma exploso combinatria muito
severa, mesmo o mais clssico deles. S para ilustrar, o caso comum de algoritmo
de minerao de dados aquele da cesta de compras. H uma tendncia explo-
so de dados. Se pegarmos, ainda no contexto varejista, um supermercado, h nas
prateleiras cerca de 5 mil itens em estoque. Se considerarmos as combinaes 2 a
2, teremos 5 mil x 4.999, sob duas possveis combinaes de itens 2 a 2, o que d
12,5 milhes. Se considerarmos 3 a 3, multiplicaremos esse nmero por 4.998. Ou
seja, a coisa cresce exponencialmente.

DEBATE
N.I.: Debatedor e/ou instituio no identificados.

Serpro - Tudo isso verdadeiro, no tenho a menor UFMG H duas questes a. Primeiramente, essa
dvida. Mas para mim, a maior dificuldade no o concepo de armazm de dados recente. Ao
grande volume, o processamento intensivo, transacio- mesmo tempo, h um vcio de formao. Mesmo
nal ou o uso indevido. Trabalho com sistemas transaci- estando num ambiente onde tudo est sendo paraleli-
onais, lgica booleana, com aquilo que aprendemos zado e h demandas simultneas, a primeira coisa
desde a faculdade. Hoje temos dificuldade para fazer que o aluno aprende na universidade que o algoritmo
uma carga com grandes volumes e processamentos uma sequncia de passos. Isso j limita as coisas,
intensivos de forma paralela. Trabalhar com o racioc- apesar de ser uma coisa to contra-intuitiva.
nio paralelo, montar rotinas paralelas e implementar Cotidianamente agimos de forma paralelizada. Ao
em paralelo. Esse, para mim, o maior problema em dirigir um carro, voc passa a marcha, mexe o volante,
armazm de dados. acelera, ouve o rdio, conversa, etc.

Frum de TIC Dataprev Banco de Dados 38


Perspectivas Futuras para Tecnologia de Bancos de Dados DEBATE
Wagner Meira Jnior

Serpro - Por exemplo, usando um meio de implementa- Alm disso, a avaliao de custo-benefcio uma
o. H 200 milhes de linhas para carregar num necessidade. Ou seja, vale a pena esse desenvolvi-
processamento intensivo. Isso no vai rodar. Por que mento? Vale a pena manter isso? Qual o custo de
no vem em mil pedacinhos? manuteno? Quo relevante a aplicao? Tanto que
a nica aplicao possvel de se imaginar teria de
UFMG - A dificuldade que temos para particionar ocorrer num contexto de batimento on-line. Por
dados um problema muito conhecido. O que acontece exemplo, parece que o INSS vai abrir mais 700 postos.
nesse caso? Por que as pessoas so, em geral, conser- Ento, h algum tempo j eram mil. Haver 2 mil, 3 mil
vadoras em relao a isso? Porque, muitas vezes, postos ao mesmo tempo com dezenas de mquinas.
nunca atentaram para as eventuais dependncias de Todo mundo cadastrando e checando... Isso vale a
dados que possam ocorrer naquele volume que tem de pena? Sinceramente, no sei responder. O pessoal
ser processado. Ento, como no havia a necessidade que est na operao da carga de trabalho que vai
ou a possibilidade, levava-se em considerao apenas dizer o quanto de mainframe teremos de comprar para
o aspecto tecnolgico. Nunca ningum parou e olhou atender esses postos ou pegar a carga e dividi-la em
assim: se voc olhar essa sequncia de dados, o que duas formas.
depende do qu? A resposta comum : No sei e nem
sei como saber. Ento, por vias das dvidas, no N.I - Voc falou sobre os bancos de dados monolticos
vamos inventar. Deixa como est. Esse o problema do e bancos de dados especializados. Toda a empresa
modelo tradicional, que nunca foi pensado em relao que tem um acervo de dados grandes quer reduzir o
a essa possibilidade de particionar. As questes de seu custo, tendo em vista a qualificao e a classifica-
temporalidade e causalidade representam um proble- o dos dados. No contexto dos bancos de dados
ma em todos os nveis sempre. E lidar com isso muito monolticos, voc se referiu s vantagens da maturida-
complicado. de desse cenrio, da robustez do ambiente, da segu-
rana e da capacidade de recuperao em caso de
Dataprev Gostaria que voc desenvolvesse o argu- desastre. Ou seja, isso vai ao encontro do nosso
mento sobre os sistemas de DW/BI. primeiro paradigma que a alta disponibilidade e o
desempenho. Quando se falou do banco de dados
UFMG Para esse caso, existem duas experincias a especializados, a velocidade, trabalhando com toda a
ser relatadas. A primeira aconteceu conosco. camada de inteligncia, uma coisa que a gente
chama de RI, que voc lidar com a probabilidade e
Tentamos utilizar sistemas de bancos de dados
outras medidas dos componentes. Isso um assunto
maciamente, sendo que uma representao tabular
de extremo interesse para a rea de previdncia, at
em texto, arquivo normal, etc. sempre se mostrou mais
pela probabilidade de fraude de um benefcio. Como
eficiente. Vrios nmeros medidos ao longo do tempo eu percebo que aquele benefcio que est sendo
demonstram que, mesmo usando o banco de dados da concedido uma provvel fraude? Mas o desafio no
forma simples, o custo adicional implicado impactan- seria a construo da inteligncia desses algoritmos
te. O melhor usar o banco de dados s para ler para se conseguir resultados rpidos, eficientes e de
sequencialmente. Se comearmos a executar opera- acordo com o direcionamento adotado?
es dentro do banco de dados, a coisa degenera
completamente. O segundo caso, que se remete UFMG Diante daqueles dois exemplos - o monoltico
coisa de fazer rotinas especficas de acesso e manipu- e o especializado- , preciso lembrar que no se trata
lao de dados, bem conhecido. So os exemplos do
de dois extremos de um espectro. Optar por um ou por
Google. Ali, eles reconstruram tudo, desde o sistema
outro, bem como recorrer a solues hbridas uma
operacional. Pegaram um Linux e depenaram, limpa-
questo de avaliao de custo-benefcio - em termos
ram e deixaram s a parte que interessava. At o
sistema de arquivos, o sistema de banco de dados dele de pessoal, energia, software, hardware e custo de
e toda a infraestrutura, tudo isso prprio para o desenvolvimento, treinamento, etc. Como o meu
ambiente. uma aplicao muito especfica? Sim, mas enfoque recai sobre a tecnologia de bancos de dados,
eu fiz essa ressalva. No se trata de uma soluo geral. no entrei no segundo ponto da sua pergunta, que o
Fazendo analogia com outros contextos, algo que desenvolvimento das tcnicas e dos algoritmos. Isso
remonta quele velho trecho em Assembler, que se complementar. Seja usando modelo o monoltico ou o
coloca no meio do cdigo. H aquela rotina que conso- especializado, preciso buscar tcnicas eficazes. Elas
me 70% do tempo, sendo preciso otimizar ao mximo. so mais decisivas que as tecnologias de armazena-
Esse , por exemplo, o conceito de stored procedure ou mento, manipulao e acesso de dados.
coisa do gnero. A minha concepo vai nesse sentido. EBC - H duas experincias interessantes de Datamine

Frum de TIC Dataprev Banco de Dados 39


Perspectivas Futuras para Tecnologia de Bancos de Dados DEBATE
Wagner Meira Jnior

que acompanhei de longe. So estudos que no usam


banco de dados estruturados, mas duas tecnologias
diferentes, uma chamada Colt DB e outra Lucene. No
trabalham com a ideia de um banco de dados relacio-
nal, nem um engine rodando por trs para fazer a
consulta. Penso que esses dois casos vo muito ao
encontro do que voc falou. Um dos grandes proble-
mas dos bancos de dados lidar com dados binrios.
Acompanhei uma pesquisa em Berkeley na qual se
tentava fazer a extrao de um pedao de um vdeo.
Isso muito complicado de se fazer dentro de banco
de dados. Gostaria de saber se h um horizonte mais
razovel quanto a isso?

UFMG - Em ltima instncia, o problema no est


resolvido mesmo. O que h so vrias tcnicas de
sumarizao e sintetizao do que est acontecendo.
O fato que o problema de viso em imagem ainda
muito complicado. Recuperao de informao pela
imagem permanece sendo algo difcil. O pessoal tem
utilizado tags, incorporado informaes textuais,
muitos metadados. As estratgias correntes ainda so
muito baseadas em metadados.

Frum de TIC Dataprev Banco de Dados 40


Administrao de Base de Dados

Ronaldo Romani
Vice-Presidente de Tecnologia e Logstica do Banco do Brasil

Frum de TIC Dataprev Banco de Dados 41


Perspectivas Futuras para Tecnologia de Bancos de Dados
Ronaldo Romani

Frum de TIC Dataprev Banco de Dados 42


Perspectivas Futuras para Tecnologia de Bancos de Dados
Ronaldo Romani

Frum de TIC Dataprev Banco de Dados 43


Perspectivas Futuras para Tecnologia de Bancos de Dados
Ronaldo Romani

Frum de TIC Dataprev Banco de Dados 44


Perspectivas Futuras para Tecnologia de Bancos de Dados
Ronaldo Romani

Frum de TIC Dataprev Banco de Dados 45


Perspectivas Futuras para Tecnologia de Bancos de Dados
Ronaldo Romani

Frum de TIC Dataprev Banco de Dados 46


Perspectivas Futuras para Tecnologia de Bancos de Dados
Ronaldo Romani

Frum de TIC Dataprev Banco de Dados 47


Perspectivas Futuras para Tecnologia de Bancos de Dados
Ronaldo Romani

Frum de TIC Dataprev Banco de Dados 48


Perspectivas Futuras para Tecnologia de Bancos de Dados
Ronaldo Romani

Frum de TIC Dataprev Banco de Dados 49


Perspectivas Futuras para Tecnologia de Bancos de Dados
Ronaldo Romani

Frum de TIC Dataprev Banco de Dados 50


Perspectivas Futuras para Tecnologia de Bancos de Dados
Ronaldo Romani

Frum de TIC Dataprev Banco de Dados 51


PostgreSQL em Ambiente de Alta Criticidade

Jair Silva
Gerente Operacional de Solues Tecnolgicas da Caixa

Frum de TIC Dataprev Banco de Dados 52


PostgreSQL em Ambiente de Alta Criticidade
Jair Silva

Frum de TIC Dataprev Banco de Dados 53


PostgreSQL em Ambiente de Alta Criticidade
Jair Silva

Frum de TIC Dataprev Banco de Dados 54


PostgreSQL em Ambiente de Alta Criticidade
Jair Silva

Frum de TIC Dataprev Banco de Dados 55


PostgreSQL em Ambiente de Alta Criticidade
Jair Silva

Frum de TIC Dataprev Banco de Dados 56


PostgreSQL em Ambiente de Alta Criticidade
Jair Silva

Frum de TIC Dataprev Banco de Dados 57


PostgreSQL em Ambiente de Alta Criticidade
Jair Silva

Frum de TIC Dataprev Banco de Dados 58


PostgreSQL em Ambiente de Alta Criticidade
Jair Silva

Frum de TIC Dataprev Banco de Dados 59


PostgreSQL em Ambiente de Alta Criticidade
Jair Silva

Frum de TIC Dataprev Banco de Dados 60


PostgreSQL em Ambiente de Alta Criticidade
Jair Silva

Frum de TIC Dataprev Banco de Dados 61


www.dataprev.gov.br

Dataprev

Ministrio da
Previdncia Social

S-ar putea să vă placă și