[okfn-br] Experiência na implantação do CKAN 2.0 para o portal de dados abertos do Recife

Jonas Xavier jonas.agx em gmail.com
Quinta Agosto 29 18:15:04 UTC 2013


Ótima descrição, Marconi!

Sobre os problemas de instalação no CentOS, você poderia descrever
cada um e dizer como resolveu? Eu imagino que outros grupos podem
passar por problemas semelhantes. Não sei qual o melhor local, o
repositório https://github.com/okfn/ckan/ parece mais acolhedor.

Outra dúvida: onde você publicou/publicará esse artigo?

Jonas

On 29/08/2013, Marconi Clementino <marconix16 em gmail.com> wrote:
> *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
>
> --
> Você está recebendo esta mensagem porque se inscreveu no grupo "Dados
> Abertos PE" dos Grupos do Google.
> Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie
> um e-mail para lista-dadosabertospe-gt+unsubscribe em googlegroups.com.
> Para obter mais opções, acesse https://groups.google.com/groups/opt_out.
>




Mais detalhes sobre a lista de discussão okfn-br