{
  "format": "dataset-manifest/1",
  "slug": "secure-manufacturing-credentials",
  "version": 1,
  "seed": "secure-manufacturing-credentials:1",
  "spec": {
    "format": "dataset/1",
    "slug": "secure-manufacturing-credentials",
    "name": "Secure Manufacturing Credentials",
    "tagline": "User entries, access logs, password changes, and tags related to secure credentials in manufacturing.",
    "description": "Manufacturers control sensitive information and workflows, managing access through robust credentialing systems. Users interact with various documents, with each user entry detailing their access levels, historical records of document interactions, and security practices tied to their credentials. The operational flow includes tracking which users access which documents, when they access them, and how frequently they change their passwords to comply with security policies. \n\nThe data model contains several interconnected tables. The 'users' table holds individual user entries, while the 'documents' table contains information about sensitive documents. The 'access_logs' table records the instances of document access by users, detailing timestamps and actions taken. The 'password_changes' table captures the history of password updates for each user, revealing trends in password stability and security compliance. Lastly, the 'tags' table categorizes documents, allowing for efficient organization and retrieval of information. Each user can be joined to their corresponding access logs, password changes, and the documents they interacted with, providing a clear view of user behavior and security practices. \n\nThis dataset answers critical questions regarding user access patterns, document security, and the effectiveness of password policies. It is particularly suited for practicing data queries related to user audits, access trends, and the analysis of security compliance over time. By examining the interactions between users, documents, and the frequency of password changes, one can derive valuable insights into the security posture of a manufacturing environment. It is important to note that all data in this dataset is synthetic, created to facilitate practice and analysis without the need for real-world sensitivity.",
    "domain": "manufacturing",
    "shape": "slowly-changing",
    "useCases": [
      "etl-pipelines",
      "teaching"
    ],
    "keywords": [
      "credentials",
      "manufacturing",
      "security",
      "passwords",
      "access",
      "data management",
      "sensitive information"
    ],
    "locale": "en",
    "license": "CC0-1.0",
    "version": 1,
    "tables": {
      "users": {
        "description": "This table contains user information, including their unique identifiers and roles. Each user can have multiple access records linked through a foreign key.",
        "rows": 100,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each user."
          },
          "username": {
            "kind": "fullName",
            "description": "Full name of the user.",
            "nullable": true
          },
          "role": {
            "kind": "enum",
            "values": [
              "admin",
              "editor",
              "viewer"
            ],
            "description": "Role assigned to the user."
          },
          "created_at": {
            "kind": "datetime",
            "from": "2020-01-01",
            "to": "2023-01-01",
            "description": "Date when the user was created.",
            "nullable": true,
            "when": {
              "column": "role",
              "in": [
                "admin",
                "editor"
              ]
            },
            "dayProfile": "business"
          }
        }
      },
      "documents": {
        "description": "This table represents documents that users can access, linking to their access records. It includes details about document security.",
        "rows": 50,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each document."
          },
          "title": {
            "kind": "sentence",
            "min": 5,
            "max": 15,
            "description": "Title of the document.",
            "nullable": true
          },
          "sensitivity_level": {
            "kind": "enum",
            "values": [
              "low",
              "medium",
              "high"
            ],
            "description": "Sensitivity level of the document."
          },
          "created_at": {
            "kind": "datetime",
            "from": "2020-01-01",
            "to": "2023-01-01",
            "description": "Date when the document was created.",
            "nullable": true,
            "when": {
              "column": "sensitivity_level",
              "in": [
                "high"
              ]
            },
            "dayProfile": "business"
          }
        }
      },
      "access_logs": {
        "description": "This table tracks access records for users on documents, indicating when and how they accessed each document.",
        "rows": {
          "per": "users",
          "via": "user_id",
          "min": 1,
          "max": 10,
          "skew": "long-tail"
        },
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each access log entry."
          },
          "user_id": {
            "kind": "fk",
            "ref": "users.id",
            "description": "ID of the user who accessed the document."
          },
          "document_id": {
            "kind": "fk",
            "ref": "documents.id",
            "description": "ID of the document that was accessed."
          },
          "access_time": {
            "kind": "datetime",
            "from": "2020-01-01",
            "to": "2023-01-01",
            "description": "Timestamp of when the document was accessed.",
            "dayProfile": "waking"
          }
        }
      },
      "password_changes": {
        "description": "This table maintains a history of password changes for users, indicating when passwords were updated and their strength.",
        "rows": {
          "per": "users",
          "via": "user_id",
          "min": 1,
          "max": 5,
          "skew": "long-tail"
        },
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each password change entry."
          },
          "user_id": {
            "kind": "fk",
            "ref": "users.id",
            "description": "ID of the user whose password was changed."
          },
          "changed_at": {
            "kind": "datetime",
            "from": "2020-01-01",
            "to": "2023-01-01",
            "description": "Timestamp of when the password was changed.",
            "nullable": true,
            "when": {
              "column": "password_quality",
              "in": [
                "weak"
              ]
            },
            "dayProfile": "business"
          },
          "password_quality": {
            "kind": "enum",
            "values": [
              "weak",
              "medium",
              "strong"
            ],
            "description": "Quality of the new password."
          }
        }
      },
      "tags": {
        "description": "This table categorizes documents with tags to facilitate easier searching and retrieval.",
        "rows": {
          "per": "documents",
          "via": "document_id",
          "min": 1,
          "max": 3,
          "skew": "long-tail"
        },
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each tag."
          },
          "document_id": {
            "kind": "fk",
            "ref": "documents.id",
            "description": "ID of the document associated with the tag."
          },
          "tag": {
            "kind": "words",
            "min": 1,
            "max": 3,
            "description": "Tag assigned to the document for categorization.",
            "nullable": true
          }
        }
      }
    },
    "structure": "multi-table",
    "traits": [
      "categorical",
      "nullable",
      "high-cardinality"
    ],
    "analysisQuestions": [
      "What patterns emerge in password strength changes over time?",
      "Which documents are accessed most frequently and by whom?",
      "How does the sensitivity level of a document correlate with access frequency?",
      "What roles have the most access to sensitive documents?",
      "Are there common tags associated with frequently accessed documents?"
    ],
    "suggestedQueries": [
      {
        "title": "Join Users and Access Logs",
        "sql": "SELECT u.username, a.access_time FROM users u JOIN access_logs a ON u.id = a.user_id;",
        "dialect": "postgres"
      },
      {
        "title": "Count Accesses per Document",
        "sql": "SELECT d.title, COUNT(a.id) AS access_count FROM documents d LEFT JOIN access_logs a ON d.id = a.document_id GROUP BY d.title;",
        "dialect": "postgres"
      },
      {
        "title": "Average Password Quality by User Role",
        "sql": "SELECT u.role, AVG(CASE WHEN p.password_quality = 'strong' THEN 1 ELSE 0 END) AS strong_password_percentage FROM users u JOIN password_changes p ON u.id = p.user_id GROUP BY u.role;",
        "dialect": "postgres"
      },
      {
        "title": "Access Trends Over Time",
        "sql": "SELECT DATE(a.access_time) AS access_date, COUNT(a.id) AS access_count FROM access_logs a GROUP BY DATE(a.access_time) ORDER BY access_date;",
        "dialect": "postgres"
      }
    ],
    "usageScenarios": [
      {
        "title": "ETL Pipeline Development",
        "body": "Data engineers can use this dataset to build ETL pipelines that extract, transform, and load credential management data into a reporting database. By simulating real-world access logs and password changes, they can practice their skills with data integration, ensuring they can handle sensitive information securely."
      },
      {
        "title": "Teaching Data Management Concepts",
        "body": "Educators can employ this dataset in classroom settings to teach students about data management principles, specifically focusing on security and access control. By exploring the relationships between users, documents, and access records, students will gain hands-on experience in building queries and understanding data security best practices."
      },
      {
        "title": "Analyzing Password Security Trends",
        "body": "Security analysts can leverage this dataset to analyze trends in password security across users and documents. By investigating the quality of passwords over time and their correlation with access frequency, analysts can identify potential vulnerabilities and recommend improvements in credential management policies."
      },
      {
        "title": "Document Tagging and Retrieval",
        "body": "Data scientists can utilize this dataset to explore the effectiveness of document tagging in improving retrieval processes. By analyzing access patterns related to tagged documents, they can derive insights on how categorization impacts user access and document security, ultimately leading to better information management strategies."
      }
    ]
  },
  "counts": {
    "documents": 50,
    "tags": 77,
    "users": 100,
    "access_logs": 386,
    "password_changes": 215
  },
  "stats": {
    "users": {
      "rows": 100,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 100,
          "min": 1,
          "max": 100
        },
        "username": {
          "nulls": 14,
          "distinct": 86,
          "min": "Amir Kim",
          "max": "Zoe Walker"
        },
        "role": {
          "nulls": 0,
          "distinct": 3,
          "min": "admin",
          "max": "viewer"
        },
        "created_at": {
          "nulls": 29,
          "distinct": 71,
          "min": "2020-01-07 10:11:41",
          "max": "2022-12-25 14:35:50"
        }
      }
    },
    "documents": {
      "rows": 50,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 50,
          "min": 1,
          "max": 50
        },
        "title": {
          "nulls": 4,
          "distinct": 46
        },
        "sensitivity_level": {
          "nulls": 0,
          "distinct": 3,
          "min": "high",
          "max": "medium"
        },
        "created_at": {
          "nulls": 33,
          "distinct": 17,
          "min": "2020-06-09 09:47:35",
          "max": "2022-11-07 12:43:48"
        }
      }
    },
    "access_logs": {
      "rows": 386,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 386,
          "min": 1,
          "max": 386
        },
        "user_id": {
          "nulls": 0,
          "distinct": 100,
          "min": 1,
          "max": 100
        },
        "document_id": {
          "nulls": 0,
          "distinct": 50,
          "min": 1,
          "max": 50
        },
        "access_time": {
          "nulls": 0,
          "distinct": 386,
          "min": "2020-01-07 11:11:09",
          "max": "2023-01-01 12:40:36"
        }
      }
    },
    "password_changes": {
      "rows": 215,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 215,
          "min": 1,
          "max": 215
        },
        "user_id": {
          "nulls": 0,
          "distinct": 100,
          "min": 1,
          "max": 100
        },
        "changed_at": {
          "nulls": 149,
          "distinct": 66,
          "min": "2020-01-04 16:14:52",
          "max": "2022-12-30 13:54:36"
        },
        "password_quality": {
          "nulls": 0,
          "distinct": 3,
          "min": "medium",
          "max": "weak"
        }
      }
    },
    "tags": {
      "rows": 77,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 77,
          "min": 1,
          "max": 77
        },
        "document_id": {
          "nulls": 0,
          "distinct": 50,
          "min": 1,
          "max": 50
        },
        "tag": {
          "nulls": 6,
          "distinct": 70
        }
      }
    }
  },
  "artifacts": [
    {
      "file": "csv/documents.csv",
      "format": "csv",
      "table": "documents",
      "key": "datasets/secure-manufacturing-credentials/v1/csv/documents.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/secure-manufacturing-credentials/v1/csv/documents.csv",
      "bytes": 3376,
      "sha256": "e4d36f59f3e5ef8e94d91beb17ca0aa8abe0c67bff93d00dd1bc2feffa013d1a",
      "rows": 50,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/tags.csv",
      "format": "csv",
      "table": "tags",
      "key": "datasets/secure-manufacturing-credentials/v1/csv/tags.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/secure-manufacturing-credentials/v1/csv/tags.csv",
      "bytes": 1399,
      "sha256": "d39e9d5c75a5756fac5a537b57b6d287b78a23318edd0d8010ff27bc62e09435",
      "rows": 77,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/users.csv",
      "format": "csv",
      "table": "users",
      "key": "datasets/secure-manufacturing-credentials/v1/csv/users.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/secure-manufacturing-credentials/v1/csv/users.csv",
      "bytes": 3597,
      "sha256": "e071bab9b1e8cf789f6f17b2e0a4bc438628122bfda05e6cc30b9726d1773a0c",
      "rows": 100,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/access_logs.csv",
      "format": "csv",
      "table": "access_logs",
      "key": "datasets/secure-manufacturing-credentials/v1/csv/access_logs.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/secure-manufacturing-credentials/v1/csv/access_logs.csv",
      "bytes": 11797,
      "sha256": "66bd2c1af0850a638f970e7c10ab930119eb5b679c8026cf7bf642070d17c41d",
      "rows": 386,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/password_changes.csv",
      "format": "csv",
      "table": "password_changes",
      "key": "datasets/secure-manufacturing-credentials/v1/csv/password_changes.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/secure-manufacturing-credentials/v1/csv/password_changes.csv",
      "bytes": 4473,
      "sha256": "435c9eb445d7970efe87220c329ba6cc4597da89afc311ce627cb051b5c60f6d",
      "rows": 215,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "secure-manufacturing-credentials.json",
      "format": "json",
      "table": null,
      "key": "datasets/secure-manufacturing-credentials/v1/secure-manufacturing-credentials.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/secure-manufacturing-credentials/v1/secure-manufacturing-credentials.json",
      "bytes": 97246,
      "sha256": "9df3c6d408b4f8269836c996ad63734dfc27e788eded8583464cd00b07506dae",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    },
    {
      "file": "sql/postgres.sql",
      "format": "sql-postgres",
      "table": null,
      "key": "datasets/secure-manufacturing-credentials/v1/sql/postgres.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/secure-manufacturing-credentials/v1/sql/postgres.sql",
      "bytes": 37756,
      "sha256": "c710acfe97dec7a457a9c16227595ea700492bcbcb7e8a5ad85b2c05d1f4447f",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mysql.sql",
      "format": "sql-mysql",
      "table": null,
      "key": "datasets/secure-manufacturing-credentials/v1/sql/mysql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/secure-manufacturing-credentials/v1/sql/mysql.sql",
      "bytes": 37195,
      "sha256": "3e62b9d7f7906beac651caa470b05650aa7b6a50a44e39b282608110c9359a20",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mssql.sql",
      "format": "sql-mssql",
      "table": null,
      "key": "datasets/secure-manufacturing-credentials/v1/sql/mssql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/secure-manufacturing-credentials/v1/sql/mssql.sql",
      "bytes": 38636,
      "sha256": "073fe806f3decda89e5f071f419d011f77bbdcf8573b48a9eaf79c82d0db5698",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/sqlite.sql",
      "format": "sql-sqlite",
      "table": null,
      "key": "datasets/secure-manufacturing-credentials/v1/sql/sqlite.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/secure-manufacturing-credentials/v1/sql/sqlite.sql",
      "bytes": 36988,
      "sha256": "c8584bbea82ad8ad0c5f45c2390153de142078376a144a3d1edaa97317c76468",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "prisma/seed.ts",
      "format": "prisma-seed",
      "table": null,
      "key": "datasets/secure-manufacturing-credentials/v1/prisma/seed.ts",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/secure-manufacturing-credentials/v1/prisma/seed.ts",
      "bytes": 81568,
      "sha256": "1af1a151fae0e08bb75af374c7a931cb75a2bd8b8c028f077e5a13fe12f94d03",
      "rows": null,
      "contentType": "application/typescript; charset=utf-8"
    },
    {
      "file": "django/fixtures.json",
      "format": "django-fixture",
      "table": null,
      "key": "datasets/secure-manufacturing-credentials/v1/django/fixtures.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/secure-manufacturing-credentials/v1/django/fixtures.json",
      "bytes": 132640,
      "sha256": "4a11483a3980730cb3a2f51ffb9fc70919638751187a277f5964993ffbcf5714",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    }
  ],
  "publishedAt": 1788766889441,
  "updatedAt": 1788766889441
}
