{
  "format": "dataset-manifest/1",
  "slug": "brewery-production-database",
  "version": 1,
  "seed": "brewery-production-database:1",
  "spec": {
    "format": "dataset/1",
    "slug": "brewery-production-database",
    "name": "Craft Beer Production Insights",
    "tagline": "Production batches, yeast generations, ingredient inventory, and beer styles from a craft brewery.",
    "description": "Brewmasters develop unique beer recipes, blending distinctive ingredients to create signature brews that delight customers. Each production batch begins with careful selection from the ingredient inventory, ensuring that the right barley, hops, and yeast strains are chosen according to the specific beer style being crafted. The production logs capture every detail of the brewing process, from temperature control to fermentation times, allowing the brewery to maintain consistency and quality across different batches.\n\nThe yeast generations table tracks the various yeast strains used in the brewing process, detailing their lineage and performance characteristics. By correlating this information with production batches, brewers can identify which yeast strains consistently produce the best flavor profiles and stability in their beers. Each beer style is represented in the beer_styles table, showcasing the diversity of offerings from pale ales to stouts, and how different ingredients and yeast varieties define their characteristics.\n\nBy analyzing these tables, developers can explore questions related to production efficiency, ingredient utilization, and the correlation between yeast strains and beer quality. They can practice SQL queries to join the production_batches with ingredient_inventory and beer_styles, revealing insights into which ingredients lead to the most popular styles. Additionally, examining the yeast_generations in relation to production_logs can highlight trends in brewing practices over time. \n\nThis synthetic dataset allows for in-depth exploration of the brewing process, providing a rich landscape for data analysis and practice.",
    "domain": "manufacturing",
    "shape": "transactional",
    "useCases": [
      "sql-practice",
      "orm-seeding"
    ],
    "keywords": [
      "brewery",
      "beer production",
      "ingredients",
      "yeast",
      "inventory",
      "brewing process",
      "craft beer",
      "data analysis"
    ],
    "locale": "en",
    "license": "CC0-1.0",
    "version": 1,
    "tables": {
      "production_batches": {
        "description": "Each row represents a unique brewing batch, linked to specific yeast generations, and includes details like volume and brew date.",
        "rows": 200,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each batch."
          },
          "brew_date": {
            "kind": "date",
            "from": "2022-01-01",
            "to": "2023-12-31",
            "description": "The date the batch was brewed.",
            "trend": "growing"
          },
          "volume_liters": {
            "kind": "decimal",
            "min": 50,
            "max": 5000,
            "description": "Volume of beer produced in liters."
          },
          "yeast_generation_id": {
            "kind": "fk",
            "ref": "yeast_generations.id",
            "description": "The yeast generation used for this batch."
          },
          "beer_style_id": {
            "kind": "fk",
            "ref": "beer_styles.id",
            "description": "The style of beer produced in this batch."
          }
        }
      },
      "yeast_generations": {
        "description": "This table lists different yeast strains and their characteristics, which influence the flavors and quality of the beer.",
        "rows": 50,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each yeast generation."
          },
          "strain_name": {
            "kind": "sentence",
            "min": 5,
            "max": 30,
            "description": "Name of the yeast strain."
          },
          "quality_parameter": {
            "kind": "decimal",
            "min": 1,
            "max": 10,
            "description": "Quality score based on fermentation characteristics."
          },
          "usage_frequency": {
            "kind": "enum",
            "values": [
              "common",
              "rare"
            ],
            "description": "How often this yeast generation is used in production."
          }
        }
      },
      "ingredient_inventory": {
        "description": "Tracks the inventory of raw ingredients such as barley, hops, and water, detailing their quantities and usage rates.",
        "rows": 100,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each ingredient."
          },
          "ingredient_name": {
            "kind": "sentence",
            "min": 3,
            "max": 30,
            "description": "Name of the ingredient."
          },
          "quantity_available": {
            "kind": "decimal",
            "min": 0,
            "max": 5000,
            "description": "Available quantity of the ingredient in kilograms."
          },
          "last_restocked": {
            "kind": "date",
            "from": "2022-01-01",
            "to": "2023-12-31",
            "description": "The last date this ingredient was restocked.",
            "trend": "seasonal"
          }
        }
      },
      "beer_styles": {
        "description": "Categorizes the different styles of beer produced by the brewery, linking them to production batches.",
        "rows": 30,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each beer style."
          },
          "style_name": {
            "kind": "sentence",
            "min": 5,
            "max": 30,
            "description": "Name of the beer style."
          },
          "alcohol_content": {
            "kind": "decimal",
            "min": 3,
            "max": 12,
            "description": "Alcohol content percentage of the beer style."
          }
        }
      },
      "production_logs": {
        "description": "Logs various events and issues encountered during the brewing process, linked to specific batches.",
        "rows": 150,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each log entry."
          },
          "batch_id": {
            "kind": "fk",
            "ref": "production_batches.id",
            "description": "The batch associated with this log entry."
          },
          "event_date": {
            "kind": "date",
            "from": "2022-01-01",
            "to": "2023-12-31",
            "description": "The date the event was logged."
          },
          "event_description": {
            "kind": "paragraph",
            "min": 10,
            "max": 200,
            "description": "Details about the event or issue encountered."
          }
        }
      }
    },
    "structure": "multi-table",
    "traits": [
      "nullable",
      "timestamped",
      "categorical",
      "high-cardinality"
    ],
    "analysisQuestions": [
      "What are the most common yeast strains used in production?",
      "How does the quality of yeast impact the final beer styles?",
      "What trends can be observed in ingredient inventory over time?",
      "Which beer styles have the highest alcohol content?",
      "How often do production issues occur, and what are their common causes?"
    ],
    "suggestedQueries": [
      {
        "title": "Join Production Batches with Beer Styles",
        "sql": "SELECT pb.id, bs.style_name FROM production_batches pb JOIN beer_styles bs ON pb.beer_style_id = bs.id;",
        "dialect": "postgres"
      },
      {
        "title": "Count Batches by Yeast Strain",
        "sql": "SELECT yg.strain_name, COUNT(pb.id) AS batch_count FROM production_batches pb JOIN yeast_generations yg ON pb.yeast_generation_id = yg.id GROUP BY yg.strain_name;",
        "dialect": "postgres"
      },
      {
        "title": "Average Alcohol Content by Beer Style",
        "sql": "SELECT bs.style_name, AVG(bs.alcohol_content) AS avg_alcohol FROM beer_styles bs JOIN production_batches pb ON bs.id = pb.beer_style_id GROUP BY bs.style_name;",
        "dialect": "postgres"
      },
      {
        "title": "Production Issues Over Time",
        "sql": "SELECT pl.event_date, COUNT(pl.id) AS issue_count FROM production_logs pl GROUP BY pl.event_date ORDER BY pl.event_date;",
        "dialect": "postgres"
      }
    ],
    "usageScenarios": [
      {
        "title": "Brewery Data Analysts",
        "body": "Data analysts in a brewery can use this dataset to explore trends in beer production, analyze ingredient usage, and assess the impact of different yeast strains on the final beer quality. By examining production logs, they can identify recurring issues and suggest improvements in the brewing process."
      },
      {
        "title": "Brewing Students and Educators",
        "body": "Students studying brewing technology can leverage this dataset for hands-on projects, developing SQL queries to extract insights about production batches and ingredients. Educators can use it as a teaching tool to demonstrate the complexities of brewing science and data analysis."
      },
      {
        "title": "Software Developers for ORM Seeding",
        "body": "Developers working on applications related to brewing or inventory management can use this synthetic dataset for ORM seeding. By populating their databases with realistic data, they can better test their applications and ensure the models accurately reflect the brewing process."
      }
    ]
  },
  "counts": {
    "beer_styles": 30,
    "ingredient_inventory": 100,
    "yeast_generations": 50,
    "production_batches": 200,
    "production_logs": 150
  },
  "stats": {
    "production_batches": {
      "rows": 200,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 200,
          "min": 1,
          "max": 200
        },
        "brew_date": {
          "nulls": 0,
          "distinct": 180,
          "min": "2022-01-03",
          "max": "2023-12-30"
        },
        "volume_liters": {
          "nulls": 0,
          "distinct": 200,
          "min": 52.78,
          "max": 4919.21
        },
        "yeast_generation_id": {
          "nulls": 0,
          "distinct": 48,
          "min": 1,
          "max": 50
        },
        "beer_style_id": {
          "nulls": 0,
          "distinct": 30,
          "min": 1,
          "max": 30
        }
      }
    },
    "yeast_generations": {
      "rows": 50,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 50,
          "min": 1,
          "max": 50
        },
        "strain_name": {
          "nulls": 0,
          "distinct": 50
        },
        "quality_parameter": {
          "nulls": 0,
          "distinct": 48,
          "min": 1.07,
          "max": 9.63
        },
        "usage_frequency": {
          "nulls": 0,
          "distinct": 2,
          "min": "common",
          "max": "rare"
        }
      }
    },
    "ingredient_inventory": {
      "rows": 100,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 100,
          "min": 1,
          "max": 100
        },
        "ingredient_name": {
          "nulls": 0,
          "distinct": 100
        },
        "quantity_available": {
          "nulls": 0,
          "distinct": 100,
          "min": 9.78,
          "max": 4927.91
        },
        "last_restocked": {
          "nulls": 0,
          "distinct": 95,
          "min": "2022-01-03",
          "max": "2023-12-28"
        }
      }
    },
    "beer_styles": {
      "rows": 30,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 30,
          "min": 1,
          "max": 30
        },
        "style_name": {
          "nulls": 0,
          "distinct": 30
        },
        "alcohol_content": {
          "nulls": 0,
          "distinct": 30,
          "min": 3.02,
          "max": 11.03
        }
      }
    },
    "production_logs": {
      "rows": 150,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 150,
          "min": 1,
          "max": 150
        },
        "batch_id": {
          "nulls": 0,
          "distinct": 111,
          "min": 3,
          "max": 200
        },
        "event_date": {
          "nulls": 0,
          "distinct": 142,
          "min": "2022-01-05",
          "max": "2023-12-22"
        },
        "event_description": {
          "nulls": 0,
          "distinct": 150
        }
      }
    }
  },
  "artifacts": [
    {
      "file": "csv/beer_styles.csv",
      "format": "csv",
      "table": "beer_styles",
      "key": "datasets/brewery-production-database/v1/csv/beer_styles.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/brewery-production-database/v1/csv/beer_styles.csv",
      "bytes": 1978,
      "sha256": "92d7fb72e9091f79cb537f9c0db716155e99b7e0678857b662bf0674130baace",
      "rows": 30,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/ingredient_inventory.csv",
      "format": "csv",
      "table": "ingredient_inventory",
      "key": "datasets/brewery-production-database/v1/csv/ingredient_inventory.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/brewery-production-database/v1/csv/ingredient_inventory.csv",
      "bytes": 7900,
      "sha256": "1c8d2621f9350ab756672aeda30e1bc87f34249b4e0e1a2b8ad410e2830208de",
      "rows": 100,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/yeast_generations.csv",
      "format": "csv",
      "table": "yeast_generations",
      "key": "datasets/brewery-production-database/v1/csv/yeast_generations.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/brewery-production-database/v1/csv/yeast_generations.csv",
      "bytes": 3660,
      "sha256": "9f72a28f4c76e6f21c198ecb90285652f43a79d5405c432eabee4e4e7149cbf0",
      "rows": 50,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/production_batches.csv",
      "format": "csv",
      "table": "production_batches",
      "key": "datasets/brewery-production-database/v1/csv/production_batches.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/brewery-production-database/v1/csv/production_batches.csv",
      "bytes": 5812,
      "sha256": "5176e9d57f9d7b6a408fe4c1a8caa62223cc5811dd679e91cb429a2ba5a3ec09",
      "rows": 200,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/production_logs.csv",
      "format": "csv",
      "table": "production_logs",
      "key": "datasets/brewery-production-database/v1/csv/production_logs.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/brewery-production-database/v1/csv/production_logs.csv",
      "bytes": 28181,
      "sha256": "7eb8937f4b67da358227231604e3c4d3015a20319000f9e0ce10a6012a823276",
      "rows": 150,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "brewery-production-database.json",
      "format": "json",
      "table": null,
      "key": "datasets/brewery-production-database/v1/brewery-production-database.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/brewery-production-database/v1/brewery-production-database.json",
      "bytes": 104566,
      "sha256": "c0378b028dd32e5e91f167dbd8ecacdecaa819e11bc9647f8357d192e6ad60b9",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    },
    {
      "file": "sql/postgres.sql",
      "format": "sql-postgres",
      "table": null,
      "key": "datasets/brewery-production-database/v1/sql/postgres.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/brewery-production-database/v1/sql/postgres.sql",
      "bytes": 56580,
      "sha256": "28569b9f3fe99e582e80c4684fcb072d6dc8a140bea835891ab46ae870ee80f1",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mysql.sql",
      "format": "sql-mysql",
      "table": null,
      "key": "datasets/brewery-production-database/v1/sql/mysql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/brewery-production-database/v1/sql/mysql.sql",
      "bytes": 55955,
      "sha256": "23ca3ae0bcae1963cc8670154093fac67488f8e3b2d07af53ec427062938735c",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mssql.sql",
      "format": "sql-mssql",
      "table": null,
      "key": "datasets/brewery-production-database/v1/sql/mssql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/brewery-production-database/v1/sql/mssql.sql",
      "bytes": 57209,
      "sha256": "ac8e9cbfe093a0e67a2472a16ab22b3d62d7b57adb8afe63770582450359ad49",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/sqlite.sql",
      "format": "sql-sqlite",
      "table": null,
      "key": "datasets/brewery-production-database/v1/sql/sqlite.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/brewery-production-database/v1/sql/sqlite.sql",
      "bytes": 55768,
      "sha256": "934bf1089e877637869523b984c5d20aab8d7696d3496ff3cc6762a9c0430f2b",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "prisma/seed.ts",
      "format": "prisma-seed",
      "table": null,
      "key": "datasets/brewery-production-database/v1/prisma/seed.ts",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/brewery-production-database/v1/prisma/seed.ts",
      "bytes": 90117,
      "sha256": "5e664850233a18ed7be2c71d3bd8e27d11114ef9619b094ad50145394e3d2ec4",
      "rows": null,
      "contentType": "application/typescript; charset=utf-8"
    },
    {
      "file": "django/fixtures.json",
      "format": "django-fixture",
      "table": null,
      "key": "datasets/brewery-production-database/v1/django/fixtures.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/brewery-production-database/v1/django/fixtures.json",
      "bytes": 131061,
      "sha256": "309a7f7adee6093def0401c8ffa4c1625f97efb91ab507ec49ea2b3e6219d5bb",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    }
  ],
  "publishedAt": 1788733929757,
  "updatedAt": 1788733929757
}
