Você está na página 1de 79

Minicurso de CKAN

Augusto Herrmann
Time de dados abertos - Ministrio do Planejamento

Minicurso de CKAN | Augusto Herrmann

Agenda
O que

O caminho das pedras

Quem faz

Por debaixo do cap

Quem usa

Administrao do CKAN

Internacionalizao

Catalogao no CKAN

Principais funcionalidades

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Alinhamento de expectativas
Quem j ouviu falar
Quem j usou
para pesquisar / baixar dados
para cadastrar (catalogar) dados
Quem j instalou
Quem j desenvolveu
extenses / temas
by sean dreilinger

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

O que

Minicurso de CKAN | Augusto Herrmann

O que
Comprehensive
Knowledge
Archive
Network

by degreezero2000
5

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

O que

by Steven de Costa

Um software livre para catlogos de dados abertos

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

O que
Um software livre para catlogos de dados abertos
Licena Affero GPL 3
se disponibilizar software como
servio (SaaS), tambm
tem que liberar o cdigo
https://github.com/ckan/ckan
mais de 7 anos
mais de 80 desenvolvedores

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

O que
Um software livre para catlogos de dados abertos
guardar metadados, no os dados em si
(a princpio)
facilitar a encontrar dados
organizar a documentao

by Reeding Lessons

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

O que
Um software livre para catlogos de dados abertos
dados disponveis na internet,
com URL permanente
linkveis diretamente

by Dave Winer
9

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

O que
Um software livre para catlogos de dados abertos
dados disponveis na internet,
com URL permanente
by aftherocker

sem captcha

10

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

O que
Um software livre para catlogos de dados abertos
dados estruturados
no em tabelas dentro de pdf ou doc
contra-exemplos: boletins estatsticos,
dirios oficiais
no em tabelas dentro de imagens

by Petras Gagilas
11

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

O que
Um software livre para catlogos de dados abertos
formatos abertos
exemplos: csv, json, xml, rdf
licenas abertas
Open data and content can be freely
used, modified, and shared by anyone
for any purpose - opendefinition.org
by Jonathan Grey
12

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Quem faz
Open Knowledge
http://okfn.org
http://br.okfn.org
Comunidade de desenvolvedores
http://github.com/ckan/ckan
Governana: CKAN Association
http://ckan.org/about/association

13

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Quem usa

Minicurso de CKAN | Augusto Herrmann

Quem usa
governos nacionais
governos locais
casas legislativas
organizaes da
sociedade civil
instituies de pesquisa
mais em: http://ckan.org/instances
15

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Quem usa
Outros pases

Minicurso de CKAN | Augusto Herrmann

data.gov.uk
Reino Unido

Cdigo-fonte:
https://github.com/datagovuk

17

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

data.gov
EUA

18

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

mais pases

19

Alemanha
Argentina
ustrlia
ustria
Canad
Eslovquia
Holanda
Irlanda

Islndia
Itlia
Japo
Mxico
Noruega
Romnia
Sucia
Sua
Uruguai
LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Riley Kaminer

Quem usa
Portais nacionais

Minicurso de CKAN | Augusto Herrmann

dados.gov.br
Brasil (governo federal)

Cdigo-fonte:
http://dev.dados.gov.br/codigo/dev/tema-ckan

21

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

dadosabertos.senado.
gov.br
Senado Federal

22

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Quem usa
Portais estaduais

Minicurso de CKAN | Augusto Herrmann

dados.rs.gov.br
Rio Grande do Sul

24

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

dadosabertos.df.gov.br
Distrito Federal

25

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Quem usa
Portais municipais

Minicurso de CKAN | Augusto Herrmann

dados.recife.pe.gov.br
Recife, PE

27

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

data.rio.rj.gov.br
Rio de Janeiro, RJ

28

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

datapoa.com.br
Porto Alegre, RS

29

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Internacionalizao
disponvel em 53 idiomas
idiomas com 99% ou mais na verso 2.2:

