Movie rental sample database — MongoDB, flat (8,516 rows)

A collection per table. Each primary key is the document _id; foreign keys are fields under their own names, so the SQL version's joins become $lookup stages.

Load it:
  sh import.sh                    (into mongodb://localhost:27017)
  sh import.sh "<connection string>"

Or one collection at a time: mongoimport --db movie-rental --collection <name> --file <name>.ndjson

Collections:
  countries — 8 documents
  customer_addresses — 20 documents
  customers — 20 documents
  damaged_items — 10 documents
  formats — 3 documents
  genres — 12 documents
  inventory_items — 100 documents
  languages — 8 documents
  membership_types — 3 documents
  memberships — 15 documents
  movie_cast — 2,400 documents
  movie_directors — 400 documents
  movie_genres — 700 documents
  movie_studios — 400 documents
  movies — 400 documents
  payment_methods — 4 documents
  payments — 600 documents
  people — 600 documents
  promotions — 10 documents
  purchase_order_items — 900 documents
  purchase_orders — 150 documents
  ratings — 5 documents
  rental_items — 1,000 documents
  rental_promotions — 50 documents
  rentals — 600 documents
  reviews — 30 documents
  staff — 24 documents
  staff_roles — 4 documents
  stores — 4 documents
  studios — 10 documents
  vendors — 6 documents
  wishlists — 20 documents

Types: numeric columns are Decimal128, so totals stay exact; dates and timestamps are
Date values read as UTC (the data has no time zone); times and UUIDs are strings;
JSON columns are embedded objects.

Synthetic data, CC0-1.0, from databasesample.com. The same rows as the SQL and CSV files.
