E-commerce sample database — MongoDB, flat (6,622 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 ecommerce --collection <name> --file <name>.ndjson

Collections:
  addresses — 90 documents
  audit_logs — 20 documents
  brands — 40 documents
  cart_items — 100 documents
  categories — 22 documents
  countries — 1 documents
  discount_coupons — 80 documents
  order_items — 1,000 documents
  order_returns — 20 documents
  order_statuses — 6 documents
  orders — 360 documents
  payment_methods — 5 documents
  payments — 350 documents
  product_attribute_values — 1,200 documents
  product_attributes — 4 documents
  product_images — 1,000 documents
  product_inventories — 1,200 documents
  product_reviews — 60 documents
  products — 400 documents
  return_reasons — 6 documents
  shipments — 340 documents
  shipping_methods — 5 documents
  shopping_carts — 60 documents
  suppliers — 30 documents
  support_messages — 35 documents
  support_tickets — 10 documents
  tax_rates — 12 documents
  users — 70 documents
  warehouses — 6 documents
  wishlist_items — 60 documents
  wishlists — 30 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.