30

alemo
blgaro
catalo
espanhol
francs
finlands
holands
italiano

japons
noruegus
portugus (br)
sueco
tcheco

by Eric Andresen

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Traduo para portugus (br)


concluda para a verso 2.2
traduo da 2.3 vai comear em breve
quem quiser participar:
plataforma colaborativa de traduo - Transifex
https://www.transifex.com/projects/p/ckan/language/pt_BR/

31

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Principais funcionalidades

by Jereme Rauckman

Minicurso de CKAN | Augusto Herrmann

Catalogar e pesquisar dados


catalogar pela interface web,
pela API ou por ferramentas de
importao
pesquisa em todos os metadados
busca facetada
organizao, etiqueta,
formato, licena
organizados em conjuntos de
dados e recursos
33

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Encontrar dados relacionados


recursos relacionados ou
similares so catalogados
em um mesmo conjunto de
dados (ex.: os mesmos dados,
mas em formato diferente;
os mesmos dados, mas em
perodos distintos, etc.)

34

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Encontrar metadados importantes

35

ttulo
descrio
identificador nico
autor e mantenedor
licena
site ou pgina de origem dos dados
grupos, etiquetas, organizaes
formato (para o recurso)
outros (inclusive personalisveis)

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Ver uma amostragem dos dados


pr-visualizao do recurso como
tabela, grfico, mapa, etc.
ajustvel - permite reordenao
por atributo, escolha de colunas
para eixos do grfico, etc.
usa a biblioteca recline.js

36

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Ver uma amostragem dos dados

37

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Utilizar dados geoespaciais


por meio da extenso ckanext-spatial
visualizar o contedo dentro do mapa
(ex.: delimitaes de reas de praas e
parques)
pesquisar por dados que se situem
dentro de um permetro delimitado
na pesquisa

38

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Consultar o histrico de atualizaes


saber quem atualizou o qu
e quando

39

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Separar em organizaes
possibilita que cada
instituio tenha gesto
sobre os seus prprios dados
no catlogo

40

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Separar em grupos
possibilita classificaes
temticas dos dados

41

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Temas personalizveis
personalizaes simples (cores, disposio de blocos, ttulo do portal, etc.) podem ser
feitas pela interface grfica pelo administrador do site
para personalizaes mais profundas, utilizar interface de programao de extenses e
linguagens de templates

42

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Extensvel
interface para criar
extenses
repositrio de extenses
extensions.ckan.org

43

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

FileStore e DataStore
FileStore: extenso que possibilita ao
catalogador do CKAN fazer upload de
arquivo, em vez de apenas apontar o link
DataStore: extenso que possibilita fazer
consultas aos dados, inclusive com join
entre arquivos diferentes
acompanha o servio DataPusher,
que carrega o DataStore a cada
arquivo catalogado

44

DRs Kulturarvsprojekt

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Federvel
metadados podem ser colheitados de outro portal usando a extenso ckanexharvest
periodicamente os dados cadastrados ou modificados no site de origem aparecero no
portal federado

by Martin Pettitt
45

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Feedback
h extenses que possibilitam aos
usurios do portal discutir sobre um
conjunto de dados especfico,
potencializando o uso dos
dados abertos pela comunidade

46

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Acesso via API


comunica-se por requisies http
processa e retorna metadados no formato JSON
possibilita fazer tudo o que se faria pela
interface grfica (ex.: pesquisar, consultar, etc.)
utilizando uma chave de acesso do usurio,
possvel ter acesso de escrita para criar, atualizar
ou excluir conjuntos de dados
til para processar grandes volumes de dados
(ex.: catalogao em lote de novos dados,
correes em massa, etc.)
47

by Andrea Vallejos

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

O caminho das pedras

by Tim Green

Minicurso de CKAN | Augusto Herrmann

Documentao
http://docs.ckan.org
(em ingls)
Manuais separados por pblico:
Usurio (catalogador)
Administrador do site
Mantenedor (infraestrutura)
49

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Documentao
Outros manuais com temas especficos:

