[okfn-br] Experiência na implantação do CKAN 2.0 para o portal de dados abertos do Recife
Marconi Clementino
marconix16 em gmail.com
Quinta Agosto 29 17:48:20 UTC 2013
*Experiência na implantação do CKAN 2.0 para o portal de dados abertos do
Recife na EMPREL – Empresa Municipal de Informática do Recife*
Olá, como é de interesse de alguns, venho por meio deste e-mail, descrever
a experiência que tive na instalação do CKAN para o portal de dados abertos
do Recife. Segue o relato:
*Portal:* http://dados.recife.pe.gov.br/
*O Teste*
Como era uma das metas da prefeitura, a abertura de dados do município,
o departamento de inovação da EMPREL me solicitou que instalasse a
ferramenta CKAN para testarmos. Até o momento nunca tinha ouvido falar da
mesma, e meu conhecimento sobre dados abertos também era nulo.
Entrei no site, e segui a documentação de instalação “latest” (versão
2.2a). Como o guia padrão de instalação era para Ubuntu, sistema que
utilizo no ambiente de trabalho, instalei na minha própria máquina.
Começamos os testes e notei que não tinha a visualização em grid do live
demo do site do CKAN. Também percebemos que a internacionalização estava
incompleta naquela versão, pois navegando por páginas do portal
identificamos muitas falhas na tradução para o português(alguns elementos
não estavam traduzidos). Daí percebemos que teríamos muito trabalho na
correção destes detalhes. Na versão 2.0 os problemas de tradução são
mínimos.
*Aprovação e instalação nos servidores da EMPREL*
Após os testes, foi solicitado ao departamento de infraestrutura, a
instalação do CKAN em um dos servidores no ambiente operativo. Passei o
link da documentação de instalação do CKAN 2.0(que pelo meu entendimento,
era a última estável) para os responsáveis, e já surgiu o primeiro
problema: não tinham experiência no ambiente Python, e o servidor
recomendado para instalação era o Ubuntu. O departamento, em questão de
linux, só tem experiência/treinamento em servidores Red Hat e CentOS, e
preferem não comprometerem com outras distribuições. Recomendei a
documentação para instalação no CentOS.
Após algumas semanas e várias tentativas do departamento(neste período
estava no curso de dados abertos ministrado por Bernadette), chegaram a
conclusão de que não funcionava no CentOS, e que não era possível ter o
CKAN no ambiente da empresa. Com isto dito, pedi um dia para fazer uma
tentativa. Na dia seguinte tinha o CKAN 2.0 instalado em um CentOS em uma
máquina virtual no meu desktop.
Após a prova do funcionamento, me disponibilizaram uma máquina CentOS
recém instalada e autorização de root. Instalei o CKAN e copiamos para
termos dois ambientes(desenvolvimento e produção).
*Conexões de banco de dados*
Após a instalação, o departamento de banco de dados questionou o grande
número de conexões abertas pelo CKAN, percebi que a documentação de
instalação deixava duas instâncias rodando, modificando isto, o número já
caiu pela metade, mas mesmo assim, a quantidade de conexões abertas ficavam
entre 8 e 12, e isto não era o habitual entre os sistemas da Emprel. Tive
que estudar sobre o SQLAlchemy(utilizado pelo CKAN) para poder explicar
cada uma das conexões a DBA responsável pelo banco. Ela entendeu e percebeu
que este número não sobrecarregava nosso servidor PostgreSQL.
*Personalização*
Após o ambiente montado, a diretoria da EMPREL sugeriu que o portal de
dados abertos tivesse a aparência/identidade visual parecida com a do
portal da transparência(http://portaltransparencia.recife.pe.gov.br).
Identifiquei o arquivo css responsável pela aparência do CKAN e pesquisei
referências a ele dentro do projeto, com isto adicionei o tema
“recife”(cópia do padrão do CKAN) e comecei a personalização da aparência.
Antes de ir a produção, surgiu a necessidade de remover a funcionalidade
de registro de usuário externos. Então tive que pesquisar como remover esta
funcionalidade. Com estas pesquisas fui conhecendo a arquitetura do sistema.
A primeira vez que tive que programar foi na adição da página de
contato, era uma necessidade, e o CKAN não vem com esta funcionalidade.
Dentro dos pacotes do CKAN criei o controlador “recife” e passei a
desenvolver as novas funcionalidades dentro dele. Sobre a questão de CMS,
não utilizamos nenhum, todas as páginas adicionadas estão dentro da
arquitetura do CKAN.
Segue uma breve lista das modificações que fizemos:
-
Criação do tema Recife
-
Modificações de páginas de layout(cabeçalho e rodapé)
-
Criação e adição da página de contato com validação de formulário
-
Adição e configuração de plugins e serviços para habilitação de:
- Visualização de dados de CSV
- API de pesquisa(datastore)
- Visualização de dados geográficos
- Google Analytics
-
Página de comentários por Conjunto de Dados com o uso do Disqus(ex:
http://dados.recife.pe.gov.br/dataset/comments/area-urbana)
-
Criação da página de aplicativos baseada na página de “related”, os
aplicativos foram cadastrados apenas no ambiente de desenvolvimento por
enquanto, em breve serão lançados e haverá um link na página principal.
Página de aplicativos: http://dados.recife.pe.gov.br/apps (segue imagens
em anexo)
*
Considerações finais*
A pesar de nunca ter trabalhado com Python, com a minha experiência em
desenvolvimento web(dentre elas, o PHP foi o mais importante), o
entendimento necessário da arquitetura e do código fonte do CKAN foi
bastante rápido. Com a documentação disponível e as listas de discussões
OKFN todas as dúvidas foram sanadas.
Existe uma frente na empresa que deseja utilizar o DKAN, justificando
que já tem experiência suficiente com o Drupal, mas pessoalmente eu
discordo, gostei do que vi e aprendi neste processo de aprendizado com o
CKAN.
O próximo passo da EMPREL é a automação de carga dos recursos através
das APIs disponibilizadas pelo CKAN.
Muito obrigado pela atenção, e qualquer dúvida, estou a disposição.
--
Atenciosamente,
Marconi Clementino de Oliveira
Analista de Sistemas - DSI - EMPREL
Celular: +55 81 8719-1703
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://lists.okfn.org/pipermail/okfn-br/attachments/20130829/0a3444cf/attachment-0002.html>
-------------- Próxima Parte ----------
Um anexo não-texto foi limpo...
Nome: Aplicativos - Portal de Dados Abertos da Cidade do Recife_20130829-131508.png
Tipo: image/png
Tamanho: 309176 bytes
Descrição: não disponível
URL: <http://lists.okfn.org/pipermail/okfn-br/attachments/20130829/0a3444cf/attachment-0008.png>
-------------- Próxima Parte ----------
Um anexo não-texto foi limpo...
Nome: Aplicativos - Portal de Dados Abertos da Cidade do Recife_20130829-131650.png
Tipo: image/png
Tamanho: 170564 bytes
Descrição: não disponível
URL: <http://lists.okfn.org/pipermail/okfn-br/attachments/20130829/0a3444cf/attachment-0009.png>
Mais detalhes sobre a lista de discussão okfn-br