테이블 명세
구조 설계를 바탕으로 실제 DBMS에서 구현할 쿼리를 작성한다.
개요
이를 통해 실제로 DBMS 내에 구현할 해당 테이블에 대하여 설명한다.
USER
POSTS
NEWSFFED_OF_TOPIC
DOMAIN
URL
POST_INFO
DATE
LASTLY_POST
TAG_INFO
LOG
SEARCH_LOG
SEARCH_REALTIME
VARIABLE
자세한 테이블 구조는 아래 링크 참고
================================================
posts 테이블
칼럼명 | 칼럼 설명 | Type | Null | Default |
_id | PK | oid | ||
title | 글 제목 200자 제한 | string | ||
title_token | 제목 토큰 (공백으로 스플릿시킨 리스트) | <list:string> | ||
author | 작성자 | string | 0 | |
post | 글 내용 200자 제한 | string | ||
tag | 관여 태그 | <list:string> | O | [ ] |
img | 게시물의 첫 이미지 | string | 0 | |
url | 게시물 URL | string | ||
hashed | 게시물 해쉬 (제목 + 내용 + 작성자) md5 hash (약 32자) | string | ||
info | 게시물 출처 식별명 | string | O | |
view | 조회수 | int | 0 | |
fav_cnt | 좋아요 수 | int | 0 | |
token | 형태소 분석한 토큰 리스트 | <list:string> | O | [ ] |
date | 작성/수집 날짜 | date | now() | |
end_date | 만료 날짜(공모전 등 한정) | date | O | |
login | 로그인 유무 로그인을 해야함: 1 로그인을 안해도 됨: 0 | int | ||
topic | 게시물의 LDA 토픽 [0.X, 0.X, ...] | <list:float> |
인덱스 적용 칼럼 | 용도 |
hashed | 게시물 중복 검사 |
date | 게시물 시간순 정렬 |
users 테이블
칼럼명 | 칼럼 설명 | Type | Null | Default |
_id | PK | oid | ||
user_id | 사용자 학번/아이디 | string | ||
user_pw | 사용자 비밀번호 해쉬 | string | ||
user_name | 사용자 이름 | string | ||
user_major | 사용자 직책/학과 | string | O | |
topic | 사용자의 LDA 토픽 [0.X, 0.X, ...] | <list:float> | ||
tag | 사용자 관심도 태그 사용자가 가장관심을 준 TOP X개 태그 리스트 | <list:string> | O | [ ] |
fav_list | 사용자가 좋아요 누른 게시물 (해당 게시물의 토픽, 태그를 그대로 가져옴) 최대 X개 | <list>{ _id:<oid>, topic:<list>, tag:<list>, } | O | [ ] |
view_list | 사용자가 접근한 게시물 최대 X개 | <list>{ _id:<oid>, topic:<list>, tag:<list> } | O | [ ] |
search_list | 사용자가 검색한 키워드 최대 X개 | <list:string> | O | [ ] |
newsfeed_list | 사용자가 접근한 뉴스피드 리스트 및 빈도수 | <list>{ newsfeed_id: <oid>, topic:<list>, tag:<list>, count:<int>, } | O | [ ] |
인덱스 적용 칼럼 | 용도 |
user_id | 로그인 성능 향상 |
url 테이블
칼럼명 | 칼럼 설명 | Type | Null | Default |
_id | PK | oid | ||
url | 수집 대상 url | string | ||
info | 수집 대상 식별 정보 | string | ||
title_tag | 수집 대상 정적 태그 리스트 | <list:string> | ||
login | 로그인 필요 여부 필요: 1 필요X: 0 | int | ||
crawling | 수집 여부 True: 수집 가능 False: 수집 불가 | boolean | O | |
stay_cnt | 몇 사이클동안 쉴지 결정하는 횟수 | int | O | 10 |
domain 테이블
칼럼명 | 칼럼 설명 | Type | Null | Default |
_id | PK | oid | ||
title | 도메인 제목 | string | ||
title_token | 제목 토큰 (띄어쓰기로 스플릿) | <list:string> | ||
date | 수집 날짜 | date | ||
post | 도메인 설명 | string | ||
img | 도메인 첫 이미지 | string | ||
url | 도메인 URL | string | ||
tag | 관여 태그 리스트 | <list:string> | [ "사이트", ] | |
login | 로그인 여부 1: 로그인 필수 0: 로그인 불필요 | int | 0 | |
view | 조회 | int | ||
fav_cnt | 좋아요 수 | int | 0 | |
token | 형태소 분석 태그 | <list:string> |
lastly_post 테이블
칼럼명 | 칼럼 설명 | Type | Null | Default |
_id | PK | oid | ||
info_id | 타겟 사이트 식별 값 | string | ||
title | 가장 최근 게시물 제목 | string |
인덱스 적용 칼럼 | 용도 |
title | 갱신 검사 성능 향상 |
tag_info 테이블
칼럼명 | 칼럼 설명 | Type | Null | Default |
_id | PK | oid | ||
tag_id | 태그 명칭 | string | ||
tag_string | 해당 태그를 갖는 조건별 단어 | <list:string> |
인덱스 적용 칼럼 | 용도 |
tag_id | 검사 성능 |
ex_url 테이블
칼럼명 | 칼럼 설명 | Type | Null | Default |
_id | PK | oid | ||
domain | 수집된 외부 도메인 (해당 도메인은 타 테이블에 등록된 URL이 아니여야 함) | string | ||
inter_url | 해당 도메인 내부의 URL | <list:string> |
variable 테이블
칼럼명 | 칼럼 설명 | Type | Null | Default |
_id | PK | oid | ||
key | 식별 | string | ||
value | 데이터 | <object> |
Last updated