{
  "format": "dataset-manifest/1",
  "slug": "iot-event-logging-dataset",
  "version": 1,
  "seed": "iot-event-logging-dataset:1",
  "spec": {
    "format": "dataset/1",
    "slug": "iot-event-logging-dataset",
    "name": "IoT Event Logging Dataset",
    "tagline": "Log entries detailing device statuses, interactions, and data transmissions from various IoT devices.",
    "description": "IoT devices generate constant streams of data, reporting their health and performance in real-time. Device interactions are logged, capturing information such as connection statuses, data transmission effectiveness, and error events. This operational log portrays the intricate dynamics of a connected environment, where high-traffic devices create clusters of log entries and sporadic anomalies suggest communication errors or unusual behaviors. Each entry represents a snapshot of a device's status, allowing for in-depth analysis of performance trends over time.\n\nThe dataset consists of a single table, iot_events, where each row details an individual IoT event, including timestamps, device identifiers, event types, and any error codes that may have occurred. Analyzing these logs helps developers understand how devices communicate, identify patterns of normal operation, and detect deviations that could signify potential issues. By correlating event types with timestamps, trends in device performance can be established, and the effectiveness of data pipelines can be evaluated.\n\nWith this dataset, users can explore various questions such as: How often do devices report errors? Which devices are most reliable in terms of data transmission? Are there particular times of day when anomalies are more likely to occur? This synthetic data provides an excellent opportunity to practice data analysis skills, work on anomaly detection algorithms, and refine skills in managing and interpreting large volumes of log data.",
    "domain": "iot",
    "shape": "event-log",
    "useCases": [
      "analytics-demo",
      "etl-pipelines"
    ],
    "keywords": [
      "IoT",
      "event logging",
      "device health",
      "data transmission",
      "anomalies",
      "log analysis",
      "synthetic data"
    ],
    "locale": "en",
    "license": "CC0-1.0",
    "version": 1,
    "tables": {
      "iot_events": {
        "description": "Each row in this table represents a log entry from an IoT device, capturing its status, interaction details, and potential error messages. This table records events from various devices, linking back to their operational states and communication effectiveness.",
        "rows": 500,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each log entry."
          },
          "device_id": {
            "kind": "uuid",
            "description": "Unique identifier for the IoT device generating the log."
          },
          "timestamp": {
            "kind": "datetime",
            "from": "2023-01-01",
            "to": "2023-12-31",
            "description": "Date and time when the event was logged."
          },
          "status": {
            "kind": "enum",
            "values": [
              "active",
              "inactive",
              "error"
            ],
            "description": "Current status of the device during the event."
          },
          "data_transmission_success": {
            "kind": "bool",
            "trueRate": 0.85,
            "description": "Indicates whether the data transmission was successful."
          },
          "error_message": {
            "kind": "words",
            "max": 50,
            "nullable": true,
            "description": "Error message if the device encountered an issue."
          },
          "event_type": {
            "kind": "enum",
            "values": [
              "heartbeat",
              "data_update",
              "status_check"
            ],
            "description": "Type of event logged by the device."
          },
          "temperature": {
            "kind": "decimal",
            "min": -20,
            "max": 100,
            "scale": 2,
            "description": "Temperature reading from the device, in degrees Celsius."
          },
          "battery_level": {
            "kind": "int",
            "min": 0,
            "max": 100,
            "description": "Current battery level of the device, in percentage."
          }
        }
      }
    },
    "structure": "single-table",
    "traits": [
      "timestamped",
      "categorical",
      "nullable"
    ],
    "analysisQuestions": [
      "What percentage of devices are reporting errors?",
      "Which devices have the lowest battery levels and may need maintenance?",
      "How often do devices successfully transmit data across different event types?",
      "Are there specific times of day when errors are more likely to occur?",
      "What is the average temperature reported by devices over time?"
    ],
    "suggestedQueries": [
      {
        "title": "Count Devices by Status",
        "sql": "SELECT status, COUNT(*) FROM iot_events GROUP BY status;",
        "dialect": "postgres"
      },
      {
        "title": "Average Battery Level by Event Type",
        "sql": "SELECT event_type, AVG(battery_level) FROM iot_events GROUP BY event_type;",
        "dialect": "postgres"
      },
      {
        "title": "Error Rate by Device",
        "sql": "SELECT device_id, COUNT(*) FILTER (WHERE status = 'error') * 100.0 / COUNT(*) AS error_rate FROM iot_events GROUP BY device_id;",
        "dialect": "postgres"
      },
      {
        "title": "Temperature Trends Over Time",
        "sql": "SELECT DATE(timestamp) AS date, AVG(temperature) FROM iot_events GROUP BY date ORDER BY date;",
        "dialect": "postgres"
      }
    ],
    "usageScenarios": [
      {
        "title": "Data Analysis for IoT Performance",
        "body": "Data analysts can utilize this dataset to examine the performance and reliability of IoT devices over time. By querying the logs, they can identify patterns in device statuses, pinpoint critical failures, and develop strategies to enhance device communication and efficiency."
      },
      {
        "title": "ETL Pipeline Testing",
        "body": "Developers can employ this dataset to simulate data ingestion processes in ETL pipelines. By testing with realistic log entries, they can assess the performance of their data transformation and loading mechanisms, ensuring they can handle various scenarios that may arise in actual IoT contexts."
      },
      {
        "title": "Building BI Dashboards",
        "body": "Business intelligence professionals can leverage the dataset to create visual dashboards that provide insights into the operational status of IoT devices. This can help stakeholders track device performance metrics, monitor anomalies, and make data-driven decisions to improve IoT infrastructure."
      }
    ]
  },
  "counts": {
    "iot_events": 500
  },
  "stats": {
    "iot_events": {
      "rows": 500,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 500,
          "min": 1,
          "max": 500
        },
        "device_id": {
          "nulls": 0,
          "distinct": 500
        },
        "timestamp": {
          "nulls": 0,
          "distinct": 500,
          "min": "2023-01-01 11:48:34",
          "max": "2023-12-31 14:29:28"
        },
        "status": {
          "nulls": 0,
          "distinct": 3,
          "min": "active",
          "max": "inactive"
        },
        "data_transmission_success": {
          "nulls": 0,
          "distinct": 2,
          "min": "false",
          "max": "true"
        },
        "error_message": {
          "nulls": 54,
          "distinct": 446
        },
        "event_type": {
          "nulls": 0,
          "distinct": 3,
          "min": "data_update",
          "max": "status_check"
        },
        "temperature": {
          "nulls": 0,
          "distinct": 491,
          "min": -19.96,
          "max": 99.74
        },
        "battery_level": {
          "nulls": 0,
          "distinct": 100,
          "min": 0,
          "max": 100
        }
      }
    }
  },
  "artifacts": [
    {
      "file": "csv/iot_events.csv",
      "format": "csv",
      "table": "iot_events",
      "key": "datasets/iot-event-logging-dataset/v1/csv/iot_events.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/iot-event-logging-dataset/v1/csv/iot_events.csv",
      "bytes": 125039,
      "sha256": "472b106fb3b2d8291078cac9b5415a4a7a410ac790504366ffd5a9042e776eaf",
      "rows": 500,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "iot-event-logging-dataset.json",
      "format": "json",
      "table": null,
      "key": "datasets/iot-event-logging-dataset/v1/iot-event-logging-dataset.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/iot-event-logging-dataset/v1/iot-event-logging-dataset.json",
      "bytes": 233988,
      "sha256": "dde0e2c7de3d095fe6e6b59bd6814329fd1c78f9953c2da9304853f5dcc2d26d",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    },
    {
      "file": "sql/postgres.sql",
      "format": "sql-postgres",
      "table": null,
      "key": "datasets/iot-event-logging-dataset/v1/sql/postgres.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/iot-event-logging-dataset/v1/sql/postgres.sql",
      "bytes": 138336,
      "sha256": "4a385ce3b6c83e5cad39190a350e4018ca7afefc674fc68664662af112dd884a",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mysql.sql",
      "format": "sql-mysql",
      "table": null,
      "key": "datasets/iot-event-logging-dataset/v1/sql/mysql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/iot-event-logging-dataset/v1/sql/mysql.sql",
      "bytes": 136653,
      "sha256": "b059744c6d814f7df0879f0b4357da2dc3e3d05487c589b01eb2c908941d5cc5",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mssql.sql",
      "format": "sql-mssql",
      "table": null,
      "key": "datasets/iot-event-logging-dataset/v1/sql/mssql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/iot-event-logging-dataset/v1/sql/mssql.sql",
      "bytes": 139169,
      "sha256": "dcee82a68e452d4fd7cb2906093220273722cddf01d7c20036c2458aca5714cf",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/sqlite.sql",
      "format": "sql-sqlite",
      "table": null,
      "key": "datasets/iot-event-logging-dataset/v1/sql/sqlite.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/iot-event-logging-dataset/v1/sql/sqlite.sql",
      "bytes": 136608,
      "sha256": "ac3876a5f4be61d9ec7997a41717288e9d118505c0d4444e866749103caef8f9",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "prisma/seed.ts",
      "format": "prisma-seed",
      "table": null,
      "key": "datasets/iot-event-logging-dataset/v1/prisma/seed.ts",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/iot-event-logging-dataset/v1/prisma/seed.ts",
      "bytes": 207285,
      "sha256": "8edb6ed52779369602d105ab1cffc874fe620fbd8819748c87c00d10bd745f48",
      "rows": null,
      "contentType": "application/typescript; charset=utf-8"
    },
    {
      "file": "django/fixtures.json",
      "format": "django-fixture",
      "table": null,
      "key": "datasets/iot-event-logging-dataset/v1/django/fixtures.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/iot-event-logging-dataset/v1/django/fixtures.json",
      "bytes": 258042,
      "sha256": "f43a565e97e97d85f3f6409d2010ae3ead8114f8c3cb5183010345baceb46443",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    }
  ],
  "publishedAt": 1788733944791,
  "updatedAt": 1788733944791
}
