{
  "format": "dataset-manifest/1",
  "slug": "enterprise-resource-planning-system",
  "version": 1,
  "seed": "enterprise-resource-planning-system:1",
  "spec": {
    "format": "dataset/1",
    "slug": "enterprise-resource-planning-system",
    "name": "Employee Resource Management Ledger",
    "tagline": "Employee tasks, timesheets, project allocations, and sales orders from a resource management ledger.",
    "description": "Employees diligently log their hours, track the progress of tasks, and collaborate on diverse projects, ensuring that the company maximizes its resource potential. Each worker contributes to a variety of assignments, ranging from daily responsibilities documented in timesheets to larger-scale projects that drive the organization forward. The interplay between employee performance and resource distribution is at the core of this business model, illustrating how human capital is allocated to meet organizational goals effectively.\n\nThis dataset consists of several interconnected tables: 'employees', which contains individual worker information; 'tasks', detailing the specific duties assigned; 'timesheets', capturing the hours spent on various assignments; 'projects', listing larger initiatives that employees contribute to; 'sales_orders', representing transactions linked to the company's output; and 'goods_receipts', documenting the incoming supplies necessary for project execution. A single row in the 'employees' table represents one worker, while each entry in the 'tasks' table corresponds to a specific assignment allocated to an employee. By joining these tables, users can analyze the relationships between employee assignments, the time they allocate to tasks, project involvement, and the resulting impact on sales and resource management.\n\nThe data facilitates inquiries into employee efficiency, project timelines, and resource allocation strategies. Developers can practice querying how much time employees dedicate to various tasks, analyze trends in project completion, and assess the correlation between sales orders and workforce productivity. Importantly, this dataset is synthetic, designed to provide a realistic yet fictional snapshot of an employee resource management scenario, making it an excellent tool for honing data analysis and database management skills.",
    "domain": "hr",
    "shape": "ledger",
    "useCases": [
      "sql-practice",
      "teaching"
    ],
    "keywords": [
      "employee management",
      "resource allocation",
      "timesheets",
      "projects",
      "sales orders",
      "goods receipts"
    ],
    "locale": "en",
    "license": "CC0-1.0",
    "version": 1,
    "tables": {
      "employees": {
        "description": "This table contains records of employees, linking to their respective roles and departments. Each row represents a single employee's information.",
        "rows": 100,
        "columns": {
          "employee_id": {
            "kind": "pk",
            "description": "Unique identifier for each employee."
          },
          "first_name": {
            "kind": "firstName",
            "description": "The first name of the employee."
          },
          "last_name": {
            "kind": "lastName",
            "description": "The last name of the employee."
          },
          "email": {
            "kind": "email",
            "from": [
              "first_name",
              "last_name"
            ],
            "description": "Email address of the employee."
          },
          "department": {
            "kind": "enum",
            "values": [
              "HR",
              "Sales",
              "IT",
              "Marketing"
            ],
            "description": "Department to which the employee belongs."
          },
          "role": {
            "kind": "enum",
            "values": [
              "Manager",
              "Team Lead",
              "Staff"
            ],
            "description": "Role of the employee within the department."
          }
        }
      },
      "tasks": {
        "description": "This table tracks tasks assigned to employees, linking to the employees table. Each row represents a task's details.",
        "rows": {
          "per": "employees",
          "via": "employee_id",
          "min": 1,
          "max": 5,
          "skew": "long-tail"
        },
        "columns": {
          "task_id": {
            "kind": "pk",
            "description": "Unique identifier for each task."
          },
          "employee_id": {
            "kind": "fk",
            "ref": "employees.employee_id",
            "description": "ID of the employee assigned to the task."
          },
          "task_description": {
            "kind": "sentence",
            "max": 200,
            "description": "A brief description of the task."
          },
          "status": {
            "kind": "enum",
            "values": [
              "Pending",
              "In Progress",
              "Completed"
            ],
            "description": "Current status of the task."
          },
          "due_date": {
            "kind": "date",
            "from": "2023-01-01",
            "to": "2023-12-31",
            "description": "Due date for task completion.",
            "trend": "growing"
          }
        }
      },
      "timesheets": {
        "description": "This table contains timesheet entries for employees, linking to the employees table. Each row represents logged hours.",
        "rows": {
          "per": "employees",
          "via": "employee_id",
          "min": 1,
          "max": 10,
          "skew": "long-tail"
        },
        "columns": {
          "timesheet_id": {
            "kind": "pk",
            "description": "Unique identifier for each timesheet entry."
          },
          "employee_id": {
            "kind": "fk",
            "ref": "employees.employee_id",
            "description": "ID of the employee submitting the timesheet."
          },
          "hours_logged": {
            "kind": "decimal",
            "min": 0,
            "max": 24,
            "scale": 2,
            "description": "Number of hours logged by the employee."
          },
          "date": {
            "kind": "date",
            "from": "2023-01-01",
            "to": "2023-12-31",
            "description": "The date for which hours are logged."
          }
        }
      },
      "projects": {
        "description": "This table records project allocations for employees, linking to the employees table. Each row represents a project assignment.",
        "rows": {
          "per": "employees",
          "via": "employee_id",
          "min": 1,
          "max": 3,
          "skew": "long-tail"
        },
        "columns": {
          "project_id": {
            "kind": "pk",
            "description": "Unique identifier for each project."
          },
          "employee_id": {
            "kind": "fk",
            "ref": "employees.employee_id",
            "description": "ID of the employee assigned to the project."
          },
          "project_name": {
            "kind": "words",
            "max": 50,
            "description": "Name of the project."
          },
          "start_date": {
            "kind": "date",
            "from": "2023-01-01",
            "to": "2023-12-31",
            "description": "Start date of the project.",
            "trend": "seasonal"
          },
          "end_date": {
            "kind": "date",
            "from": "2023-01-01",
            "to": "2023-12-31",
            "description": "Expected end date of the project.",
            "trend": "seasonal"
          }
        }
      },
      "sales_orders": {
        "description": "This table captures sales orders linked to employee sales activities. Each row details a sales order made by an employee.",
        "rows": {
          "per": "employees",
          "via": "employee_id",
          "min": 0,
          "max": 3,
          "skew": "long-tail"
        },
        "columns": {
          "order_id": {
            "kind": "pk",
            "description": "Unique identifier for each sales order."
          },
          "employee_id": {
            "kind": "fk",
            "ref": "employees.employee_id",
            "description": "ID of the employee who made the sale."
          },
          "order_total": {
            "kind": "decimal",
            "min": 10,
            "max": 10000,
            "scale": 2,
            "description": "Total value of the sales order."
          },
          "order_date": {
            "kind": "date",
            "from": "2023-01-01",
            "to": "2023-12-31",
            "description": "Date when the order was placed.",
            "trend": "growing"
          }
        }
      },
      "goods_receipts": {
        "description": "This table tracks goods receipts associated with sales orders, linking to the sales orders table. Each row records a receipt.",
        "rows": {
          "per": "sales_orders",
          "via": "order_id",
          "min": 1,
          "max": 1,
          "skew": "long-tail"
        },
        "columns": {
          "receipt_id": {
            "kind": "pk",
            "description": "Unique identifier for each goods receipt."
          },
          "order_id": {
            "kind": "fk",
            "ref": "sales_orders.order_id",
            "description": "ID of the sales order linked to this receipt."
          },
          "receipt_date": {
            "kind": "date",
            "from": "2023-01-01",
            "to": "2023-12-31",
            "description": "Date when the goods were received."
          },
          "quantity": {
            "kind": "int",
            "min": 1,
            "max": 100,
            "description": "Quantity of goods received."
          }
        }
      }
    },
    "structure": "multi-table",
    "traits": [
      "high-cardinality",
      "nullable",
      "timestamped"
    ],
    "analysisQuestions": [
      "What is the average number of hours logged by employees each week?",
      "Which employees have the highest sales order totals?",
      "How many tasks are completed versus pending in a given month?",
      "What is the distribution of project allocations among employees?",
      "Which departments have the most active projects?"
    ],
    "suggestedQueries": [
      {
        "title": "Join Employees with Tasks",
        "sql": "SELECT e.first_name, e.last_name, t.task_description FROM employees e JOIN tasks t ON e.employee_id = t.employee_id;",
        "dialect": "postgres"
      },
      {
        "title": "Aggregate Hours Logged by Employee",
        "sql": "SELECT employee_id, SUM(hours_logged) AS total_hours FROM timesheets GROUP BY employee_id;",
        "dialect": "postgres"
      },
      {
        "title": "Count Tasks by Status",
        "sql": "SELECT status, COUNT(*) AS task_count FROM tasks GROUP BY status;",
        "dialect": "postgres"
      },
      {
        "title": "Find Average Order Total for Sales",
        "sql": "SELECT employee_id, AVG(order_total) AS avg_order FROM sales_orders GROUP BY employee_id;",
        "dialect": "postgres"
      },
      {
        "title": "Analyze Project Allocations Over Time",
        "sql": "SELECT start_date, COUNT(project_id) AS project_count FROM projects GROUP BY start_date ORDER BY start_date;",
        "dialect": "postgres"
      }
    ],
    "usageScenarios": [
      {
        "title": "HR Analytics Training",
        "body": "Human Resources educators can utilize this dataset to teach students about workforce management. By analyzing employee timesheets and tasks, students can learn how to assess performance and resource allocation effectively."
      },
      {
        "title": "SQL Query Practice",
        "body": "Data analysts and students can practice SQL queries using this dataset, allowing them to gain hands-on experience with joins, aggregations, and data manipulation, all while exploring real-world HR-related scenarios."
      },
      {
        "title": "Performance Evaluation",
        "body": "Managers can use this dataset to evaluate employee performance based on task completions and sales orders, helping them identify high achievers and areas for improvement within their teams."
      },
      {
        "title": "Project Management Insights",
        "body": "Project managers can analyze project allocation data to assess how resources are being utilized across various projects. This insight can guide decisions on future project assignments and team compositions."
      }
    ]
  },
  "counts": {
    "employees": 100,
    "projects": 172,
    "sales_orders": 86,
    "goods_receipts": 86,
    "tasks": 240,
    "timesheets": 411
  },
  "stats": {
    "employees": {
      "rows": 100,
      "columns": {
        "employee_id": {
          "nulls": 0,
          "distinct": 100,
          "min": 1,
          "max": 100
        },
        "first_name": {
          "nulls": 0,
          "distinct": 59,
          "min": "Amir",
          "max": "Zoe"
        },
        "last_name": {
          "nulls": 0,
          "distinct": 55,
          "min": "Adams",
          "max": "Young"
        },
        "email": {
          "nulls": 0,
          "distinct": 99
        },
        "department": {
          "nulls": 0,
          "distinct": 4,
          "min": "HR",
          "max": "Sales"
        },
        "role": {
          "nulls": 0,
          "distinct": 3,
          "min": "Manager",
          "max": "Team Lead"
        }
      }
    },
    "tasks": {
      "rows": 240,
      "columns": {
        "task_id": {
          "nulls": 0,
          "distinct": 240,
          "min": 1,
          "max": 240
        },
        "employee_id": {
          "nulls": 0,
          "distinct": 100,
          "min": 1,
          "max": 100
        },
        "task_description": {
          "nulls": 0,
          "distinct": 239
        },
        "status": {
          "nulls": 0,
          "distinct": 3,
          "min": "Completed",
          "max": "Pending"
        },
        "due_date": {
          "nulls": 0,
          "distinct": 177,
          "min": "2023-01-10",
          "max": "2023-12-31"
        }
      }
    },
    "timesheets": {
      "rows": 411,
      "columns": {
        "timesheet_id": {
          "nulls": 0,
          "distinct": 411,
          "min": 1,
          "max": 411
        },
        "employee_id": {
          "nulls": 0,
          "distinct": 100,
          "min": 1,
          "max": 100
        },
        "hours_logged": {
          "nulls": 0,
          "distinct": 375,
          "min": 0.15,
          "max": 24
        },
        "date": {
          "nulls": 0,
          "distinct": 245,
          "min": "2023-01-01",
          "max": "2023-12-31"
        }
      }
    },
    "projects": {
      "rows": 172,
      "columns": {
        "project_id": {
          "nulls": 0,
          "distinct": 172,
          "min": 1,
          "max": 172
        },
        "employee_id": {
          "nulls": 0,
          "distinct": 100,
          "min": 1,
          "max": 100
        },
        "project_name": {
          "nulls": 0,
          "distinct": 172
        },
        "start_date": {
          "nulls": 0,
          "distinct": 127,
          "min": "2023-01-01",
          "max": "2023-12-31"
        },
        "end_date": {
          "nulls": 0,
          "distinct": 133,
          "min": "2023-01-01",
          "max": "2023-12-31"
        }
      }
    },
    "sales_orders": {
      "rows": 86,
      "columns": {
        "order_id": {
          "nulls": 0,
          "distinct": 86,
          "min": 1,
          "max": 86
        },
        "employee_id": {
          "nulls": 0,
          "distinct": 43,
          "min": 4,
          "max": 98
        },
        "order_total": {
          "nulls": 0,
          "distinct": 86,
          "min": 10.99,
          "max": 9790.5
        },
        "order_date": {
          "nulls": 0,
          "distinct": 76,
          "min": "2023-01-08",
          "max": "2023-12-31"
        }
      }
    },
    "goods_receipts": {
      "rows": 86,
      "columns": {
        "receipt_id": {
          "nulls": 0,
          "distinct": 86,
          "min": 1,
          "max": 86
        },
        "order_id": {
          "nulls": 0,
          "distinct": 86,
          "min": 1,
          "max": 86
        },
        "receipt_date": {
          "nulls": 0,
          "distinct": 74,
          "min": "2023-01-05",
          "max": "2023-12-26"
        },
        "quantity": {
          "nulls": 0,
          "distinct": 64,
          "min": 4,
          "max": 98
        }
      }
    }
  },
  "artifacts": [
    {
      "file": "csv/employees.csv",
      "format": "csv",
      "table": "employees",
      "key": "datasets/enterprise-resource-planning-system/v1/csv/employees.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/enterprise-resource-planning-system/v1/csv/employees.csv",
      "bytes": 5443,
      "sha256": "9829cec79c219ad22640f1a4533b88cfcbb551661d5065ed5f063cf650e4a1c9",
      "rows": 100,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/projects.csv",
      "format": "csv",
      "table": "projects",
      "key": "datasets/enterprise-resource-planning-system/v1/csv/projects.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/enterprise-resource-planning-system/v1/csv/projects.csv",
      "bytes": 36547,
      "sha256": "855f34abeebf4b7c44e857c06ab8a8c11fbf8764ec4bd638a657517eed30c737",
      "rows": 172,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/sales_orders.csv",
      "format": "csv",
      "table": "sales_orders",
      "key": "datasets/enterprise-resource-planning-system/v1/csv/sales_orders.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/enterprise-resource-planning-system/v1/csv/sales_orders.csv",
      "bytes": 2248,
      "sha256": "9de506dbfc910447fe445b331d560aab2806e025ae11dd47f8231082a13fd37b",
      "rows": 86,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/goods_receipts.csv",
      "format": "csv",
      "table": "goods_receipts",
      "key": "datasets/enterprise-resource-planning-system/v1/csv/goods_receipts.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/enterprise-resource-planning-system/v1/csv/goods_receipts.csv",
      "bytes": 1825,
      "sha256": "89199dc84e4700f3e76c8913867e735becdc1b33a59a708b77422f31d6bf9db6",
      "rows": 86,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/tasks.csv",
      "format": "csv",
      "table": "tasks",
      "key": "datasets/enterprise-resource-planning-system/v1/csv/tasks.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/enterprise-resource-planning-system/v1/csv/tasks.csv",
      "bytes": 20320,
      "sha256": "85c690f0eb2e69d51ac6ecd069da32f828268ec4d50e2cde90b293a8fb9ea6ca",
      "rows": 240,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/timesheets.csv",
      "format": "csv",
      "table": "timesheets",
      "key": "datasets/enterprise-resource-planning-system/v1/csv/timesheets.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/enterprise-resource-planning-system/v1/csv/timesheets.csv",
      "bytes": 10014,
      "sha256": "a1ebf22679838cf535cef54e42de54f1b8132a019e533e8e79fea4361be022b7",
      "rows": 411,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "enterprise-resource-planning-system.json",
      "format": "json",
      "table": null,
      "key": "datasets/enterprise-resource-planning-system/v1/enterprise-resource-planning-system.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/enterprise-resource-planning-system/v1/enterprise-resource-planning-system.json",
      "bytes": 195596,
      "sha256": "e7b8cd7760acde4152ac79f0fb53aabcb0bab7946a85d6df103945080c4524f5",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    },
    {
      "file": "sql/postgres.sql",
      "format": "sql-postgres",
      "table": null,
      "key": "datasets/enterprise-resource-planning-system/v1/sql/postgres.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/enterprise-resource-planning-system/v1/sql/postgres.sql",
      "bytes": 95041,
      "sha256": "f52ccbe1527fe2ce2ff2c9750266b7c9cdb82884c984614c4ad8f1b37778b01c",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mysql.sql",
      "format": "sql-mysql",
      "table": null,
      "key": "datasets/enterprise-resource-planning-system/v1/sql/mysql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/enterprise-resource-planning-system/v1/sql/mysql.sql",
      "bytes": 94266,
      "sha256": "d2068a49e8141aa6b951bcab52c3dc21019ceca25cd4e6283c986694f7051c16",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mssql.sql",
      "format": "sql-mssql",
      "table": null,
      "key": "datasets/enterprise-resource-planning-system/v1/sql/mssql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/enterprise-resource-planning-system/v1/sql/mssql.sql",
      "bytes": 96987,
      "sha256": "00966ecf0e75acb5affd7be847918be49c104dbd08e73eab3b777136830a9722",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/sqlite.sql",
      "format": "sql-sqlite",
      "table": null,
      "key": "datasets/enterprise-resource-planning-system/v1/sql/sqlite.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/enterprise-resource-planning-system/v1/sql/sqlite.sql",
      "bytes": 94028,
      "sha256": "09369925e02ace8e38143873889f1968562f00664d9ee8aff6bcf29e7edcdb85",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "prisma/seed.ts",
      "format": "prisma-seed",
      "table": null,
      "key": "datasets/enterprise-resource-planning-system/v1/prisma/seed.ts",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/enterprise-resource-planning-system/v1/prisma/seed.ts",
      "bytes": 162123,
      "sha256": "df89b848a039422ab98b44960225906d4d8f98527d24e8844e426d25713f5fdf",
      "rows": null,
      "contentType": "application/typescript; charset=utf-8"
    },
    {
      "file": "django/fixtures.json",
      "format": "django-fixture",
      "table": null,
      "key": "datasets/enterprise-resource-planning-system/v1/django/fixtures.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/enterprise-resource-planning-system/v1/django/fixtures.json",
      "bytes": 233834,
      "sha256": "cf6108132221f878775d95d0bd2c839fda23a102d537692a15ea9d10374b605b",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    }
  ],
  "publishedAt": 1788766568311,
  "updatedAt": 1788766568311
}
