- PVSM.RU - https://www.pvsm.ru -
Тема открытого правительства [1] и открытых данных [2] все больше набирает обороты [3] и приобретает популярность среди многих стран мира, их правительств и организаций [4]. К тому же совсем недавно в России был принят закон об открытых данных [5], что указывает на растущий интерес к этой теме. В Украине тоже правительство движется [6] в сторону публикации открытых данных. Собственно, раз это популярно, то можно на этом заработать или же принять участие в модном движении [7]. К тому же ежегодно проводятся конкурсы [8], фестивали [9] и хакатоны [10] по созданию сайтов и приложений для публикации открытых данных.
Открытые данные [11] — это способ представления общедоступной информации в машиночитаемой форме. В виде, в котором разработчики могут загрузить их в базы данных, проанализировать и представить в куда более наглядной и понятной форме чем то, как это делается в государственных системах.

Я бы хотел поделиться личным опытом «создания» (установки) сайта для публикации открытых данных. Я использовал платформу с открытым исходным кодом CKAN [12]. Идти ли подобным путем, использовать другую платформу или написать свой сайт с нуля — Вам решать. Надеюсь, моя статья поможет Вам сделать верный выбор.
CKAN — это система управления данными, которая делает их доступными за счет инструментов, упрощающих их публикацию, распространение, поиск и использование. Более 50 стран, организаций и городов выбрали данную платформу для публикации своих данных. Среди них [13] Великобритания, США, Чехия, Австралия, Бразилия и прочие. Вообщем, список внушительный. Сама платформа написана на python. Здесь [14] подробная статья на английском. Здесь [15] подробная статья на русском.
По данному адресу [16] находится подробная инструкция по установке платформы. Правда, не все работает так гладко, как там описано. Я потратил порядочное количество дней, чтобы разобраться и установить платформу. В свою очередь разработчики предлагают платные [17] условия по установке, и сопровождению платформы. Раньше у них на сайте были вывешены цены, теперь же их нет. Впрочем, нас интересует CKAN как бесплатная платформа. Вы также можете сделать форк [19] этого проекта, если пожелаете. А это один из популярных форков [20] — хаб [21] открытых данных правительства Великобритании.
Вам предлагают два способа установки платформы: установка пакетом или установка из исходников. Первый способ экономит огромное количество вашей “нервной” энергии. Но он подойдет вам только в том случае, если у вас подходящая система. На данный момент это Ubuntu 12.04 (до недавнего времени была — 10.04). Вот на нее и рекомендую вам ставить данную платформу. Если же вы уверены в своих силах или уже имеете настроенную систему и не хотите от нее отказываться, то Вам поможет wiki [22] проекта. Мой опыт — OpenVZ Ubuntu 12.04.
Итак, первый путь — пакетная установка. У меня она не получилась, по указанной выше причине (несогласованность версий ОС). Но и тут я смогу дать вам пару советов. Так как это был мой первый опыт администрирования виртуального сервера (да и вообще администрирования), то мои советы могут показаться опытным (бородатым) админам детскими, но а для начинающих, я надеюсь, будут полезными.

!!!Обратите внимание на версию устанавливаемой платформы. CKAN переводится в данный момент более чем на 30 языков мира, но с разным успехом. Перевод осуществляют волонтеры. И каждая новая версия выпускается с разным набором переводов. Проследите по этому адресу [23] статус перевода той версии, которую собираетесь устанавливать. Мне пришлось участвовать в переводе русской и украинской локали (ver. 2.0 — 2.1), так как перевод не был готов. Перевод осуществляется на сайте transifex [24]. У вас есть выбор — либо ставить последнюю версию, у которой присутствует перевод, либо принять участие в переводе. Статус перевода [25] русской локали.
Делаем все по инструкции. Если без ошибок — идем дальше, если ошибки — переходите ко второму способу. Это правило работает для всех пунктов. Но прежде проверьте суть ошибки — может дело в вас или в настройках сервера.
Перед установкой базы данных нам следует дать самим себе права на перезапись стека /dev/null, иначе мы получим ошибку /dev/null: Permission denied.
Фикс простой — получаем root-овые права и чиним:
# rm /dev/null && mknod -m 0666 /dev/null c 1 3
Проверяем:
# ls -la /dev/null
crw-rw-rw- 1 root root 1, 3 2010-12-24 01:53 /dev/null
После установки PostgreSQL необходимо установить локаль и кодировку текста. Устанавливаем языки в систему:
apt-get install language-pack-ru-base (apt-get install language-pack-uk-base)
Останавливаем базу данных:
pg_dropcluster --stop 9.1 main
И устанавливаем саму локаль (учтите, что все базы будут иметь одну локаль):
pg_createcluster --locale ru_RU.UTF8 9.1 main (pg_createcluster --locale uk_UA.UTF8 9.1 main)
Перегружаемся и проверяем — теперь базы данных должны иметь нужную нам локаль и кодировку:
reboot
sudo -u postgres psql -l
Разработчики рекомендуют установить пакет solr-jetty. Но, по моим наблюдениям и опыту — он не работает. Не знаю почему. Все перепробовал, но не работает. Пришлось идти в обход. Если и у вас не получиться запустить нативным методом sorl, то ловите фикс:
Присваиваем значение последней версии jetty [27]:
JETTY_VERSION=7.6.10.v20130312
Берем ее:
wget http://download.eclipse.org/jetty/$JETTY_VERSION/dist/jetty-distribution-$JETTY_VERSION.tar.gz
Распаковываем:
tar xfz jetty-distribution-$JETTY_VERSION.tar.gz
Берем последнюю версию sorl:
wget http://apache-mirror.telesys.org.ua/lucene/solr/3.6.2/apache-solr-3.6.2.zip
Распаковываем:
unzip -q apache-solr-3.6.2.zip
Заходим:
cd apache-solr-3.6.2/example/
Запускаем в фоновом режиме sorl:
nohup java -jar start.jar&
Четко выполняйте все инструкции в мануале, и вскоре вы увидите работающий сайт.
Теперь второй путь, если у Вас не Ubuntu 12.04
Еще раз обращаю внимание на wiki [22] по установке CKAN.
Нам предлагают такой набор пакетов:
sudo apt-get install python-dev postgresql libpq-dev python-pip python-virtualenv git-core solr-jetty openjdk-6-jdk
Я же рекомендую вам установить следующий набор (не забываем apt-get update и про /dev/null (описано выше)):
sudo aptitude install python-dev postgresql-9.1 libpq-dev python-pip python-virtualenv git-core openjdk-6-jdk curl nginx gcc bcc tcc
+ дополнительная настройка описана выше
описано выше
Вам предлагают код:
paster serve /etc/ckan/default/development.ini
Мое предложение для запуска в фоне:
nohup paster serve /etc/ckan/default/development.ini&

