콘텐츠로 이동

Data Management and Distributed Processing Standard v1.3

Cloudflare Workers 환경에 최적화된 NewsFork 데이터 관리 및 분산 처리 표준 v1.3입니다. 파일명에서 날짜를 배제하고, 효율적인 청킹(Chunking)과 병렬 처리를 통해 시스템 가용성을 극대화하는 데 초점을 맞춥니다.


  • ID 체계:
    • domain_id: <authority>:<country>:<registered_domain> (예: gov:sg:ica.gov.sg)
    • seed_id: <domain_id>::<content_type> (예: gov:sg:ica.gov.sg::news)
  • 폴더 구조 (Hive-style): 시계열 정보는 폴더 경로에만 포함, 파일명에는 넣지 않습니다.
    • 구조: [root]/country={cc}/category={cat}/content={nature}/date=YYYY-MM-DD/

데이터 유형고정 파일명 규칙권장 청크 크기비고
Raw Dataraw_NNNN.json10MB ~ 20MB수집 원본
Cleaned Datacleaned_NNNN.json20MB 내외스키마 정제 완료
Enriched Datafinal_NNNN.json5MB ~ 10MBLLM 요약/번역 등
Evidencerobots.txt, index.html원본 크기수집 당시 증거
Metadataraw_metadata.json< 1MB파티션 전체 청크 요약

3. Cloudflare Workers 분산 처리 원칙

섹션 제목: “3. Cloudflare Workers 분산 처리 원칙”
  • 메모리 관리: JSON.parse() 시 메모리 팽창(3~5배)을 고려하여 개별 청크는 20MB 이하로 유지합니다.
  • 병렬성 (Fan-out): 단일 Worker의 루프 처리를 지양하고, Cloudflare Queues로 여러 Worker가 각 청크를 병렬 처리하도록 설계합니다.
  • Streaming: 대용량 파일 접근 시 object.body.getReader()를 통한 Streaming API 사용을 의무화합니다.
  • 비용 최적화: 너무 작은 파일(1MB 미만)은 R2 API 호출 비용을 증가시키므로, 10MB 단위를 골디락스 존으로 권장합니다.