맛집 추천 AI 서비스
make install
# CSV 파일을 분리된 파일들로 변환 (선택사항)
make separate-data
make run
whatToEat_DB_seoul_diner_20250301_plus_review_cnt.csv
: 모든 데이터가 하나의 파일에 포함
데이터를 용도별로 분리하여 효율적으로 관리:
-
diner_basic.csv
: 기본 정보diner_idx
: 음식점 고유 IDdiner_name
: 음식점 이름diner_num_address
: 주소diner_lat
,diner_lon
: 좌표
-
diner_categories.csv
: 카테고리 정보diner_idx
: 음식점 고유 IDdiner_category_large
: 대분류diner_category_middle
: 중분류diner_category_detail
: 소분류diner_count
: 카테고리별 음식점 수
-
diner_reviews.csv
: 리뷰 및 평점 정보diner_idx
: 음식점 고유 IDdiner_review_cnt
: 리뷰 수diner_review_avg
: 평균 평점diner_grade
: 등급
-
diner_menus.csv
: 메뉴 정보diner_idx
: 음식점 고유 IDdiner_menu_name
: 메뉴명 리스트diner_menu_price
: 메뉴 가격 리스트
-
diner_tags.csv
: 태그 정보diner_idx
: 음식점 고유 IDdiner_tag
: 태그 리스트
make help # 사용 가능한 명령어 확인
make install # 의존성 설치
make dev # 개발 의존성 포함 설치
make run # 애플리케이션 실행
make test # 테스트 실행
make lint # 코드 린팅
make format # 코드 포맷팅
make separate-data # CSV 파일 분리
make clean # 캐시 및 임시 파일 정리
- 메모리 효율성: 필요한 데이터만 로드하여 메모리 사용량 감소
- 로딩 속도: 검색 엔진은 기본 정보만, UI는 필요한 정보만 로드
- 유지보수성: 각 데이터 타입별로 독립적인 업데이트 가능
- 확장성: 새로운 데이터 타입 추가 시 기존 구조에 영향 없음
기존 단일 CSV 파일에서 분리된 파일들로 마이그레이션:
# 1. 데이터 분리 실행
make separate-data
# 2. 애플리케이션 재시작
make run
분리된 파일들이 존재하면 자동으로 사용하고, 없으면 기존 단일 파일을 사용합니다.