CRM sample database — MongoDB, flat (2,636,874 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 crm --collection <name> --file <name>.ndjson

Collections:
  account_territories — 25,000 documents
  accounts — 20,000 documents
  business_units — 5 documents
  calls — 100,000 documents
  campaign_members — 80,000 documents
  campaigns — 40 documents
  competitors — 15 documents
  contacts — 60,000 documents
  contracts — 30,000 documents
  deal_competitors — 30,000 documents
  deal_products — 200,000 documents
  deal_stages — 7 documents
  deals — 80,000 documents
  industry_types — 15 documents
  invoice_lines — 1,000,000 documents
  invoices — 250,000 documents
  kb_articles — 500 documents
  kb_categories — 8 documents
  lead_sources — 8 documents
  lead_statuses — 6 documents
  leads — 60,000 documents
  meeting_participants — 90,000 documents
  meetings — 40,000 documents
  payments — 220,000 documents
  price_book_entries — 180 documents
  price_books — 3 documents
  products — 60 documents
  quote_line_items — 180,000 documents
  quotes — 60,000 documents
  roles — 6 documents
  tasks — 60,000 documents
  territories — 12 documents
  ticket_priorities — 4 documents
  ticket_statuses — 5 documents
  tickets — 50,000 documents
  users — 1,000 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.