Для тестирования на локальной машине пройденных шагов достаточно. А вот если вы хотите перекинуть на сервер свою платформу, то тут я тоже дам вам один совет.
Мой добрый совет (за который огромное спасибо ibegtin [30]) звучит так — используйте Nginx. Это значительно ускорит ваш сайт. Вот здесь [31] имеется замечательная инструкция по установке связки paster + Nginx. Мне она очень помогла решить именно таким образом вопрос с виртуализацией платформы
Во всем же остальном просто следуйте инструкции, и все у вас получиться. Если возникнут вопросы — вы можете задать их мне или написать разработчикам [32]. Также вы можете подписаться на рассылку новостей или следить за развитием проекта в twitter [33].
CKAN Storage Extension for Google Refine [34]
Integrating CKAN and Drupal [35]
Список сайтов [13], работающих на данной платформе
Сайт-каталог [36], работающий на CKAN, который собирает данные про существующие хабы данных.
Хаб открытых данных [37] в Российской Федерации
Хаб открытых данных в Российской Федерации по деятельности правоохранительных органов [38] власти
Международный хаб [39], работающий на платформе CKAN. Вам не обязательно создавать свой хаб. Вы можете загружать сюда любые открытые данные и использовать api или ссылаться на данный ресурс. Выбор за вами. Удачи!
Автор: sofist
Источник [40]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/e-lektronnoe-pravitel-stvo/38731
Ссылки в тексте:
[1] открытого правительства: http://xn--80ahccvvactsc1ibf.xn--80abeamcuufxbhgound0h9cl.xn--p1ai/
[2] открытых данных: http://opendatahandbook.org/ru/what-is-open-data/index.html
[3] обороты: http://data.mos.ru/
[4] организаций: http://mvd.ru/opendata
[5] принят закон об открытых данных: http://habrahabr.ru/post/182738/
[6] движется: http://ua.comments.ua/money/196963-maykrosoft-ukraina-dopomozhe-zrobiti.html
[7] движении: http://te-st.ru/2013/07/13/new-form/
[8] конкурсы: http://habrahabr.ru/post/177543/
[9] фестивали: http://okfestival.org/
[10] хакатоны: http://te-st.ru/2013/07/12/hackathon-neuron/
[11] Открытые данные: http://habrahabr.ru/post/117343/
[12] CKAN: http://ckan.org/
[13] них: http://ckan.org/instances/#
[14] Здесь: http://blog.okfn.org/category/okf-projects/ckan/
[15] Здесь: http://te-st.ru/tools/ckan-open-source-data-platform/
[16] адресу: https://ckan.readthedocs.org/en/latest/installing.html
[17] платные: http://ckan.org/services/
[18] хостингу: https://www.reg.ru/?rlink=reflink-717
[19] форк: https://github.com/okfn/ckan
[20] форков: https://github.com/datagovuk/ckan
[21] хаб: http://data.gov.uk
[22] wiki: https://github.com/okfn/ckan/wiki/How-to-Install-CKAN
[23] адресу: https://www.transifex.com/projects/p/ckan/
[24] transifex: https://www.transifex.com
[25] перевода: https://www.transifex.com/projects/p/ckan/language/ru/
[26] Installing CKAN from Package: https://ckan.readthedocs.org/en/latest/install-from-package.html
[27] jetty: http://download.eclipse.org/jetty/
[28] Installing CKAN from Source: https://ckan.readthedocs.org/en/latest/install-from-source.html
[29] Deploying a Source Install: http://docs.ckan.org/is/latest/deployment.html
[30] ibegtin: http://habrahabr.ru/users/ibegtin/
[31] здесь: http://www.stableit.ru/2010/04/pylons-paster-nginx.html
[32] разработчикам: http://ckan.org/contact/
[33] twitter : https://twitter.com/CKANproject
[34] CKAN Storage Extension for Google Refine: http://lab.linkeddata.deri.ie/2011/grefine-ckan/
[35] Integrating CKAN and Drupal : http://data.gov.uk/blog/integrating-ckan-and-drupal
[36] Сайт-каталог: http://datacatalogs.org/
[37] Хаб открытых данных: http://hub.opengovdata.ru/
[38] правоохранительных органов: http://data.openpolice.ru/
[39] Международный хаб: http://datahub.io/
[40] Источник: http://habrahabr.ru/post/186708/
Нажмите здесь для печати.