기술 포트폴리오 · 슬라이드
컴포넌트 인기도 기반
차등 수집
오픈소스 라이브러리의 활성도를 수집·점수화하고, 인기도에 따라 갱신 주기를 차등화해 한정된 크롤링 자원을 효율화
래브라도랩스(LabradorLabs) · 데이터파트 · 2022 · 데이터 엔지니어
01 · 배경
왜 필요했나
- 라이브러리 선택엔 커뮤니티 활성도·유지보수 상태 같은 질적 정보가 필요
- 활성도 신호: Stars · Forks · Commits · 기여자 수
- 대상은 많고 크롤링 자원은 한정 → 전부 같은 주기 갱신은 비효율
02 · 접근
수집 → 점수 → 차등 스케줄
① 수집GitHub·GitLab GraphQL API로 활성도 지표
② 점수화중요도·인기도 점수 산출
③ 차등 스케줄점수 높을수록 자주 갱신
④ 최신성핵심 컴포넌트 정보 우선 갱신
핵심은 "모두 똑같이"가 아니라 인기도 우선순위로 갱신 주기를 차등화한 것.
03 · 임팩트
결과
풍부한 정보라이브러리 활성도·유지보수 상태 질적 정보 제공
자원 효율한정된 크롤링 자원을 인기 컴포넌트에 집중
최신성 유지핵심 컴포넌트 정보를 더 자주 갱신
전략 자산화점수 기반 차등 수집을 표준 전략으로 정립
04 · 역할 & 배움
내 역할
- 데이터 엔지니어로서 수집 모듈 개발 → 인기도 점수화 → 차등 수집 전략 수립·적용
- GraphQL로 필요한 활성도 지표만 효율적으로 수집
- 배움: 자원이 한정될수록 가치(인기도) 기준 우선순위가 수집 효율을 좌우
🕷 라이브러리 크롤러 시리즈 ② — ① 멀티 언어 크롤러 구축 · ② 인기도 차등 수집 · ③ 크롤러 현대화