GithubHelp home page GithubHelp logo

imdb_database's Introduction

◎프로젝트 설명

본 프로젝트는 데이터베이스를 이용한 프로젝트입니다. 인터넷 영화 데이터베이스 (IMDB)에서 제공하는 tsv 형태의 파일들을 자신만의 기준을 통해서 데이터분석을 하고 E-R모델링, 관계형 테이블 분석까지 합니다. 이후 python과 MySql을 통해서 인터넷 영화 데이터베이스 (IMDB)의 데이터베이스를 쿼리들을 통해서 직접 데이터베스 관리하는 프로그램을 구현하였습니다.

◎ 인터넷 영화 데이터베이스 (IMDB) 데이터 분석

IMDB에서 제공하는 tsv파일의 데이터를 다음과 같이 분석하였습니다.

따라서 다음과 같은 형태로 tsv의 파일들의 어트리뷰트를 파악하고 tsv들을 테이블화 할 수 있었습니다.

데이터정규화

◎E-R 모델링

위에서 한 데이터분석을 바탕으로 다음과 같은 E-R모델링을 실시하였습니다. 기본적으로 tsv파일을 그대로 한 테이블로 사용하는 것이 아닌 원활한 기본키, 외래키 사용을 위해서 다음과 같은 형태로 구성하였습니다.

E-R모델링

◎관계형 데이터베이스 테이블 설계

E-R 모델링을 기반으로 관계형 테이블을 다음과 같이 설계 하였습니다. Directors, Writers테이블과 같이 원활한 join관계 설정을 위하여 기본키 없이 외래키만 사용하는 테이블들도 일부 사용하였습니다

관계형테이블

◎인덱스 적용

Sql을 통해서 데이터를 검색 및 관리 할 때, 적절한 부분에 인덱스를 적용하면 더 빠른 검색 속도를 보장 할 수 있습니다. 따라서 일부 테이블의 빨간색 글씨의 필드에 인덱스를 적용 하였습니다. 또한 인덱스를 사용하였을 때와 사용하지 않았을 때의 속도차이 또한 정리하였습니다.

인덱스 적용

인덱스속도

◎실행 결과

mysql workbench

db1

db2

python을 이용한 mysql연결

db3

db4

db5.gif

imdb_database's People

Contributors

islandofdream avatar

Watchers

 avatar

imdb_database's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.