Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

# TODO: Crawl Crawl Crawler (working title) Design Doc #14

Open
minhoryang opened this issue Dec 18, 2015 · 6 comments
Open

# TODO: Crawl Crawl Crawler (working title) Design Doc #14

minhoryang opened this issue Dec 18, 2015 · 6 comments

Comments

@minhoryang
Copy link
Owner

No description provided.

@minhoryang minhoryang changed the title # TODO : Crawl Crawl Crawler (working title) Design Doc # TODO: Crawl Crawl Crawler (working title) Design Doc Dec 18, 2015
@minhoryang
Copy link
Owner Author

학교에서 하던 일 중에 다른 연구실과 많이 겹치는 부분이 News Crawling 이었다. 많은 연구실이 똑같은 일을 계속 반복했는데, 이 문제를 총대를 매고 해결해 보려다가, 내가 휴학했었지. 요즘엔 Apache Nutch나 Nifi라는게 나왔네.
그런데 Nutch쪽은 Search Engine을 위한 Crawling? 정확히는 Spider를 키우는 느낌이고, (ScoringFilter가 있다?!), Nifi는 Data Pipeline을 관리해주는데, Clustering과 몇개가 부실한 느낌?
Nifi에서는 이와 관련된 사항을 조치할 예정이긴 함. https://cwiki.apache.org/confluence/display/NIFI/NiFi+Feature+Proposals … "Clustering Redesign" "Multiple Versions of the Same Extension"
또 문제는 우리가 사실 Nutch와 Nifi 두개를 엮어서 처리하고 싶다는 것. 그러니까 크롤링과, 프로세싱이 한번에 되는 툴이 필요하다는 것. 근데 사실 두개가 진짜 동시에 필요할까?

@minhoryang
Copy link
Owner Author

하고싶은것

P0

  • 크롤링 스크립트, 파싱 스크립트(+테스트), 워크플로우. 환경 설정 등의 버전관리
  • Metadata로 누가, 어떤 버전의 스크립트/워크플로우로, 언제, 어디 클러스터링에서 어디 스토리지로, ... 를 다 관리했으면 좋겠다.

P2

  • 다이나믹 로동 (클러스터링의 In/Out이 자유자재였으면 좋겠음, 일감을 몰아주는 것도 설정 가능 했으면 좋겠음.)
  • 로드 분배 (클러스터링에 군집을 만들었으면 좋겠고, 워크플로우의 우선순위를 보여줬으면 좋겠다. 분배현황도)
  • 좋은 Visualize
  • Queue 관리
  • Storage 관리
  • Log 관리

P3

  • 누군가의 필요에 의한 우직한 Crontab
  • 로그인 (각 연구실의 OAuth 서버를 등록, 각 연구실의 OAuth 서버에서는 LDAP이던지 각 사용자를 관리)
  • 유저+기록관리

    P4

  • 각 Workflow나 Script에 대한 Issue System....

@minhoryang
Copy link
Owner Author

쓰일 기술

Consul
Docker
Github + Issue (파일기반 이슈가 있나?)
one of NoSQL
one of MessageQueue
Logstash

  • CI가 필요하나?
    • runner는 누가 맡나?
  • NoSQL이 Storage로 적합하나?
    • Document Storage가 필요하지않나?
    • Metadata Storage로는 NoSQL이 괜찮은데.
  • Push시스템?
  • Kafka & Storm?
  • RabbitMQ?
  • Web MGMT?
  • No DB?

@minhoryang
Copy link
Owner Author

  • '학술용'이라는 키워드가 붙어야한다.

@minhoryang
Copy link
Owner Author

  • Rethinkdb/ pipelinedb
  • scheduler?

@minhoryang
Copy link
Owner Author

  • luigi
  • oozie
  • azkaban

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant