Project Name :- movie-recommendation-system-data
Overview: This table stores the core information about each movie, including:
movie_id: A unique identifier for each movie. title: The official title of the movie. release_date: The date the movie was released. budget: The budget of the movie in USD. revenue: The revenue generated by the movie in USD. runtime: The duration of the movie in minutes. overview: A brief description of the movie. popularity: A measure of the movie's popularity. vote_average: The average rating of the movie. vote_count: The number of votes the movie has received. tagline: A tagline for the movie. movie_status: The status of the movie (e.g., Released, Post Production).
Overview: This table stores information about different movie genres:
genre_id: A unique identifier for each genre. genre_name: The name of the genre (e.g., Action, Comedy, Drama).
Overview: This junction table connects movies with their corresponding genres. It stores the relationship between movies and genres:
movie_id: A foreign key referencing the movie table. genre_id: A foreign key referencing the genre table.
Overview: This table stores keywords associated with movies:
keyword_id: A unique identifier for each keyword. keyword_name: The keyword itself (e.g., "space travel," "superhero," "dystopian future").
Overview: This junction table connects movies with their associated keywords:
movie_id: A foreign key referencing the movie table. keyword_id: A foreign key referencing the keyword table.
Overview: This table stores information about people involved in the movie industry, such as actors, directors, producers, and writers:
person_id: A unique identifier for each person. person_name: The name of the person.
Overview: This junction table connects movies with their cast members:
movie_id: A foreign key referencing the movie table. person_id: A foreign key referencing the person table. character_name: The name of the character played by the actor. gender_id: A foreign key referencing the gender table. cast_order: The order of the actor in the cast.
Overview: This junction table connects movies with their crew members:
movie_id: A foreign key referencing the movie table. person_id: A foreign key referencing the person table. department_id: A foreign key referencing the department table. job: The job title of the crew member (e.g., Director, Producer, Writer).
Overview: This table stores information about different departments in the movie industry:
department_id: A unique identifier for each department. department_name: The name of the department (e.g., Directing, Writing, Production).
Overview: This table stores information about production companies:
company_id: A unique identifier for each company. company_name: The name of the company.
Overview: This junction table connects movies with their production companies:
movie_id: A foreign key referencing the movie table. company_id: A foreign key referencing the production_company table.
Overview: This table stores information about countries:
country_id: A unique identifier for each country. country_iso_code: The ISO 3166-1 alpha-2 code for the country. country_name: The name of the country.
Overview: This junction table connects movies with their production countries:
movie_id: A foreign key referencing the movie table. country_id: A foreign key referencing the country table.
Overview: This table stores information about languages:
language_id: A unique identifier for each language. language_code: The ISO 639-1 language code. language_name: The name of the language.
Overview: This table stores information about different language roles in a movie:
role_id: A unique identifier for each language role. language_role: The role of the language (e.g., Original language, English US, English UK).
Overview: This junction table connects movies with their languages and language roles:
movie_id: A foreign key referencing the movie table. language_id: A foreign key referencing the language table. language_role_id: A foreign key referencing the language_role table.
Once the data is cleaned and loaded into the database, you can perform various analyses to gain valuable insights:
- Popular genres: Identify the most popular movie genres.
- Top-grossing movies: Find the highest-grossing movies of all time.
- Prolific actors and directors: Identify the most active actors and directors.
- Movie trends: Analyze trends in movie budgets, revenues, and popularity over time.
- Collaborative relationships: Discover frequent collaborations between actors and directors.
This PostgreSQL database serves as a comprehensive repository for movie-related data. It stores information about movies, including:
- Core Movie Details: Title, release date, budget, revenue, runtime, overview, tagline, popularity, vote average, and vote count.
- Genre and Keyword Associations: Links movies to specific genres and keywords.
- Cast and Crew: Stores information about actors, directors, producers, and other crew members.
- Production Companies and Countries: Tracks the companies and countries involved in movie production.
- Language Information: Records the languages used in movies.
This movie database offers a valuable resource for various applications:
- Data Analysis and Insights: Analyze trends in movie popularity, revenue, and genre preferences. Identify successful movie formulas and patterns. Explore correlations between different movie attributes.
- Machine Learning and AI: Train machine learning models to predict movie success or recommend movies to users. Develop natural language processing models to analyze movie scripts and reviews.
- Web and Mobile Applications: Build movie recommendation systems, search engines, and social media platforms. Create data-driven movie review and analysis websites.
- Educational Purposes: Use the database for teaching database design, SQL querying, and data analysis.
Clone the Repository:
- [https://github.com/Coderbiswajit24/movie-recommendation-system-data] OR
- [git clone https://github.com/bbrumm/databasestar/tree/main/sample_databases/sample_db_movies/postgres] Set Up PostgreSQL Database: Create a new PostgreSQL database. Import the SQL script provided in the repository to create the schema and tables. Populate the database with movie data from various sources (e.g., TMDb API, IMDb, Box Office Mojo).
For assistance, you can:
- Consult the README: Refer to the project's README file for detailed instructions and explanations.
- Explore the GitHub Repository: Check the issues, pull requests, and discussions for insights and solutions.
- Community Forums: Seek help on online forums like Stack Overflow or Reddit.
- Connect with me on Social Media: Discuss the project and get help on platforms like LinkedIn [https://www.linkedin.com/in/biswajitsasmal].
This project is primarily maintained by @bbrumm (Ben) @miqueldespuig ( Miquel Despuig) @KateKatze (Kate) @sfaut (sfaut). Contributions from the open-source community are welcome. You can contribute by:
Reporting Issues: Identify and report bugs or feature requests. Submitting Pull Requests: Contribute code improvements, bug fixes, or new features. Providing Feedback: Share your thoughts and suggestions on the project's design and functionality. By collaborating and contributing to this project, you can help improve the database and its usefulness to the community.
License:- This project is licensed under the MIT License.
