{
  "format": "dataset-manifest/1",
  "slug": "restaurant-sample-database",
  "version": 1,
  "seed": "flagship:restaurant-sample-database:1k",
  "engine": 2,
  "engineVersion": "1.0.0",
  "spec": {
    "format": "dataset/1",
    "engine": 2,
    "slug": "restaurant-sample-database",
    "name": "Restaurant sample database",
    "tagline": "Orders, order lines and payments, a priced menu, reservations, feedback, staff shifts and delivery riders.",
    "description": "A restaurant over five years, 2021 to 2025, that seats guests, takes bookings and delivers. Customers order from a 49-item menu in six categories; every order line is priced at the menu price, every order totals its lines, and every order is paid in full within ninety minutes of being placed. About four orders in ten go out with a delivery rider. Orders peak at lunch and again, higher, at dinner. Some guests rate their order in the days after it; a rating comes from the customer who placed the order. Staff and riders work set shifts, attendance has one row per person per day, and online bookings are for one to four people at tables that seat at least four.",
    "domain": "restaurants",
    "shape": "transactional",
    "useCases": [
      "sql-practice",
      "bi-dashboards",
      "test-fixtures"
    ],
    "keywords": [
      "restaurant",
      "orders",
      "menu",
      "reservations",
      "sample database"
    ],
    "locale": "en_US",
    "license": "CC0-1.0",
    "version": 1,
    "seed": "flagship:restaurant-sample-database",
    "tables": {
      "area_codes": {
        "description": "Rows for the area_codes table.",
        "rows": 10,
        "columns": {
          "id": {
            "kind": "pk"
          },
          "area_code": {
            "kind": "enum",
            "values": [
              "DTN",
              "MID",
              "HBR",
              "UNI",
              "OLD",
              "RVR",
              "NHL",
              "EST",
              "WST",
              "APT"
            ],
            "unique": true
          },
          "area_description": {
            "kind": "enum",
            "values": [
              "Downtown",
              "Midtown",
              "Harbor",
              "University District",
              "Old Town",
              "Riverside",
              "North Hills",
              "East Side",
              "West End",
              "Airport"
            ]
          }
        }
      },
      "attendance": {
        "description": "Rows for the attendance table.",
        "rows": 30,
        "columns": {
          "attendance_id": {
            "kind": "pk"
          },
          "date": {
            "kind": "date",
            "from": "2021-01-01",
            "to": "2025-12-31"
          },
          "staff_id": {
            "kind": "fk",
            "ref": "staff.staff_id",
            "skew": "flat"
          },
          "status": {
            "kind": "enum",
            "values": [
              "present",
              "late",
              "absent",
              "on_leave"
            ],
            "weights": [
              86,
              6,
              4,
              4
            ]
          }
        }
      },
      "customer_offers": {
        "description": "Rows for the customer_offers table.",
        "rows": 20,
        "columns": {
          "id": {
            "kind": "pk"
          },
          "customer_id": {
            "kind": "fk",
            "ref": "customers.customer_id",
            "skew": "flat"
          },
          "offer_id": {
            "kind": "fk",
            "ref": "special_offers.offer_id",
            "skew": "flat"
          }
        }
      },
      "customers": {
        "description": "Rows for the customers table.",
        "rows": 30,
        "columns": {
          "customer_id": {
            "kind": "pk"
          },
          "address": {
            "kind": "location.streetAddress"
          },
          "email": {
            "kind": "internet.email",
            "from": {
              "firstName": "first_name",
              "lastName": "last_name"
            },
            "unique": true
          },
          "first_name": {
            "kind": "person.firstName"
          },
          "last_name": {
            "kind": "person.lastName"
          },
          "phone": {
            "kind": "phone.number"
          },
          "premium_status": {
            "kind": "bool",
            "trueRate": 0.12
          }
        }
      },
      "delivery_assignments": {
        "description": "Rows for the delivery_assignments table.",
        "rows": 45,
        "columns": {
          "id": {
            "kind": "pk"
          },
          "area_code": {
            "kind": "fk",
            "ref": "area_codes.id",
            "skew": "flat"
          },
          "delivery_boy_id": {
            "kind": "fk",
            "ref": "delivery_boys.delivery_boy_id",
            "skew": "flat"
          }
        }
      },
      "delivery_boys": {
        "description": "Rows for the delivery_boys table.",
        "rows": 30,
        "columns": {
          "delivery_boy_id": {
            "kind": "pk"
          },
          "assigned_area_code": {
            "kind": "enum",
            "values": [
              "DTN",
              "MID",
              "HBR",
              "UNI",
              "OLD",
              "RVR",
              "NHL",
              "EST",
              "WST",
              "APT"
            ],
            "description": "The area the rider starts a shift in."
          },
          "name": {
            "kind": "person.fullName"
          },
          "phone": {
            "kind": "phone.number"
          }
        }
      },
      "delivery_shifts": {
        "description": "Rows for the delivery_shifts table.",
        "rows": 4,
        "columns": {
          "shift_id": {
            "kind": "pk"
          },
          "shift_end_time": {
            "kind": "enum",
            "values": [
              "10:30:00",
              "14:30:00",
              "15:00:00",
              "17:30:00",
              "19:00:00",
              "22:30:00",
              "23:30:00"
            ],
            "type": "time"
          },
          "shift_start_time": {
            "kind": "enum",
            "values": [
              "10:30:00",
              "14:30:00",
              "15:00:00",
              "17:30:00",
              "19:00:00",
              "22:30:00",
              "23:30:00"
            ],
            "type": "time"
          }
        }
      },
      "feedback": {
        "description": "Rows for the feedback table.",
        "rows": 50,
        "columns": {
          "feedback_id": {
            "kind": "pk"
          },
          "comments": {
            "kind": "enum",
            "values": [
              "Food arrived hot",
              "Delivery was late",
              "Great service",
              "Portion was small",
              "Will order again",
              "Order was missing an item",
              "Lovely atmosphere",
              "Too salty",
              "Best pizza in town",
              "Friendly staff"
            ],
            "nullable": true,
            "nullRate": 0.35
          },
          "customer_id": {
            "kind": "copy",
            "from": "order_id.customer_id",
            "description": "The customer who placed the order."
          },
          "feedback_date": {
            "kind": "datetime",
            "after": "order_id.order_date",
            "withinDays": 3,
            "dayProfile": "waking"
          },
          "order_id": {
            "kind": "fk",
            "ref": "orders.order_id",
            "unique": true
          },
          "rating": {
            "kind": "enum",
            "values": [
              "5",
              "4",
              "3",
              "2",
              "1"
            ],
            "weights": [
              44,
              31,
              12,
              7,
              6
            ],
            "type": "integer"
          }
        }
      },
      "food_and_beverage_catalog": {
        "description": "Rows for the food_and_beverage_catalog table.",
        "rows": 49,
        "columns": {
          "item_id": {
            "kind": "pk"
          },
          "category_id": {
            "kind": "fk",
            "ref": "food_category.category_id",
            "skew": "long-tail"
          },
          "description": {
            "kind": "enum",
            "values": [
              "330 ml bottle",
              "500 ml bottle",
              "A 125 ml glass",
              "A 175 ml glass",
              "A double shot",
              "A pint of the house lager",
              "A pot for one",
              "Arborio rice, wild mushrooms and parmesan",
              "Baked cheesecake with berry compote",
              "Beef patty, cheddar, pickles and fries",
              "Beef ragu, bechamel and parmesan",
              "Beer-battered cod, chips and mushy peas",
              "Black bean patty, avocado and fries",
              "Burrata, heirloom tomatoes and basil oil",
              "Coffee, mascarpone and cocoa",
              "Dairy free",
              "Dark chocolate layer cake",
              "Egg, pecorino, black pepper and guanciale",
              "Espresso with steamed milk",
              "Espresso with steamed milk and foam",
              "Falafel, hummus, salad and flatbread",
              "Fresh mint leaves",
              "Herb-roasted, with gravy and mash",
              "Ice cream, hot fudge, nuts and a cherry",
              "Lightly fried squid with lemon aioli",
              "Made in house",
              "Mozzarella, gorgonzola, fontina and parmesan",
              "Peppers, mushrooms, onion and olives",
              "Roasted tomatoes, basil and a swirl of cream",
              "Romaine, parmesan, croutons and anchovy dressing",
              "Salmon fillet, greens and lemon butter",
              "Scallops with pea puree and pancetta",
              "Shrimp, garlic, chilli and white wine",
              "Six wings, buffalo sauce and blue cheese dip",
              "Slow-cooked onions under a gruyere crouton",
              "Smoked ribs with barbecue glaze and slaw",
              "Squeezed to order",
              "Three scoops",
              "Toasted sourdough with garlic butter",
              "Tomato, cucumber, olives, red onion and feta",
              "Tomato, garlic and basil on grilled bread",
              "Tomato, garlic and chilli",
              "Tomato, mozzarella and basil",
              "Tomato, mozzarella and pepperoni",
              "Twelve ounces, chips and peppercorn sauce",
              "Vegetables, beans and small pasta in tomato broth",
              "Warm, with vanilla ice cream"
            ]
          },
          "is_available": {
            "kind": "bool",
            "trueRate": 0.94
          },
          "name": {
            "kind": "enum",
            "values": [
              "Tomato Basil Soup",
              "French Onion Soup",
              "Minestrone",
              "Caesar Salad",
              "Greek Salad",
              "Burrata and Tomato Salad",
              "Garlic Bread",
              "Chicken Wings",
              "Fried Calamari",
              "Bruschetta",
              "Ribeye Steak",
              "Cheeseburger",
              "Half Roast Chicken",
              "Pork Ribs",
              "Grilled Salmon",
              "Fish and Chips",
              "Seared Scallops",
              "Mushroom Risotto",
              "Veggie Burger",
              "Falafel Plate",
              "Margherita Pizza",
              "Pepperoni Pizza",
              "Four Cheese Pizza",
              "Vegetable Pizza",
              "Spaghetti Carbonara",
              "Lasagna",
              "Penne Arrabbiata",
              "Shrimp Linguine",
              "Chocolate Cake",
              "New York Cheesecake",
              "Tiramisu",
              "Apple Pie",
              "Vanilla Ice Cream",
              "Ice Cream Sundae",
              "Lemon Sorbet",
              "Espresso",
              "Cappuccino",
              "Latte",
              "English Breakfast Tea",
              "Green Tea",
              "Mint Tea",
              "Cola",
              "Lemonade",
              "Sparkling Water",
              "Fresh Orange Juice",
              "Draft Beer",
              "House Red Wine",
              "House White Wine",
              "Prosecco"
            ],
            "unique": true
          },
          "price": {
            "kind": "decimal",
            "min": 2,
            "max": 30,
            "scale": 2
          },
          "subcategory_id": {
            "kind": "fk",
            "ref": "food_subcategory.subcategory_id",
            "skew": "long-tail"
          }
        }
      },
      "food_category": {
        "description": "Rows for the food_category table.",
        "rows": 6,
        "columns": {
          "category_id": {
            "kind": "pk"
          },
          "category_name": {
            "kind": "enum",
            "values": [
              "Starters",
              "Mains",
              "Pizza and Pasta",
              "Desserts",
              "Hot Drinks",
              "Cold Drinks"
            ],
            "unique": true
          }
        }
      },
      "food_subcategory": {
        "description": "Rows for the food_subcategory table.",
        "rows": 14,
        "columns": {
          "subcategory_id": {
            "kind": "pk"
          },
          "category_id": {
            "kind": "fk",
            "ref": "food_category.category_id",
            "skew": "long-tail"
          },
          "subcategory_name": {
            "kind": "enum",
            "values": [
              "Soups",
              "Salads",
              "Small Plates",
              "Grill",
              "Seafood",
              "Vegetarian",
              "Pizza",
              "Pasta",
              "Cakes",
              "Ice Cream",
              "Coffee",
              "Tea",
              "Soft Drinks",
              "Beer and Wine"
            ],
            "unique": true
          }
        }
      },
      "order_items": {
        "description": "Rows for the order_items table.",
        "rows": 1000,
        "columns": {
          "order_item_id": {
            "kind": "pk"
          },
          "item_id": {
            "kind": "fk",
            "ref": "food_and_beverage_catalog.item_id",
            "weights": [
              6,
              4,
              3,
              7,
              4,
              2,
              9,
              8,
              5,
              5,
              6,
              14,
              6,
              4,
              6,
              7,
              2,
              4,
              5,
              3,
              14,
              13,
              7,
              5,
              10,
              7,
              5,
              4,
              5,
              5,
              6,
              3,
              3,
              4,
              1,
              6,
              9,
              8,
              3,
              2,
              2,
              12,
              7,
              8,
              5,
              9,
              6,
              5,
              3
            ]
          },
          "order_id": {
            "kind": "fk",
            "ref": "orders.order_id",
            "skew": "flat"
          },
          "price": {
            "kind": "decimal",
            "min": 0,
            "max": 28,
            "scale": 2
          },
          "quantity": {
            "kind": "enum",
            "values": [
              "1",
              "2",
              "3",
              "4"
            ],
            "weights": [
              64,
              25,
              7,
              4
            ],
            "type": "integer"
          }
        }
      },
      "orders": {
        "description": "Rows for the orders table.",
        "rows": 350,
        "columns": {
          "order_id": {
            "kind": "pk"
          },
          "customer_id": {
            "kind": "fk",
            "ref": "customers.customer_id",
            "skew": "long-tail"
          },
          "delivery_boy_id": {
            "kind": "fk",
            "ref": "delivery_boys.delivery_boy_id",
            "nullable": true,
            "nullRate": 0.6
          },
          "order_date": {
            "kind": "datetime",
            "from": "2021-01-01",
            "to": "2025-12-31",
            "dayProfile": "meals",
            "trend": "growing"
          },
          "order_status": {
            "kind": "constant",
            "value": "completed"
          },
          "total_amount": {
            "kind": "decimal",
            "min": 0,
            "max": 600,
            "scale": 2
          }
        }
      },
      "payments": {
        "description": "Rows for the payments table.",
        "rows": 350,
        "columns": {
          "payment_id": {
            "kind": "pk"
          },
          "amount": {
            "kind": "decimal",
            "min": 0,
            "max": 165,
            "scale": 2
          },
          "order_id": {
            "kind": "fk",
            "ref": "orders.order_id",
            "unique": true
          },
          "payment_date": {
            "kind": "datetime",
            "from": "2021-01-01",
            "to": "2025-12-31"
          },
          "payment_method": {
            "kind": "enum",
            "values": [
              "card",
              "cash",
              "mobile_wallet",
              "gift_card"
            ],
            "weights": [
              58,
              22,
              17,
              3
            ]
          }
        }
      },
      "promotion_items": {
        "description": "Rows for the promotion_items table.",
        "rows": 60,
        "columns": {
          "id": {
            "kind": "pk"
          },
          "item_id": {
            "kind": "fk",
            "ref": "food_and_beverage_catalog.item_id",
            "skew": "flat"
          },
          "promotion_id": {
            "kind": "fk",
            "ref": "promotions.promotion_id",
            "skew": "flat"
          }
        }
      },
      "promotions": {
        "description": "Rows for the promotions table.",
        "rows": 12,
        "columns": {
          "promotion_id": {
            "kind": "pk"
          },
          "description": {
            "kind": "enum",
            "values": [
              "Dine-in only",
              "Delivery and dine-in",
              "Weekdays only",
              "While stocks last"
            ]
          },
          "discount_percentage": {
            "kind": "enum",
            "values": [
              "10",
              "15",
              "20",
              "25"
            ],
            "weights": [
              35,
              30,
              25,
              10
            ],
            "type": "integer"
          },
          "end_date": {
            "kind": "date",
            "from": "2021-01-01",
            "to": "2025-12-31"
          },
          "promotion_name": {
            "kind": "title",
            "min": 2,
            "max": 3,
            "pool": [
              "happy",
              "hour",
              "summer",
              "winter",
              "pasta",
              "pizza",
              "night",
              "week",
              "brunch",
              "family",
              "lunch",
              "special",
              "festival",
              "tasting",
              "menu",
              "weekend"
            ]
          },
          "start_date": {
            "kind": "date",
            "from": "2021-01-01",
            "to": "2025-12-31"
          }
        }
      },
      "reservations": {
        "description": "Rows for the reservations table.",
        "rows": 60,
        "columns": {
          "reservation_id": {
            "kind": "pk"
          },
          "customer_id": {
            "kind": "fk",
            "ref": "customers.customer_id"
          },
          "number_of_people": {
            "kind": "enum",
            "values": [
              "2",
              "4",
              "3",
              "1"
            ],
            "weights": [
              52,
              24,
              14,
              10
            ],
            "type": "integer"
          },
          "reservation_date": {
            "kind": "datetime",
            "from": "2021-01-01",
            "to": "2025-12-31",
            "dayProfile": "meals"
          },
          "table_number": {
            "kind": "fk",
            "ref": "restaurant_tables.table_number"
          }
        }
      },
      "restaurant_tables": {
        "description": "Rows for the restaurant_tables table.",
        "rows": 16,
        "columns": {
          "table_number": {
            "kind": "pk"
          },
          "table_capacity": {
            "kind": "int",
            "min": 4,
            "max": 12
          }
        }
      },
      "shift_assignments": {
        "description": "Rows for the shift_assignments table.",
        "rows": 50,
        "columns": {
          "id": {
            "kind": "pk"
          },
          "delivery_boy_id": {
            "kind": "fk",
            "ref": "delivery_boys.delivery_boy_id",
            "skew": "flat"
          },
          "shift_id": {
            "kind": "fk",
            "ref": "delivery_shifts.shift_id",
            "skew": "flat"
          }
        }
      },
      "special_offers": {
        "description": "Rows for the special_offers table.",
        "rows": 6,
        "columns": {
          "offer_id": {
            "kind": "pk"
          },
          "description": {
            "kind": "enum",
            "values": [
              "Off a first order",
              "Off dine-in orders",
              "Off every order",
              "Off lunch orders",
              "Off one order in your birthday month",
              "Off the bill"
            ]
          },
          "discount_percentage": {
            "kind": "int",
            "min": 10,
            "max": 20
          },
          "eligibility_criteria": {
            "kind": "enum",
            "values": [
              "New customers",
              "Birthday month",
              "Premium members",
              "Weekdays 11:00 to 15:00",
              "Parties of four or more",
              "Valid student ID"
            ]
          },
          "offer_name": {
            "kind": "enum",
            "values": [
              "Welcome Offer",
              "Birthday Treat",
              "Loyalty Reward",
              "Lunch Deal",
              "Family Night",
              "Student Discount"
            ],
            "unique": true
          }
        }
      },
      "staff": {
        "description": "Rows for the staff table.",
        "rows": 45,
        "columns": {
          "staff_id": {
            "kind": "pk"
          },
          "name": {
            "kind": "person.fullName"
          },
          "phone": {
            "kind": "phone.number"
          },
          "position": {
            "kind": "enum",
            "values": [
              "server",
              "line_cook",
              "chef",
              "host",
              "bartender",
              "dishwasher",
              "manager"
            ],
            "weights": [
              34,
              22,
              6,
              10,
              10,
              13,
              5
            ]
          }
        }
      },
      "staff_shift_assignments": {
        "description": "Rows for the staff_shift_assignments table.",
        "rows": 80,
        "columns": {
          "id": {
            "kind": "pk"
          },
          "staff_id": {
            "kind": "fk",
            "ref": "staff.staff_id",
            "skew": "flat"
          },
          "staff_shift_id": {
            "kind": "fk",
            "ref": "staff_shifts.staff_shift_id",
            "skew": "flat"
          }
        }
      },
      "staff_shifts": {
        "description": "Rows for the staff_shifts table.",
        "rows": 4,
        "columns": {
          "staff_shift_id": {
            "kind": "pk"
          },
          "shift_end_time": {
            "kind": "enum",
            "values": [
              "06:30:00",
              "10:00:00",
              "14:30:00",
              "15:30:00",
              "18:00:00",
              "22:30:00",
              "23:30:00"
            ],
            "type": "time"
          },
          "shift_start_time": {
            "kind": "enum",
            "values": [
              "06:30:00",
              "10:00:00",
              "14:30:00",
              "15:30:00",
              "18:00:00",
              "22:30:00",
              "23:30:00"
            ],
            "type": "time"
          }
        }
      }
    }
  },
  "counts": {
    "area_codes": 10,
    "customers": 30,
    "delivery_boys": 30,
    "delivery_assignments": 45,
    "delivery_shifts": 4,
    "food_category": 6,
    "food_subcategory": 14,
    "food_and_beverage_catalog": 49,
    "orders": 350,
    "feedback": 50,
    "order_items": 1000,
    "payments": 350,
    "promotions": 12,
    "promotion_items": 60,
    "restaurant_tables": 16,
    "reservations": 60,
    "shift_assignments": 50,
    "special_offers": 6,
    "customer_offers": 20,
    "staff": 45,
    "attendance": 30,
    "staff_shifts": 4,
    "staff_shift_assignments": 80
  },
  "artifacts": [
    {
      "file": "csv/area_codes.csv",
      "format": "csv",
      "table": "area_codes",
      "key": "datasets/restaurant-sample-database/v1/csv/area_codes.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/csv/area_codes.csv",
      "bytes": 204,
      "sha256": "1df922d68a3d2a5477aebf1531115208fe4e42e3581517949059bf24983a825e",
      "rows": 10,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/customers.csv",
      "format": "csv",
      "table": "customers",
      "key": "datasets/restaurant-sample-database/v1/csv/customers.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/csv/customers.csv",
      "bytes": 2620,
      "sha256": "8ef5ab5e03165603e03d0fe02158d287f99cc00209d702e6258a1bceed8ed19e",
      "rows": 30,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/delivery_boys.csv",
      "format": "csv",
      "table": "delivery_boys",
      "key": "datasets/restaurant-sample-database/v1/csv/delivery_boys.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/csv/delivery_boys.csv",
      "bytes": 1213,
      "sha256": "1e9a0f08e9560777c7ecca12b858bf3b3e89f5932975e1d6b852610cd80daf8b",
      "rows": 30,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/delivery_assignments.csv",
      "format": "csv",
      "table": "delivery_assignments",
      "key": "datasets/restaurant-sample-database/v1/csv/delivery_assignments.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/csv/delivery_assignments.csv",
      "bytes": 423,
      "sha256": "704921008d329973d9544322f23b9d1a1b8525c473241757545e605682f43031",
      "rows": 45,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/delivery_shifts.csv",
      "format": "csv",
      "table": "delivery_shifts",
      "key": "datasets/restaurant-sample-database/v1/csv/delivery_shifts.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/csv/delivery_shifts.csv",
      "bytes": 126,
      "sha256": "3c880d2325912a165f80fcff76ec5ece42620b037bc4d3a36ebfa11a7d863a7e",
      "rows": 4,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/food_category.csv",
      "format": "csv",
      "table": "food_category",
      "key": "datasets/restaurant-sample-database/v1/csv/food_category.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/csv/food_category.csv",
      "bytes": 108,
      "sha256": "567d0d320fceddf04542d4873ab941d8515ba935ed8d6d3208702ec36b38a318",
      "rows": 6,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/food_subcategory.csv",
      "format": "csv",
      "table": "food_subcategory",
      "key": "datasets/restaurant-sample-database/v1/csv/food_subcategory.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/csv/food_subcategory.csv",
      "bytes": 236,
      "sha256": "2df59064f53efdc4900ba1060711a400cb67313a89dcaaa06cb8a79947a4fb04",
      "rows": 14,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/food_and_beverage_catalog.csv",
      "format": "csv",
      "table": "food_and_beverage_catalog",
      "key": "datasets/restaurant-sample-database/v1/csv/food_and_beverage_catalog.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/csv/food_and_beverage_catalog.csv",
      "bytes": 3199,
      "sha256": "261234f129887b39c89b71e8ce055c9688909b60517d4245ca6650f125bc2fe9",
      "rows": 49,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/orders.csv",
      "format": "csv",
      "table": "orders",
      "key": "datasets/restaurant-sample-database/v1/csv/orders.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/csv/orders.csv",
      "bytes": 15200,
      "sha256": "14010b9dfd822784fd4c387f611e7d2f5fb2ee413b19de2e914bcf6ab8804f9a",
      "rows": 350,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/feedback.csv",
      "format": "csv",
      "table": "feedback",
      "key": "datasets/restaurant-sample-database/v1/csv/feedback.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/csv/feedback.csv",
      "bytes": 2082,
      "sha256": "ba749d135d46e234e5e08fcd59863a940e3f4aca4230556e97487917dcd0bdc2",
      "rows": 50,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/order_items.csv",
      "format": "csv",
      "table": "order_items",
      "key": "datasets/restaurant-sample-database/v1/csv/order_items.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/csv/order_items.csv",
      "bytes": 17280,
      "sha256": "affce0447c313886df1882ed32d14d80705eb5b76f4d48d9156dabbbaf0fb47d",
      "rows": 1000,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/payments.csv",
      "format": "csv",
      "table": "payments",
      "key": "datasets/restaurant-sample-database/v1/csv/payments.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/csv/payments.csv",
      "bytes": 13770,
      "sha256": "91eb8754707532f06994708a40893e16d803de92486a10bfdff032f608bbc63b",
      "rows": 350,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/promotions.csv",
      "format": "csv",
      "table": "promotions",
      "key": "datasets/restaurant-sample-database/v1/csv/promotions.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/csv/promotions.csv",
      "bytes": 819,
      "sha256": "bb4217c66723d5e0078352ac2bc15c8b99ea72c70a8e61df1f6f3b80663422d7",
      "rows": 12,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/promotion_items.csv",
      "format": "csv",
      "table": "promotion_items",
      "key": "datasets/restaurant-sample-database/v1/csv/promotion_items.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/csv/promotion_items.csv",
      "bytes": 565,
      "sha256": "a341854a5c33a9bc497748b1cb247c723525baf6ecdb4803834951628f000bc8",
      "rows": 60,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/restaurant_tables.csv",
      "format": "csv",
      "table": "restaurant_tables",
      "key": "datasets/restaurant-sample-database/v1/csv/restaurant_tables.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/csv/restaurant_tables.csv",
      "bytes": 118,
      "sha256": "87e7d4e856e84960d0521274bef67846c6b1a1409d4adadc4757a0ebbab8a0cb",
      "rows": 16,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/reservations.csv",
      "format": "csv",
      "table": "reservations",
      "key": "datasets/restaurant-sample-database/v1/csv/reservations.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/csv/reservations.csv",
      "bytes": 1928,
      "sha256": "e2de3abcee9d0dd913d72684fb814141950cd721a820b5ab540f63ebb74537cf",
      "rows": 60,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/shift_assignments.csv",
      "format": "csv",
      "table": "shift_assignments",
      "key": "datasets/restaurant-sample-database/v1/csv/shift_assignments.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/csv/shift_assignments.csv",
      "bytes": 456,
      "sha256": "5d0d5970eb4fa9acf9881e1125c9b0923f1823d42e862ffc645cb3a15533b2a4",
      "rows": 50,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/special_offers.csv",
      "format": "csv",
      "table": "special_offers",
      "key": "datasets/restaurant-sample-database/v1/csv/special_offers.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/csv/special_offers.csv",
      "bytes": 425,
      "sha256": "584ffe9e509a0750d90e0b8dad28a1a1a9c1402b8b42f099d50e495e35770484",
      "rows": 6,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/customer_offers.csv",
      "format": "csv",
      "table": "customer_offers",
      "key": "datasets/restaurant-sample-database/v1/csv/customer_offers.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/csv/customer_offers.csv",
      "bytes": 187,
      "sha256": "a5ad22522b793b78efba93c322b794bd55c5cbca75cb0a5ed31164d68d8cdd09",
      "rows": 20,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/staff.csv",
      "format": "csv",
      "table": "staff",
      "key": "datasets/restaurant-sample-database/v1/csv/staff.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/csv/staff.csv",
      "bytes": 1977,
      "sha256": "d4ef09e64de1e93df79b52a04665c9d9bc1cdd92048a14ce98171a424afe5b60",
      "rows": 45,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/attendance.csv",
      "format": "csv",
      "table": "attendance",
      "key": "datasets/restaurant-sample-database/v1/csv/attendance.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/csv/attendance.csv",
      "bytes": 794,
      "sha256": "ca297174b863ed8a46377d312de56ad5bed7dc2f4782f269e1c8907289f170b8",
      "rows": 30,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/staff_shifts.csv",
      "format": "csv",
      "table": "staff_shifts",
      "key": "datasets/restaurant-sample-database/v1/csv/staff_shifts.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/csv/staff_shifts.csv",
      "bytes": 132,
      "sha256": "ca5895f23a72874fb70439b598dfeac1423cb17f96a98befc5b2a7a8f9e90d3a",
      "rows": 4,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/staff_shift_assignments.csv",
      "format": "csv",
      "table": "staff_shift_assignments",
      "key": "datasets/restaurant-sample-database/v1/csv/staff_shift_assignments.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/csv/staff_shift_assignments.csv",
      "bytes": 719,
      "sha256": "72cb2af5c2118284b435232e825d1f892dbabf2f8266fe8eeba9d6243eb1c2a5",
      "rows": 80,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "restaurant-sample-database.json",
      "format": "json",
      "table": null,
      "key": "datasets/restaurant-sample-database/v1/restaurant-sample-database.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/restaurant-sample-database.json",
      "bytes": 329407,
      "sha256": "75c9bd683324249c1cea9a2f1aef606e9a6553fe9e06e86abdaf3b82dd3f6753",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    },
    {
      "file": "sql/postgres.sql",
      "format": "sql-postgres",
      "table": null,
      "key": "datasets/restaurant-sample-database/v1/sql/postgres.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/sql/postgres.sql",
      "bytes": 106016,
      "sha256": "20818823e6a2e0f98b616547ca734ad94583fc7330a0afe1ad252944ab7a9c1c",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mysql.sql",
      "format": "sql-mysql",
      "table": null,
      "key": "datasets/restaurant-sample-database/v1/sql/mysql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/sql/mysql.sql",
      "bytes": 103151,
      "sha256": "9084d6fdb2a088a17634941e2fd89e4c04549b2454c3e068a5d5a0533de40b50",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mssql.sql",
      "format": "sql-mssql",
      "table": null,
      "key": "datasets/restaurant-sample-database/v1/sql/mssql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/sql/mssql.sql",
      "bytes": 106487,
      "sha256": "89d49dea7ed9fe8106af8b60cb8d25a47a180f82301ded1611cc3f2e63376727",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/sqlite.sql",
      "format": "sql-sqlite",
      "table": null,
      "key": "datasets/restaurant-sample-database/v1/sql/sqlite.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/sql/sqlite.sql",
      "bytes": 101385,
      "sha256": "399f9be9329d544e4db0a3ffbec154584e4b34545c18febc86557939b93f317e",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "prisma/seed.ts",
      "format": "prisma-seed",
      "table": null,
      "key": "datasets/restaurant-sample-database/v1/prisma/seed.ts",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/prisma/seed.ts",
      "bytes": 258149,
      "sha256": "da85066e7e2a2461490084f29e437fe68b35410a5308b954fd8fd600330fe647",
      "rows": null,
      "contentType": "application/typescript; charset=utf-8"
    },
    {
      "file": "django/fixtures.json",
      "format": "django-fixture",
      "table": null,
      "key": "datasets/restaurant-sample-database/v1/django/fixtures.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/django/fixtures.json",
      "bytes": 406535,
      "sha256": "98b11b9f0dc245265205a775102ff8ef831af0924e85ef79290784265b075ec1",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    }
  ],
  "flagship": {
    "sizes": {
      "1k": {
        "rows": 2321,
        "counts": {
          "area_codes": 10,
          "customers": 30,
          "delivery_boys": 30,
          "delivery_assignments": 45,
          "delivery_shifts": 4,
          "food_category": 6,
          "food_subcategory": 14,
          "food_and_beverage_catalog": 49,
          "orders": 350,
          "feedback": 50,
          "order_items": 1000,
          "payments": 350,
          "promotions": 12,
          "promotion_items": 60,
          "restaurant_tables": 16,
          "reservations": 60,
          "shift_assignments": 50,
          "special_offers": 6,
          "customer_offers": 20,
          "staff": 45,
          "attendance": 30,
          "staff_shifts": 4,
          "staff_shift_assignments": 80
        },
        "notes": [],
        "downloads": [
          {
            "format": "sql-postgres",
            "label": "PostgreSQL",
            "file": "flagship/1k/postgres.sql.gz",
            "key": "datasets/restaurant-sample-database/v1/flagship/1k/postgres.sql.gz",
            "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/flagship/1k/postgres.sql.gz",
            "bytes": 30724,
            "sha256": "9b921f7092f693020b0415e7eb71f2663f9312cdd37fd44a1031c899b0a3ab0a",
            "raw": {
              "bytes": 112244,
              "sha256": "e683f5f034b1cb5c95cd03d239bae6e8dbde057f3742f91f1b17970b4ecb3432"
            },
            "contentType": "application/gzip"
          },
          {
            "format": "sql-mysql",
            "label": "MySQL",
            "file": "flagship/1k/mysql.sql.gz",
            "key": "datasets/restaurant-sample-database/v1/flagship/1k/mysql.sql.gz",
            "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/flagship/1k/mysql.sql.gz",
            "bytes": 30174,
            "sha256": "177c8a601c02f3f6095d6d19934c1e3985d7b1bb05bec9ffcae32b7aa6a5fbaf",
            "raw": {
              "bytes": 109379,
              "sha256": "c0ca4eac29902e693a53044029071f9768e7479bd1d744d0533d014735511a13"
            },
            "contentType": "application/gzip"
          },
          {
            "format": "sql-sqlite",
            "label": "SQLite",
            "file": "flagship/1k/sqlite.sql.gz",
            "key": "datasets/restaurant-sample-database/v1/flagship/1k/sqlite.sql.gz",
            "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/flagship/1k/sqlite.sql.gz",
            "bytes": 29822,
            "sha256": "99af8d7b826eaffdf7d6f0bc9b704855d8f7e05d73084f76aa1f3f4594c019ce",
            "raw": {
              "bytes": 107613,
              "sha256": "036319c80b2fa6a267fa10264598d330030787a73addf2ee4fed59e5d9d348a7"
            },
            "contentType": "application/gzip"
          },
          {
            "format": "csv",
            "label": "CSV",
            "file": "flagship/1k/csv.zip",
            "key": "datasets/restaurant-sample-database/v1/flagship/1k/csv.zip",
            "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/flagship/1k/csv.zip",
            "bytes": 30005,
            "sha256": "53cdfd923a146b858bd6c9dc246cfc2b556f1023f0243a44b628f40e01d3c485",
            "tables": {
              "area_codes": {
                "bytes": 204,
                "sha256": "1df922d68a3d2a5477aebf1531115208fe4e42e3581517949059bf24983a825e"
              },
              "attendance": {
                "bytes": 794,
                "sha256": "ca297174b863ed8a46377d312de56ad5bed7dc2f4782f269e1c8907289f170b8"
              },
              "customer_offers": {
                "bytes": 187,
                "sha256": "a5ad22522b793b78efba93c322b794bd55c5cbca75cb0a5ed31164d68d8cdd09"
              },
              "customers": {
                "bytes": 2620,
                "sha256": "8ef5ab5e03165603e03d0fe02158d287f99cc00209d702e6258a1bceed8ed19e"
              },
              "delivery_assignments": {
                "bytes": 423,
                "sha256": "704921008d329973d9544322f23b9d1a1b8525c473241757545e605682f43031"
              },
              "delivery_boys": {
                "bytes": 1213,
                "sha256": "1e9a0f08e9560777c7ecca12b858bf3b3e89f5932975e1d6b852610cd80daf8b"
              },
              "delivery_shifts": {
                "bytes": 126,
                "sha256": "3c880d2325912a165f80fcff76ec5ece42620b037bc4d3a36ebfa11a7d863a7e"
              },
              "feedback": {
                "bytes": 2082,
                "sha256": "ba749d135d46e234e5e08fcd59863a940e3f4aca4230556e97487917dcd0bdc2"
              },
              "food_and_beverage_catalog": {
                "bytes": 3199,
                "sha256": "261234f129887b39c89b71e8ce055c9688909b60517d4245ca6650f125bc2fe9"
              },
              "food_category": {
                "bytes": 108,
                "sha256": "567d0d320fceddf04542d4873ab941d8515ba935ed8d6d3208702ec36b38a318"
              },
              "food_subcategory": {
                "bytes": 236,
                "sha256": "2df59064f53efdc4900ba1060711a400cb67313a89dcaaa06cb8a79947a4fb04"
              },
              "order_items": {
                "bytes": 17280,
                "sha256": "affce0447c313886df1882ed32d14d80705eb5b76f4d48d9156dabbbaf0fb47d"
              },
              "orders": {
                "bytes": 15200,
                "sha256": "14010b9dfd822784fd4c387f611e7d2f5fb2ee413b19de2e914bcf6ab8804f9a"
              },
              "payments": {
                "bytes": 13770,
                "sha256": "91eb8754707532f06994708a40893e16d803de92486a10bfdff032f608bbc63b"
              },
              "promotion_items": {
                "bytes": 565,
                "sha256": "a341854a5c33a9bc497748b1cb247c723525baf6ecdb4803834951628f000bc8"
              },
              "promotions": {
                "bytes": 819,
                "sha256": "bb4217c66723d5e0078352ac2bc15c8b99ea72c70a8e61df1f6f3b80663422d7"
              },
              "reservations": {
                "bytes": 1928,
                "sha256": "e2de3abcee9d0dd913d72684fb814141950cd721a820b5ab540f63ebb74537cf"
              },
              "restaurant_tables": {
                "bytes": 118,
                "sha256": "87e7d4e856e84960d0521274bef67846c6b1a1409d4adadc4757a0ebbab8a0cb"
              },
              "shift_assignments": {
                "bytes": 456,
                "sha256": "5d0d5970eb4fa9acf9881e1125c9b0923f1823d42e862ffc645cb3a15533b2a4"
              },
              "special_offers": {
                "bytes": 425,
                "sha256": "584ffe9e509a0750d90e0b8dad28a1a1a9c1402b8b42f099d50e495e35770484"
              },
              "staff": {
                "bytes": 1977,
                "sha256": "d4ef09e64de1e93df79b52a04665c9d9bc1cdd92048a14ce98171a424afe5b60"
              },
              "staff_shift_assignments": {
                "bytes": 719,
                "sha256": "72cb2af5c2118284b435232e825d1f892dbabf2f8266fe8eeba9d6243eb1c2a5"
              },
              "staff_shifts": {
                "bytes": 132,
                "sha256": "ca5895f23a72874fb70439b598dfeac1423cb17f96a98befc5b2a7a8f9e90d3a"
              }
            },
            "contentType": "application/zip"
          }
        ],
        "checks": {
          "postgres": {
            "version": "18.3",
            "ok": true
          },
          "sqlite": {
            "version": "3.53.1",
            "ok": true
          },
          "notRun": [
            {
              "engine": "MySQL",
              "note": "Written from the same rows; not loaded here, no MySQL server runs in the build."
            }
          ]
        },
        "rules": [
          {
            "name": "An order line is priced at the menu price",
            "violations": 0
          },
          {
            "name": "Every order has at least one line",
            "violations": 0
          },
          {
            "name": "An order totals its lines",
            "violations": 0
          },
          {
            "name": "Every order is paid once, in full, within ninety minutes",
            "violations": 0
          },
          {
            "name": "Feedback comes from the customer who ordered, after the order",
            "violations": 0
          },
          {
            "name": "A dish sits in a subcategory of its own category",
            "violations": 0
          },
          {
            "name": "A booked party fits its table",
            "violations": 0
          },
          {
            "name": "One attendance row per person per day, and no pairing listed twice",
            "violations": 0
          },
          {
            "name": "Shifts end after they start, and promotions run at least a week",
            "violations": 0
          }
        ],
        "dirty": {
          "report": {
            "rates": {
              "missing": 0.03,
              "typos": 0.03,
              "outliers": 0.005,
              "duplicates": 0.01
            },
            "tables": {
              "customers": {
                "duplicates": 0,
                "columns": {
                  "address": {
                    "missing": 0,
                    "typos": 2,
                    "outliers": 0
                  },
                  "email": {
                    "missing": 3,
                    "typos": 1,
                    "outliers": 0
                  },
                  "first_name": {
                    "missing": 1,
                    "typos": 0,
                    "outliers": 0
                  },
                  "last_name": {
                    "missing": 0,
                    "typos": 1,
                    "outliers": 0
                  },
                  "phone": {
                    "missing": 4,
                    "typos": 0,
                    "outliers": 0
                  }
                }
              },
              "delivery_boys": {
                "duplicates": 0,
                "columns": {
                  "assigned_area_code": {
                    "missing": 0,
                    "typos": 1,
                    "outliers": 0
                  },
                  "name": {
                    "missing": 1,
                    "typos": 0,
                    "outliers": 0
                  }
                }
              },
              "delivery_assignments": {
                "duplicates": 1,
                "columns": {}
              },
              "food_and_beverage_catalog": {
                "duplicates": 0,
                "columns": {
                  "description": {
                    "missing": 4,
                    "typos": 2,
                    "outliers": 0
                  },
                  "is_available": {
                    "missing": 5,
                    "typos": 0,
                    "outliers": 0
                  },
                  "name": {
                    "missing": 1,
                    "typos": 3,
                    "outliers": 0
                  },
                  "price": {
                    "missing": 1,
                    "typos": 0,
                    "outliers": 0
                  }
                }
              },
              "orders": {
                "duplicates": 1,
                "columns": {
                  "order_date": {
                    "missing": 5,
                    "typos": 0,
                    "outliers": 0
                  },
                  "order_status": {
                    "missing": 9,
                    "typos": 8,
                    "outliers": 0
                  },
                  "total_amount": {
                    "missing": 8,
                    "typos": 0,
                    "outliers": 2
                  }
                }
              },
              "feedback": {
                "duplicates": 1,
                "columns": {
                  "comments": {
                    "missing": 0,
                    "typos": 2,
                    "outliers": 0
                  },
                  "customer_id": {
                    "missing": 1,
                    "typos": 0,
                    "outliers": 0
                  },
                  "feedback_date": {
                    "missing": 2,
                    "typos": 0,
                    "outliers": 0
                  },
                  "rating": {
                    "missing": 2,
                    "typos": 0,
                    "outliers": 0
                  }
                }
              },
              "order_items": {
                "duplicates": 16,
                "columns": {
                  "price": {
                    "missing": 18,
                    "typos": 0,
                    "outliers": 3
                  },
                  "quantity": {
                    "missing": 28,
                    "typos": 0,
                    "outliers": 6
                  }
                }
              },
              "payments": {
                "duplicates": 6,
                "columns": {
                  "amount": {
                    "missing": 10,
                    "typos": 0,
                    "outliers": 2
                  },
                  "payment_date": {
                    "missing": 8,
                    "typos": 0,
                    "outliers": 0
                  },
                  "payment_method": {
                    "missing": 11,
                    "typos": 11,
                    "outliers": 0
                  }
                }
              },
              "promotions": {
                "duplicates": 0,
                "columns": {
                  "description": {
                    "missing": 2,
                    "typos": 1,
                    "outliers": 0
                  },
                  "discount_percentage": {
                    "missing": 1,
                    "typos": 0,
                    "outliers": 0
                  },
                  "end_date": {
                    "missing": 1,
                    "typos": 0,
                    "outliers": 0
                  }
                }
              },
              "reservations": {
                "duplicates": 0,
                "columns": {
                  "reservation_date": {
                    "missing": 1,
                    "typos": 0,
                    "outliers": 0
                  }
                }
              },
              "special_offers": {
                "duplicates": 0,
                "columns": {
                  "eligibility_criteria": {
                    "missing": 0,
                    "typos": 1,
                    "outliers": 0
                  }
                }
              },
              "staff": {
                "duplicates": 1,
                "columns": {
                  "name": {
                    "missing": 2,
                    "typos": 1,
                    "outliers": 0
                  },
                  "phone": {
                    "missing": 1,
                    "typos": 1,
                    "outliers": 0
                  },
                  "position": {
                    "missing": 2,
                    "typos": 3,
                    "outliers": 0
                  }
                }
              },
              "attendance": {
                "duplicates": 0,
                "columns": {
                  "date": {
                    "missing": 2,
                    "typos": 0,
                    "outliers": 0
                  },
                  "status": {
                    "missing": 0,
                    "typos": 2,
                    "outliers": 0
                  }
                }
              },
              "staff_shift_assignments": {
                "duplicates": 2,
                "columns": {}
              }
            },
            "totals": {
              "missing": 134,
              "typos": 40,
              "outliers": 13,
              "duplicates": 28
            }
          },
          "downloads": [
            {
              "format": "dirty-sql-postgres",
              "label": "PostgreSQL, with faults",
              "file": "flagship/1k/dirty-postgres.sql.gz",
              "key": "datasets/restaurant-sample-database/v1/flagship/1k/dirty-postgres.sql.gz",
              "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/flagship/1k/dirty-postgres.sql.gz",
              "bytes": 29565,
              "sha256": "c01b2982b08cba79d98b291b3689edf86aaa6e95fd04fa8627acc4d4a3ff648f",
              "raw": {
                "bytes": 105873,
                "sha256": "fa126046c353526cd5dbfcba93d033a921e0465965cfffe46b0024b3120bf352"
              },
              "contentType": "application/gzip"
            },
            {
              "format": "dirty-csv",
              "label": "CSV, with faults",
              "file": "flagship/1k/dirty-csv.zip",
              "key": "datasets/restaurant-sample-database/v1/flagship/1k/dirty-csv.zip",
              "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/flagship/1k/dirty-csv.zip",
              "bytes": 30137,
              "sha256": "e3148c7d1768a5ca42b2c58294b75656e27e882fb9099f58e5d7923c5c584b2a",
              "tables": {
                "area_codes": {
                  "bytes": 204,
                  "sha256": "1df922d68a3d2a5477aebf1531115208fe4e42e3581517949059bf24983a825e"
                },
                "attendance": {
                  "bytes": 774,
                  "sha256": "b4824848f0a00d5558ffb16118d24c3d942df121f4ab1b1f2e743eedc68620c8"
                },
                "customer_offers": {
                  "bytes": 187,
                  "sha256": "a5ad22522b793b78efba93c322b794bd55c5cbca75cb0a5ed31164d68d8cdd09"
                },
                "customers": {
                  "bytes": 2493,
                  "sha256": "099dec83d73570a9acca67e12abd4f0127b4353b7f4136a5020b32c8f1f0633b"
                },
                "delivery_assignments": {
                  "bytes": 432,
                  "sha256": "0ac089215b9fb7196a50d65ba9063470990faf99e30d24341e582fe9acaf0a19"
                },
                "delivery_boys": {
                  "bytes": 1196,
                  "sha256": "6d61d57edc51acd7e91694994fd3185cc78b6cdec547fc2391ab9facb34f7667"
                },
                "delivery_shifts": {
                  "bytes": 126,
                  "sha256": "3c880d2325912a165f80fcff76ec5ece42620b037bc4d3a36ebfa11a7d863a7e"
                },
                "feedback": {
                  "bytes": 2094,
                  "sha256": "c2540a8b18ddb268cd104b3c838c8d37f7e2e6b002055195c7d04b2021084cc4"
                },
                "food_and_beverage_catalog": {
                  "bytes": 3065,
                  "sha256": "719282ac1ba98889d7d2fb5d24e9012f383ddf5dc664596d636e3138763ee3bf"
                },
                "food_category": {
                  "bytes": 108,
                  "sha256": "567d0d320fceddf04542d4873ab941d8515ba935ed8d6d3208702ec36b38a318"
                },
                "food_subcategory": {
                  "bytes": 236,
                  "sha256": "2df59064f53efdc4900ba1060711a400cb67313a89dcaaa06cb8a79947a4fb04"
                },
                "order_items": {
                  "bytes": 17502,
                  "sha256": "4109ef1aeccd3b8311ed2ba439b8ad63878eb8a1714fb471e86e394029d31437"
                },
                "orders": {
                  "bytes": 15037,
                  "sha256": "47572da0f4e64b9fcfa24754cc8f52f15d437e72242760a911b351f2fb7dfeb8"
                },
                "payments": {
                  "bytes": 13761,
                  "sha256": "bed807d12965b98623022cd77533a9134fe35d3e4097266a28356bc90a894d48"
                },
                "promotion_items": {
                  "bytes": 565,
                  "sha256": "a341854a5c33a9bc497748b1cb247c723525baf6ecdb4803834951628f000bc8"
                },
                "promotions": {
                  "bytes": 773,
                  "sha256": "c3457c5d5d8708845b3d61cce32b37132a2165743ab37a096ccc651b36a7e520"
                },
                "reservations": {
                  "bytes": 1909,
                  "sha256": "5c90b083643f63ebedc7ff4dc8c4b036190bbf9fef9f47cc524c7982c81c5465"
                },
                "restaurant_tables": {
                  "bytes": 118,
                  "sha256": "87e7d4e856e84960d0521274bef67846c6b1a1409d4adadc4757a0ebbab8a0cb"
                },
                "shift_assignments": {
                  "bytes": 456,
                  "sha256": "5d0d5970eb4fa9acf9881e1125c9b0923f1823d42e862ffc645cb3a15533b2a4"
                },
                "special_offers": {
                  "bytes": 428,
                  "sha256": "92b21a725de5ed1b8e66be19f8539f6f986fe7be96391faf60636261890f0f1f"
                },
                "staff": {
                  "bytes": 1972,
                  "sha256": "f7b6b690b67602688308a52b1fdffdea4a255807137173a82e21db02fe85e150"
                },
                "staff_shift_assignments": {
                  "bytes": 737,
                  "sha256": "a99420e21ae7fb25502d1c182c0b2df0072ac3bba2100961da2b3701c68a3386"
                },
                "staff_shifts": {
                  "bytes": 132,
                  "sha256": "ca5895f23a72874fb70439b598dfeac1423cb17f96a98befc5b2a7a8f9e90d3a"
                }
              },
              "contentType": "application/zip"
            }
          ]
        }
      },
      "100k": {
        "rows": 189431,
        "counts": {
          "area_codes": 10,
          "customers": 3000,
          "delivery_boys": 30,
          "delivery_assignments": 45,
          "delivery_shifts": 4,
          "food_category": 6,
          "food_subcategory": 14,
          "food_and_beverage_catalog": 49,
          "orders": 35000,
          "feedback": 5000,
          "order_items": 100000,
          "payments": 35000,
          "promotions": 12,
          "promotion_items": 60,
          "restaurant_tables": 16,
          "reservations": 6000,
          "shift_assignments": 50,
          "special_offers": 6,
          "customer_offers": 2000,
          "staff": 45,
          "attendance": 3000,
          "staff_shifts": 4,
          "staff_shift_assignments": 80
        },
        "notes": [],
        "downloads": [
          {
            "format": "sql-postgres",
            "label": "PostgreSQL",
            "file": "flagship/100k/postgres.sql.gz",
            "key": "datasets/restaurant-sample-database/v1/flagship/100k/postgres.sql.gz",
            "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/flagship/100k/postgres.sql.gz",
            "bytes": 2155171,
            "sha256": "7e337037884e70b02372fb5dde69877f236e29b11164652f040d16e70bdc565c",
            "raw": {
              "bytes": 8609855,
              "sha256": "51e9d8c3ae116bc1cb131b4303b98c1226d5f176763cae47a072382a9f793275"
            },
            "contentType": "application/gzip"
          },
          {
            "format": "sql-mysql",
            "label": "MySQL",
            "file": "flagship/100k/mysql.sql.gz",
            "key": "datasets/restaurant-sample-database/v1/flagship/100k/mysql.sql.gz",
            "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/flagship/100k/mysql.sql.gz",
            "bytes": 2152771,
            "sha256": "82d4ceba1f174f92fcefdc2d514abfc1f83cbc41cd21b1f1ba18279bb5c14d7d",
            "raw": {
              "bytes": 8595482,
              "sha256": "ebdfb1424389cda06ba032743cf108e01849ffde116d026b6b820d62d66c61ec"
            },
            "contentType": "application/gzip"
          },
          {
            "format": "sql-sqlite",
            "label": "SQLite",
            "file": "flagship/100k/sqlite.sql.gz",
            "key": "datasets/restaurant-sample-database/v1/flagship/100k/sqlite.sql.gz",
            "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/flagship/100k/sqlite.sql.gz",
            "bytes": 2152288,
            "sha256": "fc8e09ab83fdadb9d9a4c5919c4a98ff9733a5947778a00e9c3759c132138b74",
            "raw": {
              "bytes": 8593716,
              "sha256": "d61b9b585b87efaf2101f8930a14b63cbf46b76790f5a1e2474c1666160563fd"
            },
            "contentType": "application/gzip"
          },
          {
            "format": "csv",
            "label": "CSV",
            "file": "flagship/100k/csv.zip",
            "key": "datasets/restaurant-sample-database/v1/flagship/100k/csv.zip",
            "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/flagship/100k/csv.zip",
            "bytes": 2151255,
            "sha256": "37cbf1fc18b4023550c3d8c2598e50abe28a556b47ee020500f1bcc344c0c469",
            "tables": {
              "area_codes": {
                "bytes": 204,
                "sha256": "1df922d68a3d2a5477aebf1531115208fe4e42e3581517949059bf24983a825e"
              },
              "attendance": {
                "bytes": 81750,
                "sha256": "bf7a470184c04f23ebfca422dea298c5118ff9877d60eb21344d7762733a0e2d"
              },
              "customer_offers": {
                "bytes": 24166,
                "sha256": "74974c0241483875d0ec017250d71edc941e3ad6bd3f6820cc6318b2f1a1f4b3"
              },
              "customers": {
                "bytes": 261237,
                "sha256": "7eab9e368dbd6ecadc1743420062e763e362b80c8f2f97b7a6027748a7a7a13c"
              },
              "delivery_assignments": {
                "bytes": 424,
                "sha256": "748f29cf2de925dcdf4d96a1fb2dafb95d8deca952ba3591cc67dc0adf150dc7"
              },
              "delivery_boys": {
                "bytes": 1194,
                "sha256": "7870e88095bc3b26ebbc0d5068798b83b98ad1646da15fb9b89e9af507822fa2"
              },
              "delivery_shifts": {
                "bytes": 126,
                "sha256": "3c880d2325912a165f80fcff76ec5ece42620b037bc4d3a36ebfa11a7d863a7e"
              },
              "feedback": {
                "bytes": 245710,
                "sha256": "cbd1b840b0b3f98e99b083dd4bb7234a39574c48f74a92e1818297cd96c84bc1"
              },
              "food_and_beverage_catalog": {
                "bytes": 3199,
                "sha256": "261234f129887b39c89b71e8ce055c9688909b60517d4245ca6650f125bc2fe9"
              },
              "food_category": {
                "bytes": 108,
                "sha256": "f75849496f541c4e671ce1a3878810f897212a64f7901a3840c40147fce7f244"
              },
              "food_subcategory": {
                "bytes": 236,
                "sha256": "2df59064f53efdc4900ba1060711a400cb67313a89dcaaa06cb8a79947a4fb04"
              },
              "order_items": {
                "bytes": 2123157,
                "sha256": "5846a21f009432facba2732c442ca23c53c00af1ace68d61a0e5fb3c52acbbb1"
              },
              "orders": {
                "bytes": 1642777,
                "sha256": "c97960e7fa165412ac4be9ef52a57ebaadfa47f53b318176c61f502ec20936de"
              },
              "payments": {
                "bytes": 1521381,
                "sha256": "91b8716b5d02c1613c71677f4ddb9fff2e86d2d91963afd56f462e1ed0989b57"
              },
              "promotion_items": {
                "bytes": 568,
                "sha256": "95ac3f4bb612aee7c713a73c003f1ae77cf6fada0a635ee069645fe3a94f8cef"
              },
              "promotions": {
                "bytes": 829,
                "sha256": "907d215ec91eed65af4e100d2586d66057c343d66c38cf128d0cb651a6523218"
              },
              "reservations": {
                "bytes": 209334,
                "sha256": "d80fe697c2fb991624b0d23b45acefc6901218b89d4336c6267f991a119bf89b"
              },
              "restaurant_tables": {
                "bytes": 118,
                "sha256": "87e7d4e856e84960d0521274bef67846c6b1a1409d4adadc4757a0ebbab8a0cb"
              },
              "shift_assignments": {
                "bytes": 455,
                "sha256": "34195fbbf32f03c86895535b5eb4374107313d27f16e44e2debdb5746af43e52"
              },
              "special_offers": {
                "bytes": 425,
                "sha256": "584ffe9e509a0750d90e0b8dad28a1a1a9c1402b8b42f099d50e495e35770484"
              },
              "staff": {
                "bytes": 2003,
                "sha256": "85232c30686bf84c6f30bb437d2e06e16f150f91aeb580b6eb8ea9dc8da28ac7"
              },
              "staff_shift_assignments": {
                "bytes": 726,
                "sha256": "1efa437a305e0baba8dca1c0ccc419c1500853f0fb9180e7ad766681009a0ebb"
              },
              "staff_shifts": {
                "bytes": 132,
                "sha256": "ca5895f23a72874fb70439b598dfeac1423cb17f96a98befc5b2a7a8f9e90d3a"
              }
            },
            "contentType": "application/zip"
          }
        ],
        "checks": {
          "postgres": {
            "version": "18.3",
            "ok": true
          },
          "sqlite": {
            "version": "3.53.1",
            "ok": true
          },
          "notRun": [
            {
              "engine": "MySQL",
              "note": "Written from the same rows; not loaded here, no MySQL server runs in the build."
            }
          ]
        },
        "rules": [
          {
            "name": "An order line is priced at the menu price",
            "violations": 0
          },
          {
            "name": "Every order has at least one line",
            "violations": 0
          },
          {
            "name": "An order totals its lines",
            "violations": 0
          },
          {
            "name": "Every order is paid once, in full, within ninety minutes",
            "violations": 0
          },
          {
            "name": "Feedback comes from the customer who ordered, after the order",
            "violations": 0
          },
          {
            "name": "A dish sits in a subcategory of its own category",
            "violations": 0
          },
          {
            "name": "A booked party fits its table",
            "violations": 0
          },
          {
            "name": "One attendance row per person per day, and no pairing listed twice",
            "violations": 0
          },
          {
            "name": "Shifts end after they start, and promotions run at least a week",
            "violations": 0
          }
        ],
        "dirty": {
          "report": {
            "rates": {
              "missing": 0.03,
              "typos": 0.03,
              "outliers": 0.005,
              "duplicates": 0.01
            },
            "tables": {
              "area_codes": {
                "duplicates": 0,
                "columns": {
                  "area_code": {
                    "missing": 0,
                    "typos": 1,
                    "outliers": 0
                  },
                  "area_description": {
                    "missing": 2,
                    "typos": 0,
                    "outliers": 0
                  }
                }
              },
              "customers": {
                "duplicates": 27,
                "columns": {
                  "address": {
                    "missing": 77,
                    "typos": 95,
                    "outliers": 0
                  },
                  "email": {
                    "missing": 90,
                    "typos": 104,
                    "outliers": 0
                  },
                  "first_name": {
                    "missing": 90,
                    "typos": 84,
                    "outliers": 0
                  },
                  "last_name": {
                    "missing": 77,
                    "typos": 93,
                    "outliers": 0
                  },
                  "phone": {
                    "missing": 103,
                    "typos": 42,
                    "outliers": 0
                  },
                  "premium_status": {
                    "missing": 89,
                    "typos": 0,
                    "outliers": 0
                  }
                }
              },
              "delivery_boys": {
                "duplicates": 2,
                "columns": {
                  "assigned_area_code": {
                    "missing": 0,
                    "typos": 3,
                    "outliers": 0
                  },
                  "phone": {
                    "missing": 1,
                    "typos": 0,
                    "outliers": 0
                  }
                }
              },
              "food_category": {
                "duplicates": 0,
                "columns": {
                  "category_name": {
                    "missing": 0,
                    "typos": 1,
                    "outliers": 0
                  }
                }
              },
              "food_and_beverage_catalog": {
                "duplicates": 1,
                "columns": {
                  "description": {
                    "missing": 1,
                    "typos": 2,
                    "outliers": 0
                  },
                  "is_available": {
                    "missing": 1,
                    "typos": 0,
                    "outliers": 0
                  },
                  "name": {
                    "missing": 1,
                    "typos": 4,
                    "outliers": 0
                  },
                  "price": {
                    "missing": 1,
                    "typos": 0,
                    "outliers": 0
                  }
                }
              },
              "orders": {
                "duplicates": 370,
                "columns": {
                  "order_date": {
                    "missing": 1069,
                    "typos": 0,
                    "outliers": 0
                  },
                  "order_status": {
                    "missing": 1091,
                    "typos": 1090,
                    "outliers": 0
                  },
                  "total_amount": {
                    "missing": 1050,
                    "typos": 0,
                    "outliers": 183
                  }
                }
              },
              "feedback": {
                "duplicates": 48,
                "columns": {
                  "comments": {
                    "missing": 113,
                    "typos": 100,
                    "outliers": 0
                  },
                  "customer_id": {
                    "missing": 135,
                    "typos": 0,
                    "outliers": 25
                  },
                  "feedback_date": {
                    "missing": 148,
                    "typos": 0,
                    "outliers": 0
                  },
                  "rating": {
                    "missing": 148,
                    "typos": 0,
                    "outliers": 20
                  }
                }
              },
              "order_items": {
                "duplicates": 1023,
                "columns": {
                  "price": {
                    "missing": 2950,
                    "typos": 0,
                    "outliers": 466
                  },
                  "quantity": {
                    "missing": 2960,
                    "typos": 0,
                    "outliers": 477
                  }
                }
              },
              "payments": {
                "duplicates": 381,
                "columns": {
                  "amount": {
                    "missing": 1037,
                    "typos": 0,
                    "outliers": 157
                  },
                  "payment_date": {
                    "missing": 1048,
                    "typos": 0,
                    "outliers": 0
                  },
                  "payment_method": {
                    "missing": 1098,
                    "typos": 1018,
                    "outliers": 0
                  }
                }
              },
              "promotions": {
                "duplicates": 0,
                "columns": {
                  "discount_percentage": {
                    "missing": 1,
                    "typos": 0,
                    "outliers": 0
                  }
                }
              },
              "restaurant_tables": {
                "duplicates": 0,
                "columns": {
                  "table_capacity": {
                    "missing": 1,
                    "typos": 0,
                    "outliers": 0
                  }
                }
              },
              "reservations": {
                "duplicates": 52,
                "columns": {
                  "number_of_people": {
                    "missing": 179,
                    "typos": 0,
                    "outliers": 34
                  },
                  "reservation_date": {
                    "missing": 174,
                    "typos": 0,
                    "outliers": 0
                  }
                }
              },
              "shift_assignments": {
                "duplicates": 1,
                "columns": {}
              },
              "special_offers": {
                "duplicates": 0,
                "columns": {
                  "eligibility_criteria": {
                    "missing": 2,
                    "typos": 0,
                    "outliers": 0
                  },
                  "offer_name": {
                    "missing": 0,
                    "typos": 1,
                    "outliers": 0
                  }
                }
              },
              "customer_offers": {
                "duplicates": 13,
                "columns": {}
              },
              "staff": {
                "duplicates": 0,
                "columns": {
                  "name": {
                    "missing": 1,
                    "typos": 1,
                    "outliers": 0
                  },
                  "position": {
                    "missing": 1,
                    "typos": 2,
                    "outliers": 0
                  }
                }
              },
              "attendance": {
                "duplicates": 25,
                "columns": {
                  "date": {
                    "missing": 95,
                    "typos": 0,
                    "outliers": 0
                  },
                  "status": {
                    "missing": 81,
                    "typos": 91,
                    "outliers": 0
                  }
                }
              },
              "staff_shift_assignments": {
                "duplicates": 1,
                "columns": {}
              }
            },
            "totals": {
              "missing": 13915,
              "typos": 2732,
              "outliers": 1362,
              "duplicates": 1944
            }
          },
          "downloads": [
            {
              "format": "dirty-sql-postgres",
              "label": "PostgreSQL, with faults",
              "file": "flagship/100k/dirty-postgres.sql.gz",
              "key": "datasets/restaurant-sample-database/v1/flagship/100k/dirty-postgres.sql.gz",
              "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/flagship/100k/dirty-postgres.sql.gz",
              "bytes": 2182224,
              "sha256": "9a08c1dfa1493feeaf07a99c9ec1ebc17f21390fe35d8bd44bc9f910577d5640",
              "raw": {
                "bytes": 8647908,
                "sha256": "3d192f0e16312d2ad25fc91ccd7d1e308b2d08fa73583bf728f9d2c121c42ff9"
              },
              "contentType": "application/gzip"
            },
            {
              "format": "dirty-csv",
              "label": "CSV, with faults",
              "file": "flagship/100k/dirty-csv.zip",
              "key": "datasets/restaurant-sample-database/v1/flagship/100k/dirty-csv.zip",
              "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/flagship/100k/dirty-csv.zip",
              "bytes": 2167443,
              "sha256": "f36b1fa923d56be91cb2a4281b2683aaa03779856a52e5c7257793b83cf05fb2",
              "tables": {
                "area_codes": {
                  "bytes": 192,
                  "sha256": "0506225eb91792267bb51d68e3c33a7dd60170504e1c3cca678ac395245813d7"
                },
                "attendance": {
                  "bytes": 81046,
                  "sha256": "fd2ed2710eb15477d9976c9f039e45b7ad0ba567b497ec051907af097ccc61b4"
                },
                "customer_offers": {
                  "bytes": 24332,
                  "sha256": "595d687e7f5628f86138bf5b26c38417942784f32fa2ae96e760f05fe749a0e1"
                },
                "customers": {
                  "bytes": 257197,
                  "sha256": "5adbb1fd618a1ae2235b6121eddd1baccb70f3c441e52e3504a1beebcc624f57"
                },
                "delivery_assignments": {
                  "bytes": 424,
                  "sha256": "748f29cf2de925dcdf4d96a1fb2dafb95d8deca952ba3591cc67dc0adf150dc7"
                },
                "delivery_boys": {
                  "bytes": 1266,
                  "sha256": "7add76d5aae1cfada39760929ba3f1e0467d6267e12975a1450dbedfc9359130"
                },
                "delivery_shifts": {
                  "bytes": 126,
                  "sha256": "3c880d2325912a165f80fcff76ec5ece42620b037bc4d3a36ebfa11a7d863a7e"
                },
                "feedback": {
                  "bytes": 242896,
                  "sha256": "d76e64a7b16813e4f0952f46f672f5dc22857bc37edd6f76c6585e82872c3b8b"
                },
                "food_and_beverage_catalog": {
                  "bytes": 3200,
                  "sha256": "48392e4dbc070f5b19160a4661463b768da2f88f75ec3b493b6d123135e78426"
                },
                "food_category": {
                  "bytes": 111,
                  "sha256": "d26b2bf29387dfebc27c40f1d5ba4872d986a797b6b0ae2029c6af4b15af0386"
                },
                "food_subcategory": {
                  "bytes": 236,
                  "sha256": "2df59064f53efdc4900ba1060711a400cb67313a89dcaaa06cb8a79947a4fb04"
                },
                "order_items": {
                  "bytes": 2135169,
                  "sha256": "30a2c9ad22e5aacd203000bdd38d3d5fb364059e572e0627089058fd94c38813"
                },
                "orders": {
                  "bytes": 1627434,
                  "sha256": "173a266b5daeb57b64da889a9fb2ce83ca0788bbbe9da3bf818e9810b8c3bbe1"
                },
                "payments": {
                  "bytes": 1509542,
                  "sha256": "832a887a063174bfafe347ebe9deb346bc0020f99cf45d2d60db2d0f214a38b3"
                },
                "promotion_items": {
                  "bytes": 568,
                  "sha256": "95ac3f4bb612aee7c713a73c003f1ae77cf6fada0a635ee069645fe3a94f8cef"
                },
                "promotions": {
                  "bytes": 827,
                  "sha256": "56a5227d20f91ec74ecf4d9f7f7282b1b22e8d3f4231c0b28d816d6930be470c"
                },
                "reservations": {
                  "bytes": 207699,
                  "sha256": "b085cae9d534e643908169f7b50ed297848b176a9da3c087e930f27f15b286c0"
                },
                "restaurant_tables": {
                  "bytes": 117,
                  "sha256": "2b89c54f74ccc2e94c5be888340291ddd089301d6fe819db8763b6647002ad9e"
                },
                "shift_assignments": {
                  "bytes": 464,
                  "sha256": "3e1956e83d3a5d2f44d0855dfd1d3e48699bcd1c23556a445e374dff68975175"
                },
                "special_offers": {
                  "bytes": 397,
                  "sha256": "6e4028f348f40bdfa99329c6ca4f185256483436bf3a0cb89d7fd806145ae774"
                },
                "staff": {
                  "bytes": 1987,
                  "sha256": "602006d22309fa92026cb1d066fc157d962bd99a0e5734c1d7b8c78b5d4af2ec"
                },
                "staff_shift_assignments": {
                  "bytes": 734,
                  "sha256": "0fedb22fd8dba0df87341a48b82ba71a457bc24c871e70bf472c76566249ad60"
                },
                "staff_shifts": {
                  "bytes": 132,
                  "sha256": "ca5895f23a72874fb70439b598dfeac1423cb17f96a98befc5b2a7a8f9e90d3a"
                }
              },
              "contentType": "application/zip"
            }
          ]
        }
      },
      "1m": {
        "rows": 1890431,
        "counts": {
          "area_codes": 10,
          "customers": 30000,
          "delivery_boys": 30,
          "delivery_assignments": 45,
          "delivery_shifts": 4,
          "food_category": 6,
          "food_subcategory": 14,
          "food_and_beverage_catalog": 49,
          "orders": 350000,
          "feedback": 50000,
          "order_items": 1000000,
          "payments": 350000,
          "promotions": 12,
          "promotion_items": 60,
          "restaurant_tables": 16,
          "reservations": 60000,
          "shift_assignments": 50,
          "special_offers": 6,
          "customer_offers": 20000,
          "staff": 45,
          "attendance": 30000,
          "staff_shifts": 4,
          "staff_shift_assignments": 80
        },
        "notes": [],
        "downloads": [
          {
            "format": "sql-postgres",
            "label": "PostgreSQL",
            "file": "flagship/1m/postgres.sql.gz",
            "key": "datasets/restaurant-sample-database/v1/flagship/1m/postgres.sql.gz",
            "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/flagship/1m/postgres.sql.gz",
            "bytes": 22545250,
            "sha256": "89d56d9fd6a0952bc7feab28a477bdf7f2761d5e6c00ab11247cad3288bf8cf0",
            "raw": {
              "bytes": 89541563,
              "sha256": "ad7a6df7d812365596cc5e6e1d28a3dcfd48d3499a6cd6a3a02020f61de12fad"
            },
            "contentType": "application/gzip"
          },
          {
            "format": "sql-mysql",
            "label": "MySQL",
            "file": "flagship/1m/mysql.sql.gz",
            "key": "datasets/restaurant-sample-database/v1/flagship/1m/mysql.sql.gz",
            "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/flagship/1m/mysql.sql.gz",
            "bytes": 22532840,
            "sha256": "c50384263d0a61831c9915bac766b44bbb91c196e2e4d830722e60829fed4b37",
            "raw": {
              "bytes": 89422347,
              "sha256": "6d11d9c3af4aec592139f6745adc71e85ccbb481ae0b35dde06e78a8612f65b8"
            },
            "contentType": "application/gzip"
          },
          {
            "format": "sql-sqlite",
            "label": "SQLite",
            "file": "flagship/1m/sqlite.sql.gz",
            "key": "datasets/restaurant-sample-database/v1/flagship/1m/sqlite.sql.gz",
            "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/flagship/1m/sqlite.sql.gz",
            "bytes": 22532434,
            "sha256": "097a9ee35fb9c25e02ab350535b4f15067cc23727534dea4e19ee523f1c852e6",
            "raw": {
              "bytes": 89420581,
              "sha256": "b1e17fb95ecb7076ae212f2d1db308cae1eb65c5221dfeb46756b613b0988e79"
            },
            "contentType": "application/gzip"
          },
          {
            "format": "csv",
            "label": "CSV",
            "file": "flagship/1m/csv.zip",
            "key": "datasets/restaurant-sample-database/v1/flagship/1m/csv.zip",
            "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/restaurant-sample-database/v1/flagship/1m/csv.zip",
            "bytes": 22737124,
            "sha256": "b0d8d84af7502ea38009c9499ae72edf9220fbad9159c20294985ffec3f89b50",
            "tables": {
              "area_codes": {
                "bytes": 204,
                "sha256": "1df922d68a3d2a5477aebf1531115208fe4e42e3581517949059bf24983a825e"
              },
              "attendance": {
                "bytes": 847692,
                "sha256": "7e13adc87ea76c7a8b69c584b5eb8b73c82a3dd3618bf86acbac54fe1b3ad9a5"
              },
              "customer_offers": {
                "bytes": 281430,
                "sha256": "3b20c0076f09270a2f7702e40259a771e9ae5d6184cd91d8f526ec4b0db229ee"
              },
              "customers": {
                "bytes": 2637568,
                "sha256": "1f58df1703d45b31fd701648b42163f59d4b9b18d5a2d576af725958f483b61c"
              },
              "delivery_assignments": {
                "bytes": 416,
                "sha256": "c0a6dac436a4163616fa9659f8e5cc82eaef8ceee589edf891480b568bceb70d"
              },
              "delivery_boys": {
                "bytes": 1187,
                "sha256": "fe3cd7edbee8b260765658a9536b8cc91209d9f90edf3d248c2eb7a1119863bb"
              },
              "delivery_shifts": {
                "bytes": 126,
                "sha256": "3c880d2325912a165f80fcff76ec5ece42620b037bc4d3a36ebfa11a7d863a7e"
              },
              "feedback": {
                "bytes": 2607749,
                "sha256": "2e04fa5cf8f804ba4e93676748cc1d1f98a2b84076700b9fd1faef97880ea62e"
              },
              "food_and_beverage_catalog": {
                "bytes": 3199,
                "sha256": "261234f129887b39c89b71e8ce055c9688909b60517d4245ca6650f125bc2fe9"
              },
              "food_category": {
                "bytes": 108,
                "sha256": "b863dc6d84cda1ee5b153b83fdd3e366c688631f055d26a1dc2a06e2946aeb65"
              },
              "food_subcategory": {
                "bytes": 236,
                "sha256": "2df59064f53efdc4900ba1060711a400cb67313a89dcaaa06cb8a79947a4fb04"
              },
              "order_items": {
                "bytes": 23233327,
                "sha256": "a428c86e9dea875bf8eb68c6b0de4d72f293e27ec140205d5807ab72095d00e6"
              },
              "orders": {
                "bytes": 17117340,
                "sha256": "d914531d479eed530cc0a3316e40947d5a09cdc98f849f5522da7f7ea2e4dafb"
              },
              "payments": {
                "bytes": 15899204,
                "sha256": "03f198be5443c3cfb8a8227b0ff0adfead3d497169b5471c040a7e533ea62ce2"
              },
              "promotion_items": {
                "bytes": 557,
                "sha256": "b8b872fdb4c5a9857bfc509e8abdbec5ca9ad1de433181957e82272910bd0503"
              },
              "promotions": {
                "bytes": 841,
                "sha256": "a3f3612551d09285f7e7293b9579764ce4771a124262c9f3f47a0be7d142cc16"
              },
              "reservations": {
                "bytes": 2212806,
                "sha256": "f118479c646ab8e763234fd6da5af002c6c93c3fd6046a5515c063cb98c70073"
              },
              "restaurant_tables": {
                "bytes": 118,
                "sha256": "87e7d4e856e84960d0521274bef67846c6b1a1409d4adadc4757a0ebbab8a0cb"
              },
              "shift_assignments": {
                "bytes": 456,
                "sha256": "3e3f44c468b77e9c9ef746e44c1551cac77190f4387972641b886c83cd4f99d6"
              },
              "special_offers": {
                "bytes": 425,
                "sha256": "584ffe9e509a0750d90e0b8dad28a1a1a9c1402b8b42f099d50e495e35770484"
              },
              "staff": {
                "bytes": 1922,
                "sha256": "8497fc636b8fa608c9b3debca303e2aeaaa7b37aa481fb0eac95437a6d07edb6"
              },
              "staff_shift_assignments": {
                "bytes": 717,
                "sha256": "4eb2a5e6cf5780f7618df53a0b4aee484f144a8f97ff840b709e8a69e4e30c33"
              },
              "staff_shifts": {
                "bytes": 132,
                "sha256": "ca5895f23a72874fb70439b598dfeac1423cb17f96a98befc5b2a7a8f9e90d3a"
              }
            },
            "contentType": "application/zip"
          }
        ],
        "checks": {
          "postgres": {
            "version": "18.3",
            "ok": true
          },
          "sqlite": {
            "version": "3.53.1",
            "ok": true
          },
          "notRun": [
            {
              "engine": "MySQL",
              "note": "Written from the same rows; not loaded here, no MySQL server runs in the build."
            }
          ]
        },
        "rules": [
          {
            "name": "An order line is priced at the menu price",
            "violations": 0
          },
          {
            "name": "Every order has at least one line",
            "violations": 0
          },
          {
            "name": "An order totals its lines",
            "violations": 0
          },
          {
            "name": "Every order is paid once, in full, within ninety minutes",
            "violations": 0
          },
          {
            "name": "Feedback comes from the customer who ordered, after the order",
            "violations": 0
          },
          {
            "name": "A dish sits in a subcategory of its own category",
            "violations": 0
          },
          {
            "name": "A booked party fits its table",
            "violations": 0
          },
          {
            "name": "One attendance row per person per day, and no pairing listed twice",
            "violations": 0
          },
          {
            "name": "Shifts end after they start, and promotions run at least a week",
            "violations": 0
          }
        ]
      }
    },
    "rules": [
      {
        "name": "An order line is priced at the menu price",
        "sql": "SELECT count(*) AS violations FROM order_items oi JOIN food_and_beverage_catalog f ON f.item_id = oi.item_id WHERE oi.price <> f.price"
      },
      {
        "name": "Every order has at least one line",
        "sql": "SELECT count(*) AS violations FROM orders o LEFT JOIN (SELECT DISTINCT order_id FROM order_items) x ON x.order_id = o.order_id WHERE x.order_id IS NULL"
      },
      {
        "name": "An order totals its lines",
        "sql": "SELECT count(*) AS violations FROM orders o LEFT JOIN (SELECT order_id, sum(quantity * price) AS lines FROM order_items GROUP BY order_id) x ON x.order_id = o.order_id WHERE o.total_amount <> COALESCE(x.lines, 0)"
      },
      {
        "name": "Every order is paid once, in full, within ninety minutes",
        "sql": "SELECT (SELECT count(*) FROM orders o LEFT JOIN payments p ON p.order_id = o.order_id WHERE p.payment_id IS NULL) + (SELECT count(*) FROM payments p JOIN orders o ON o.order_id = p.order_id WHERE p.amount <> o.total_amount OR p.payment_date < o.order_date OR p.payment_date > o.order_date + interval '90 minutes') AS violations"
      },
      {
        "name": "Feedback comes from the customer who ordered, after the order",
        "sql": "SELECT count(*) AS violations FROM feedback f JOIN orders o ON o.order_id = f.order_id WHERE f.customer_id <> o.customer_id OR f.feedback_date < o.order_date"
      },
      {
        "name": "A dish sits in a subcategory of its own category",
        "sql": "SELECT count(*) AS violations FROM food_and_beverage_catalog f JOIN food_subcategory s ON s.subcategory_id = f.subcategory_id WHERE s.category_id <> f.category_id"
      },
      {
        "name": "A booked party fits its table",
        "sql": "SELECT count(*) AS violations FROM reservations r JOIN restaurant_tables t ON t.table_number = r.table_number WHERE r.number_of_people > t.table_capacity"
      },
      {
        "name": "One attendance row per person per day, and no pairing listed twice",
        "sql": "SELECT (SELECT count(*) - count(DISTINCT (staff_id, date)) FROM attendance) + (SELECT count(*) - count(DISTINCT (customer_id, offer_id)) FROM customer_offers) + (SELECT count(*) - count(DISTINCT (promotion_id, item_id)) FROM promotion_items) + (SELECT count(*) - count(DISTINCT (delivery_boy_id, area_code)) FROM delivery_assignments) + (SELECT count(*) - count(DISTINCT (delivery_boy_id, shift_id)) FROM shift_assignments) + (SELECT count(*) - count(DISTINCT (staff_id, staff_shift_id)) FROM staff_shift_assignments) AS violations"
      },
      {
        "name": "Shifts end after they start, and promotions run at least a week",
        "sql": "SELECT (SELECT count(*) FROM delivery_shifts WHERE shift_end_time <= shift_start_time) + (SELECT count(*) FROM staff_shifts WHERE shift_end_time <= shift_start_time) + (SELECT count(*) FROM promotions WHERE end_date < start_date + 7) AS violations"
      }
    ]
  },
  "publishedAt": 1791357066493,
  "updatedAt": 1791357066493
}
