logoheader
Last update: 2018-01-14 ...read the latest news...

Welcome to the Java Movie Database

latest release: 1.40 FINAL (available shortly - ...which allows to import the IMDb files again (LIST files plus the new TSV files...)newicon
--> JMDB 2 Development: planning/prototyping (more or less on hold) - extending JMDB 1.x to re-use existing code



Follow JMDB development progress on Twitter or look into the News section...


What is JMDB?

Java Movie Database is a Java-based application to search for information about movies, actors, actresses, producer, director and everything related to those. It's planned that JMDB will become an open source project in future with a JMDB v2.x release but those plans are currently on hold.

IMDb logo

The information is basically the same as you can get when using the IMDb website.
Currently (22nd December 2017) it counts over 4.725.000 movies (including TV-Shows with their episodes, video games, etc.) and over 4.170.000 actors/actresses in total (actors=2.673.784/actresses=1.498.354 to be exact; NOTE: the actors.list.gz file hasn't been updated since 22nd September 2017). Back in 1999 we began with a little more than 300.000 movies and 600.000 actors and actresses in total (see the IMDb data development chart below).

Beside this base data about movies and performer there is a lot of other data available and supported by the Java Movie Database application like plots, biographies, ratings, goofs and much more. A detailed list of supported information can be found below as well as a list of unsupported data.

Here you see a chart showing the increase of movies plus actors and actresses since 1999. Between 2005-11-11 and 2006-02-03 you see a major increase of movies in a very short period of time. This was the time when the Internet Movie Database began to handle episodes of series as movies.

Development of IMDb LIST file data over the year (Replacement for SVG image)

The difference between the IMDb and JMDB is, that the Java Movie Database is an alternative way to navigate through this information. It can be run on a stand-alone PC just as in a network environment. Another advantage is that you can write your own programs and scripts to use the locally installed database (see the cinema program list at my personal website http://www.juergen-ulbts.de/) and with JMDB2 webservices are planned!

The JMDB will import the IMDb textfiles (also called IMDb LIST files) into the database system for you. In 2017 IMDb introduced a new data format for the information (called TSV files because they are TAB separated text files).
Unfortunately with the move to this new data format, most information is no longer available (full details who played in which movie and which character, including the plot, release-dates, biographies, etc.). This makes the new data format actually useless and which resulted in strong complaints as the contributors and other users delivered the data over two decades for free to the IMDb only to be left with nothing in return.
There are promises that active contributors might even get more details with the new data format in the near future but month after this announcement there is still nothing available. So for now the only option is to use the old LIST files together with the new TSV files until actually the same information previously provided in the LIST files is available in the TSV files.

The About JMDB page contains some pictures and the Using JMDB page features even more details (incl. Flash demos).

PostgreSQL logo MySQL logo MS SQL Server logo

To use JMDB, you only need a Java Runtime Environment and the database PostgreSQL, MySQL or MS SQL Server.
For best performance please use PostgreSQL, as it is the fastest of them. While the performance running the search is not actually that different, importing the data is. Importing into MySQL is 2-3 times slower compared to PostgreSQL v9.6/v10.1. The MS SQL Server 2014 (worst; does not like BULK-Inserts very much) is 9-10 times slower compared to the very fast PostgreSQL database system.
This means that you can run it on most platforms, including Windows, Linux, Mac OS X, any Unix, ArcaOS, eComStation (eCS) or the original OS/2 from IBM.
It is planned to support more databases in the future (e.g. H2). The code is already there but testing all databases requires some time and the available options should be enough already.


Here is a complete list of the supported information provided by the Internet Movie Database (sorted by name):

TSV files (*.tsv.gz) - the new format since mid 2017 which is missing almost everything you had before with the LIST files...
Currently the new format is only imported into the database but not yet used for queries. As most information is only available in the old LIST file format this didn't make sense yet.

  1. Titles (title.basics.tsv.gz) - (supported since JMDB v1.40 pre-release 4 builds in August 2017)
  2. AKA-Titles (title.akas.tsv.gz) - (supported since JMDB v1.40 pre-release 4 builds in mid December 2017)
  3. Episodes (title.episode.tsv.gz) - (supported since JMDB v1.40 pre-release 4 builds in August 2017)
  4. Ratings (title.ratings.tsv.gz) - (supported since JMDB v1.40 pre-release 4 builds in August 2017)
  5. Person Names (name.basics.tsv.gz) - (supported since JMDB v1.40 pre-release 4 builds in August 2017)
  6. Crew (title.crew.tsv.gz) - (supported since JMDB v1.40 pre-release 4 builds in August 2017)
  7. Principals (title.principals.tsv.gz) - (supported since JMDB v1.40 pre-release 4 builds in August 2017)

LIST files (*.list.gz) - the old format since 199x (until end of 2017) containing almost everything you would like to know...

  1. Actors
  2. Actresses
  3. AKA-Names
  4. AKA-Titles
  5. Alternate-Versions - (will be supported by JMDB v1.40 and later - included in JMDB v1.40 pre-release 1)
  6. Biographies
  7. Business
  8. Certificates
  9. Cinematographers
  10. Color-Info
  11. Composers
  12. Costume-Designers
  13. Countries
  14. Crazy-Credits - (will be supported by JMDB v1.40 and later - included in JMDB v1.40 pre-release 1)
  15. Directors
  16. Distributors
  17. Editors
  18. Genres
  19. German-AKA-Titles - (still supported by JMDB but no longer updated or supported by IMDb [since May 2005])
  20. Goofs
  21. Italian-AKA-Titles - (still supported by JMDB but no longer updated or supported by IMDb [since Dec. 2000])
  22. Keywords
  23. Language
  24. Literature - (will be supported by JMDB v1.40 and later - included in JMDB v1.40 pre-release 1)
  25. Locations - (will be supported by JMDB v1.40 and later - included in JMDB v1.40 pre-release 1)
  26. Miscellaneous
  27. Movie-Links - (internal references from one movie to another)
  28. Movies
  29. MPAA-Ratings-Reasons
  30. Plot
  31. Producers
  32. Production-Companies
  33. Production-Designers
  34. Quotes
  35. Ratings
  36. Release-Dates
  37. Running-Times
  38. Sound-Mix - (will be supported by JMDB v1.40 and later - included in JMDB v1.40 pre-release 2)
  39. Soundtracks - (will be supported by JMDB v1.40 and later - included in JMDB v1.40 pre-release 2)
  40. Taglines
  41. Technical - (details about the movie)
  42. Trivia
  43. Writers

There is also an unofficial IMDb MovieId list available that is supported by the Java Movie Database. The last MovieID list has been created end of April 2009 and so far it's not clear when or if there will be an update. I got the tools to update it myself in December 2009 but so far I didn't do it.

Currently available but unsupported LIST file data (sorted by name):

  1. Complete-Cast - (doesn't make sense to support as it only says if cast of a movie is complete or not)
  2. Complete-Crew - (doesn't make sense to support as it only says if crew of a movie is complete or not)
  3. ISO-AKA-Titles - (unsupported by IMDb since 1998)
  4. Laserdisc - (may have been interesting before the DVD and it's successor Blu-ray [and the discontinued HD-DVD] came up)
  5. Miscellaneous-Companies - (??? - haven't looked into it)
  6. Special-Effects-Companies - ...could be useful)

These data files will be added to supported list on user request and if it does make sense (see "complete-xxx" entries for a negative example).
The more requests I get for one list the faster it will be added.

Menu

We need help!

We're looking for volunteers creating new language files.

If you want to help, contact us!

» Contact...

Donate!

If you want to support the development you can » donate!

PayPal

Advertisement