20

프로젝트 개요 & 요구사항

Weekly Project - 소셜 네트워크 그래프

5일간 배운 것을 하나로!

왜 중요한가?

이번 주에 배운 것들:

  • Day 1: 그래프 데이터 모델 기초 (왜 그래프?)
  • Day 2: Neo4j 설치 & 환경 구성
  • Day 3: Cypher CRUD (CREATE, MATCH, SET, DELETE, MERGE)
  • Day 4: 패턴 매칭 & 관계 탐색

이제 이 모든 것을 실제 프로젝트로 종합합니다.

핵심 개념

프로젝트: 소셜 네트워크 분석 시스템

시나리오: 당신은 소셜 네트워크 스타트업의 첫 번째 데이터 엔지니어입니다. 다음 기능을 구현해야 합니다:

  1. 사용자 그래프 구축 - 사용자와 친구 관계 모델링
  2. 친구 추천 - "알 수도 있는 친구" 기능
  3. 영향력 분석 - 네트워크에서 가장 영향력 있는 사용자 찾기
  4. 커뮤니티 탐지 - 긴밀하게 연결된 그룹 찾기

기술 스택

기술용도
Neo4j그래프 데이터베이스
Cypher쿼리 언어
Neo4j Browser시각화 & 쿼리 실행
(선택) Python데이터 생성 & 분석 스크립트

평가 기준

항목배점설명
데이터 모델25%노드/관계 설계 적절성
CRUD 구현25%생성/조회/수정/삭제 기능
분석 쿼리30%추천, 영향력, 커뮤니티 분석
코드 품질10%가독성, 주석, 구조
문서화10%README, 스키마 문서

최소 요구사항

  • 노드: 30개 이상
  • 관계: 50개 이상
  • 노드 타입: 3개 이상
  • 관계 타입: 3개 이상
핵심 포인트
  • 30+ 노드, 50+ 관계 규모의 그래프 구축
  • 친구 추천 알고리즘 구현
  • 영향력 분석 쿼리 작성
  • 문서화 포함