OpenDataPlatform/CKAN 분석

ckanext-Harvest 설치 및 데이터 불러오기

안녕하세요 씨앤텍 시스템즈의 김준형 입니다.

이번 포스트는 ckanext-Harvest에 대해서 정리해 보았습니다. 

https://github.com/ckan/ckanext-harvest 문서를 참고하여 작성하였습니다.

1.  ckanext-Harvest란?

  1.1  정의

     - CKAN-Harvest란 데이터 공유 플랫폼 CKAN에서 서로 다른 서버들간의 데이터셋을 주고 받는 기능


2.  ckanext-Harvest  설치

   2.1 redis 설치

      - sudo apt-get update
      - sudo apt-get install redis-server

     

      - CKAN의 설정파일 development.ini에서 아래의 설정을 추가합니다.

         ( 패키지로 설치했으면 production.ini 파일 수정 )

        vi /etc/ckan/default/development.ini

  2.2 가상환경 활성화

         -  . /usr/lib/ckan/default/bin/activate

 

  2.3 ckanext-harvest 패키지 다운로드

         - pip install -e git+https://github.com/ckan/ckanext-harvest.git#egg=ckanext-harvest

 

   2.4 패키지 설치

          - cd /usr/lib/ckan/default/src/ckanext-harvest

          - pip install -r pip-requirements.txt

 

    2.5 플러그인 추가

          - ckan.plugin = ... harvest ckan_harvester

 

    2.6 필수 DB 설정 (가상환경이 활성화 된 상태여야 합니다.)  

                                          ( 패키지로 설치했으면 production.ini 파일 )

       - paster --plugin=ckanext-harvest harvestet initdb --config=/etc/ckan/default/development.ini 

 

     2.7 CKAN 재시작

       - 패키지 설치 :  sudo service apache2 restart

 

       - 소스 설치 :  paster db init -c /etc/ckan/default/development.ini

                              paster serve /etc/ckan/default/development.ini

 

      2.8 Harvest 접속

           - http://ckan_url/harvest

 

 3. Ckanext-harvest를 이용한 수집

       3.1 Add Harvest Source

            - 다음과 같이 기입한다.

       

         3-2. Harvest Restart

             - 생성한 Harvest를 클릭하여 대시보드에 들어가서 Harvest를 Restart 한다.

 

 

        3-3. gather, fetch, import ( 터미널 3개 사용 ), 먼저 gather, fetch 실행한 후 마지막에 import 실행

              - gather ( 설정한 CKAN의 모든 데이터셋을 수색)

                  - paster --plugin=ckanext-harvest harvester gather_consumer --config=/etc/ckan/default/development.ini 

             

              - fetch ( 수색한 데이터셋을 DB에 저장 )

                - paster --plugin=ckanext-harvest harvester fetch_consumer --config=/etc/ckan/default/development.ini

 

 

         - import ( 보류중인 데이터셋을 저장 )

           - paster --plugin=ckanext-harvest harvester run --config=/etc/ckan/default/development.ini

 

             - 입력된 데이터셋 확인

 

 

 

감사합니다.

728x90