Airline sample database — MongoDB, embedded (305,672 rows)

Tables that belong to another are folded into it as arrays, so the documents read the way the application uses them. The rest are collections of their own, joined by key as in the flat version.

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

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

Collections:
  aircraft_models — 8 documents
  aircrafts — 60 documents
  airlines — 6 documents
  airport_terminals — 80 documents
  airports — 40 documents
  baggage — 8,000 documents
  baggage_rules — 4 documents
  boarding_passes — 12,000 documents
  bookings — 35,000 documents
  cabins — 4 documents
  cities — 40 documents
  countries — 12 documents
  crews — 400 documents
  flight_crews — 2,000 documents
  flight_delays — 100 documents
  flight_instances — 1,000 documents
  flights — 300 documents, each with its flight_schedules
  frequent_flyer_members — 2,000 documents
  frequent_flyer_programs — 6 documents
  gates — 400 documents
  meal_bookings — 3,000 documents
  meals — 8 documents
  passengers — 12,000 documents
  payments — 35,000 documents
  promotions — 4 documents
  refunds — 500 documents
  seat_pricing — 3,000 documents
  seats — 14,400 documents
  ticket_flights — 100,000 documents
  tickets — 70,000 documents
  users — 6,000 documents

Folded in (no collection of their own):
  flight_schedules — 300 rows, as the "flight_schedules" array on flights (its flight_id is the parent's _id)

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.
