본 프로젝트는 데이터베이스를 이용한 프로젝트입니다. 인터넷 영화 데이터베이스 (IMDB)에서 제공하는 tsv 형태의 파일들을 자신만의 기준을 통해서 데이터분석을 하고 E-R모델링, 관계형 테이블 분석까지 합니다. 이후 python과 MySql을 통해서 인터넷 영화 데이터베이스 (IMDB)의 데이터베이스를 쿼리들을 통해서 직접 데이터베스 관리하는 프로그램을 구현하였습니다.
IMDB에서 제공하는 tsv파일의 데이터를 다음과 같이 분석하였습니다.
따라서 다음과 같은 형태로 tsv의 파일들의 어트리뷰트를 파악하고 tsv들을 테이블화 할 수 있었습니다.
위에서 한 데이터분석을 바탕으로 다음과 같은 E-R모델링을 실시하였습니다. 기본적으로 tsv파일을 그대로 한 테이블로 사용하는 것이 아닌 원활한 기본키, 외래키 사용을 위해서 다음과 같은 형태로 구성하였습니다.
E-R 모델링을 기반으로 관계형 테이블을 다음과 같이 설계 하였습니다. Directors, Writers테이블과 같이 원활한 join관계 설정을 위하여 기본키 없이 외래키만 사용하는 테이블들도 일부 사용하였습니다
Sql을 통해서 데이터를 검색 및 관리 할 때, 적절한 부분에 인덱스를 적용하면 더 빠른 검색 속도를 보장 할 수 있습니다. 따라서 일부 테이블의 빨간색 글씨의 필드에 인덱스를 적용 하였습니다. 또한 인덱스를 사용하였을 때와 사용하지 않았을 때의 속도차이 또한 정리하였습니다.