API do CKAN
Criando extenses
Criando temas
Como contribuir

by John Haslam

50

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Onde obter ajuda


Nas listas de discusso:
CKAN Global User Group
https://groups.google.com/forum/#!forum/ckan-global-user-group

ckan-dev
https://lists.okfn.org/mailman/listinfo/ckan-dev

ckan-pt
https://lists.okfn.org/mailman/listinfo/ckan-pt
by Upupa4me

51

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Onde obter ajuda


No bate-papo IRC:
servidor: irc.freenode.net
canal: #ckan

by Garry Knight

52

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Onde obter ajuda


Suporte pago:

hosting com SLA


deploy e manuteno
suporte, consultoria,
treinamento
by glasseyes view

53

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Onde experimentar
demo.ckan.org
livre para experimentar, catalogar dados
e conhecer o CKAN
contedo apagado periodicamente

by Horia Varlan

54

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Onde catalogar dados


datahub.io
instncia mantida pela
comunidade
se voc no tem um prprio
CKAN, pode catalogar l

55

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Por debaixo do cap


BiblioArchives / LibraryArchives

Minicurso de CKAN | Augusto Herrmann

Arquitetura da soluo
Frequentemente acompanhado de um CMS (ex.: Drupal, Wordpress)
Aplicao WSGI
ligvel ao Apache (modwsgi), nginx, etc.
Banco de dados PostgreSQL (metadados)
Apache Solr (busca e indexao)
Outros componentes (a depender da extenses)
57

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Instalao
Sistemas operacionais suportados:
Outros possveis:
Debian
CentOS
Red Hat
Windows (verso 1.8)
http://www.hackneyworkshop.com/2012/03/30/ckan-on-windows/
OS X
58

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Instalao
Formas de instalao
pacote Ubuntu 12.04 64-bit server
pelo cdigo-fonte
usando Docker

59

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Instalao por pacote


Pr-requisito: Ubuntu 12.04 64-bit server
instala CKAN e DataPusher (para o DataStore)

sudo apt-get update


sudo apt-get install -y nginx apache2
libapache2-mod-wsgi libpq5
wget http://packaging.ckan.org/pythonckan_2.2_amd64.deb
sudo dpkg -i python-ckan_2.2_amd64.deb

Passos:
1. Instalar os pacotes do CKAN e dependncias
2. Instalar PostgreSQL e Solr
3. Reiniciar Apache e Nginx

60

sudo apt-get install -y postgresql


solr-jetty
sudo service apache2 restart
sudo service nginx restart

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Instalao pelos fontes


comandos dependem do sistema operacional
instrues detalhadas para cada um em:
https://github.com/ckan/ckan/wiki/How-to-Install-CKAN
1.
2.
3.
4.
5.
6.
7.
8.
61

instalar pacotes de dependncias


instalar CKAN num ambiente virtual Python
configurar banco de dados Postgres
criar um arquivo de configuraes do CKAN (production.ini)
configurar o Solr
criar tabelas no banco de dados
configurar o DataStore (opcional)
link para who.ini
LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Instalao pelo Docker


Pr-requisito: Docker instalado e configurado

$ docker run -d --name db


ckan/postgresql
$ docker run -d --name solr ckan/solr
$ docker run -d -p 80:80 --link db:db
--link solr:solr ckan/ckan

3 comandos
Docker faz o download das imagens
automaticamente (pode demorar)

62

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Configuraes iniciais
Criar usurio administrador do site
paster sysadmin add seanh -c /etc/ckan/default/production.ini

criar tambm outros usurios, se necessrio


Editar o production.ini (por exemplo, configurar o nome do site)
ckan.site_title = Portal de dados abertos

63

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Outros comandos de manuteno


Reconstruir o ndice
paster --plugin=ckan search-index rebuild --config=/etc/ckan/std/std.ini

Criar e remover usurios


paster --plugin=ckan user add usuarioteste --config=/etc/ckan/std/std.ini
paster --plugin=ckan user remove usuarioteste --config=/etc/ckan/std/std.ini

64

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Administrao do CKAN

Minicurso de CKAN | Augusto Herrmann

Personalizaes simples
http://<my-ckan-url>/ckan-admin/config/

algumas personalizaes
simples podem ser feitas
pelo administrador por meio
da interface grfica
ttulo e descrio do site
esquemas de cores
texto introdutrio e outros
alteraes de css
66

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Registro de novos usurios


por padro, fica habilitado o
auto-registro de novos usurios
para desabilitar necessrio
alterar a opo no arquivo .ini
ckan.auth.create_user_via_web = False

67

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Registro de novas organizaes e grupos


por padro, fica habilitada a
criao de novas organizaes
para desabilitar necessrio
alterar a opo no arquivo .ini
ckan.auth.user_create_organizations = False

analogamente, o mesmo vale


para os grupos
obs.: o administrador sempre pode
criar organizaes e grupos
68

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Gerenciar usurios
procurar pelo usurio em
http://<my-ckan-url>/user/

no perfil do usurio, aparece o


boto gerenciar
possvel atualizar o perfil,
trocar a senha ou excluir o
usurio

69

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Catalogao no CKAN

Minicurso de CKAN | Augusto Herrmann

Conjuntos de dados e recursos


recursos podem ser arquivos de dados, pontos de entrada a APIs, exemplos de
consulta a APIs, etc.
cada recurso tem apenas um formato e uma URL
conjuntos de dados podem ter um ou mais recursos
devem ser catalogados no mesmo conjunto de dados:
recursos que representam os mesmos dados em formatos diferentes
recursos que se referem aos mesmos dados em perodos de tempo
diferentes
recursos que se referem aos mesmos dados, separados por regies
diferentes
71

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Conjuntos de dados e recursos


um conjunto de dados tem
uma nica fonte (URL do site ou pgina de origem, o qual a princpio
contm links para todos os recursos)
uma nica licena
um nico autor
um nico mantenedor
uma nica organizao (ou nenhuma)
um nico conjunto de grupos
um nico conjunto de etiquetas (tags)
72

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Organizaes
somente editores da organizao
podem criar datasets dentro dela
usurios podem criar datasets em todas
as organizaes das quais for editor
administradores das organizaes podem
convidar usurios existentes ou novos para
fazer parte da organizao e definir seu
perfil (membro, editor ou administrador)

73

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Criando um novo conjunto de dados


Clicar em adicionar conjunto de dados
a partir da tela de consulta a conjuntos de dados; ou
a partir da tela de uma organizao onde voc seja editor ou administrador

74

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Criando um novo conjunto de dados


CKAN vai pedir os metadados bsicos:
ttulo
descrio
tags
licena
organizao (se voc for editor
em mais de uma)
ao terminar, clicar adicionar dados
para incluir recursos
75

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Incluindo recursos
selecione link para arquivo, link para uma API ou enviar arquivo (caso o
FileStore esteja habilitado)
fornea nome, descrio e formato
se tiver outros recursos a incluir,
acione salvar e adicionar outros
aps incluir todos os recursos, selecionar
prximo: informaes adicionais

76

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Informaes adicionais do dataset


visibilidade: pblico pode ser visto por qualquer visitante do site; privado
apenas membros da organizao
autor / e-mail do autor: pessoa ou organizao responsvel por produzir os
dados
mantenedor / e-mail do mantenedor: pessoa ou organizao responsvel
tecnicamente por manter os dados acessveis
opcionalmente, os campos personalizados
pressione finalizar para terminar de criar o conjunto de dados

77

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Minicurso de CKAN | Augusto Herrmann

Obrigado!
augusto@okfn.org.br
augusto.herrmann@planejamento.gov.br

78

LOD Brasil 2014 | 19 a 21 de novembro | Florianpolis

Realizao

Apoio