{
  "format": "dataset-manifest/1",
  "slug": "virtual-real-estate-tour-app",
  "version": 1,
  "seed": "virtual-real-estate-tour-app:1",
  "spec": {
    "format": "dataset/1",
    "slug": "virtual-real-estate-tour-app",
    "name": "Virtual Property Interaction Log",
    "tagline": "Logs of user interactions with property tours, including media assets, feedback, and engagement metrics.",
    "description": "Real estate agents showcase properties through a virtual tour app, allowing potential buyers to explore listings from the comfort of their homes. Users engage with various media assets, such as images, videos, and floor plans, giving them a comprehensive view of each property. The app captures user interactions in real-time, detailing how users navigate through the tours and which properties garner the most interest. This creates a dynamic environment where agents can adapt their strategies based on user behavior.\n\nIn this synthetic dataset, the users table contains information about individuals utilizing the app, while the properties table details the various listings available for exploration. The media_assets table holds information about the images, videos, and floor plans associated with each property. Interactions are recorded in a dedicated table that tracks user engagement metrics, such as clicks and time spent on each property, while feedback captures users’ thoughts and ratings on their experiences. Each row in the interactions table connects a specific user to the properties they viewed, while the feedback table links directly to the users and properties they pertain to.\n\nThis dataset can help answer questions such as which properties attract the most attention, what types of media are most effective in engaging users, and how user feedback correlates with interaction patterns. Practitioners can use this data to analyze trends, optimize user experiences, and enhance marketing strategies for real estate listings. By working with this data, developers will gain insights into user engagement metrics and operational dynamics within the realm of virtual property tours.",
    "domain": "real-estate",
    "shape": "event-log",
    "useCases": [
      "analytics-demo",
      "etl-pipelines"
    ],
    "keywords": [
      "real estate",
      "virtual tours",
      "user interactions",
      "media assets",
      "property tags",
      "user engagement"
    ],
    "locale": "en",
    "license": "CC0-1.0",
    "version": 1,
    "tables": {
      "users": {
        "description": "This table contains information about users of the virtual tour app, including their demographics and unique identifiers.",
        "rows": 200,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each user."
          },
          "full_name": {
            "kind": "fullName",
            "description": "Full name of the user."
          },
          "email": {
            "kind": "email",
            "from": "full_name",
            "description": "Email address of the user."
          },
          "registered_at": {
            "kind": "datetime",
            "from": "2020-01-01",
            "to": "2023-10-01",
            "description": "Timestamp when the user registered.",
            "dayProfile": "waking"
          },
          "location": {
            "kind": "city",
            "description": "City where the user is located.",
            "nullable": true
          }
        }
      },
      "properties": {
        "description": "This table describes properties available for virtual tours, linking to media assets and tags for classification.",
        "rows": 150,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each property."
          },
          "address": {
            "kind": "sentence",
            "description": "Full address of the property."
          },
          "price": {
            "kind": "decimal",
            "min": 100000,
            "max": 3000000,
            "scale": 2,
            "description": "Market price of the property."
          },
          "media_count": {
            "kind": "int",
            "min": 1,
            "max": 10,
            "description": "Number of media assets associated with the property.",
            "nullable": true
          }
        }
      },
      "media_assets": {
        "description": "This table contains details about media assets linked to properties, including types and formats of media.",
        "rows": 500,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each media asset."
          },
          "property_id": {
            "kind": "fk",
            "ref": "properties.id",
            "description": "Reference to the property this media asset belongs to."
          },
          "media_type": {
            "kind": "enum",
            "values": [
              "image",
              "video",
              "floor_plan"
            ],
            "description": "Type of media asset."
          },
          "url": {
            "kind": "url",
            "description": "URL where the media asset can be accessed.",
            "nullable": true,
            "when": {
              "column": "media_type",
              "in": [
                "image",
                "video"
              ]
            }
          }
        }
      },
      "interactions": {
        "description": "This table logs user interactions with properties, capturing various engagement events.",
        "rows": 1000,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each interaction event."
          },
          "user_id": {
            "kind": "fk",
            "ref": "users.id",
            "description": "Reference to the user who interacted."
          },
          "property_id": {
            "kind": "fk",
            "ref": "properties.id",
            "description": "Reference to the property being interacted with."
          },
          "event_type": {
            "kind": "enum",
            "values": [
              "view",
              "save_favorite",
              "leave_feedback"
            ],
            "description": "Type of interaction event."
          },
          "timestamp": {
            "kind": "datetime",
            "from": "2023-01-01",
            "to": "2023-10-01",
            "description": "Timestamp of the interaction event.",
            "nullable": true,
            "when": {
              "column": "event_type",
              "in": [
                "leave_feedback"
              ]
            },
            "dayProfile": "waking",
            "trend": "growing"
          }
        }
      },
      "feedback": {
        "description": "This table contains feedback left by users regarding properties they interacted with.",
        "rows": 300,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each feedback entry."
          },
          "interaction_id": {
            "kind": "fk",
            "ref": "interactions.id",
            "description": "Reference to the interaction related to this feedback."
          },
          "comments": {
            "kind": "sentence",
            "description": "User comments or feedback on the property."
          },
          "rating": {
            "kind": "int",
            "min": 1,
            "max": 5,
            "description": "Rating given by the user, on a scale of 1 to 5."
          }
        }
      }
    },
    "structure": "multi-table",
    "traits": [
      "categorical",
      "timestamped",
      "high-cardinality"
    ],
    "analysisQuestions": [
      "Which properties receive the most views and why might that be?",
      "How do user interactions vary by property type?",
      "What trends can be observed in user feedback over time?",
      "Are there any correlations between media types and user engagement?",
      "What time of day do users engage the most with property tours?"
    ],
    "suggestedQueries": [
      {
        "title": "Join Users with Interactions",
        "sql": "SELECT u.full_name, i.event_type FROM users u JOIN interactions i ON u.id = i.user_id;",
        "dialect": "postgres"
      },
      {
        "title": "Count Interactions by Property",
        "sql": "SELECT p.address, COUNT(i.id) as interaction_count FROM properties p LEFT JOIN interactions i ON p.id = i.property_id GROUP BY p.id;",
        "dialect": "postgres"
      },
      {
        "title": "Average Rating per Property",
        "sql": "SELECT p.address, AVG(f.rating) as average_rating FROM properties p LEFT JOIN feedback f ON p.id = f.interaction_id GROUP BY p.id;",
        "dialect": "postgres"
      },
      {
        "title": "Engagement Over Time",
        "sql": "SELECT DATE(i.timestamp) as date, COUNT(i.id) as total_interactions FROM interactions i GROUP BY date ORDER BY date;",
        "dialect": "postgres"
      }
    ],
    "usageScenarios": [
      {
        "title": "Real Estate Agent Analysis",
        "body": "Real estate agents can use this dataset to analyze how potential buyers interact with virtual tours. By identifying which properties receive the most views and engagement, agents can adjust their marketing strategies and highlight features that attract interest."
      },
      {
        "title": "User Experience Optimization",
        "body": "Developers working on the virtual tour app can leverage this dataset to optimize user experience. By examining user interactions and feedback, they can identify areas for improvement, such as enhancing media quality or improving the navigation experience within tours."
      },
      {
        "title": "Market Trend Analysis",
        "body": "Data analysts can utilize this dataset to identify market trends in real estate. By analyzing user preferences and engagement metrics, they can provide insights into which property features are most desirable, helping agents and developers align their offerings with market demand."
      },
      {
        "title": "Performance Metrics for Marketing Campaigns",
        "body": "Marketing teams can analyze this dataset to evaluate the effectiveness of their campaigns. By tracking interactions and feedback over time, they can measure the impact of advertising efforts on user engagement and property interest."
      }
    ]
  },
  "counts": {
    "properties": 150,
    "media_assets": 500,
    "users": 200,
    "interactions": 1000,
    "feedback": 300
  },
  "stats": {
    "users": {
      "rows": 200,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 200,
          "min": 1,
          "max": 200
        },
        "full_name": {
          "nulls": 0,
          "distinct": 198,
          "min": "Alice Adams",
          "max": "Zoe Meyer"
        },
        "email": {
          "nulls": 0,
          "distinct": 200
        },
        "registered_at": {
          "nulls": 0,
          "distinct": 200,
          "min": "2020-01-01 13:38:57",
          "max": "2023-09-29 20:15:40"
        },
        "location": {
          "nulls": 19,
          "distinct": 57,
          "min": "Amsterdam",
          "max": "Zurich"
        }
      }
    },
    "properties": {
      "rows": 150,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 150,
          "min": 1,
          "max": 150
        },
        "address": {
          "nulls": 0,
          "distinct": 149
        },
        "price": {
          "nulls": 0,
          "distinct": 150,
          "min": 131379.77,
          "max": 2988673.9
        },
        "media_count": {
          "nulls": 10,
          "distinct": 10,
          "min": 1,
          "max": 10
        }
      }
    },
    "media_assets": {
      "rows": 500,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 500,
          "min": 1,
          "max": 500
        },
        "property_id": {
          "nulls": 0,
          "distinct": 141,
          "min": 1,
          "max": 149
        },
        "media_type": {
          "nulls": 0,
          "distinct": 3,
          "min": "floor_plan",
          "max": "video"
        },
        "url": {
          "nulls": 158,
          "distinct": 338
        }
      }
    },
    "interactions": {
      "rows": 1000,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 1000,
          "min": 1,
          "max": 1000
        },
        "user_id": {
          "nulls": 0,
          "distinct": 200,
          "min": 1,
          "max": 200
        },
        "property_id": {
          "nulls": 0,
          "distinct": 148,
          "min": 1,
          "max": 150
        },
        "event_type": {
          "nulls": 0,
          "distinct": 3,
          "min": "leave_feedback",
          "max": "view"
        },
        "timestamp": {
          "nulls": 669,
          "distinct": 331,
          "min": "2023-01-01 08:04:08",
          "max": "2023-10-01 17:15:55"
        }
      }
    },
    "feedback": {
      "rows": 300,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 300,
          "min": 1,
          "max": 300
        },
        "interaction_id": {
          "nulls": 0,
          "distinct": 264,
          "min": 1,
          "max": 999
        },
        "comments": {
          "nulls": 0,
          "distinct": 299
        },
        "rating": {
          "nulls": 0,
          "distinct": 5,
          "min": 1,
          "max": 5
        }
      }
    }
  },
  "artifacts": [
    {
      "file": "csv/properties.csv",
      "format": "csv",
      "table": "properties",
      "key": "datasets/virtual-real-estate-tour-app/v1/csv/properties.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/virtual-real-estate-tour-app/v1/csv/properties.csv",
      "bytes": 11020,
      "sha256": "03ad2151cce1b63c41e6f91cd10dd33bf57792ff4480e2fbfaf5fc54abc20390",
      "rows": 150,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/media_assets.csv",
      "format": "csv",
      "table": "media_assets",
      "key": "datasets/virtual-real-estate-tour-app/v1/csv/media_assets.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/virtual-real-estate-tour-app/v1/csv/media_assets.csv",
      "bytes": 19435,
      "sha256": "f56c46abb7436c42d728096c55666fa90a2c815f1dd20a492e546979efb5a40a",
      "rows": 500,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/users.csv",
      "format": "csv",
      "table": "users",
      "key": "datasets/virtual-real-estate-tour-app/v1/csv/users.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/virtual-real-estate-tour-app/v1/csv/users.csv",
      "bytes": 13623,
      "sha256": "5e734dc58a3ec44ad2f68fd45f1e771662e2ef576234c698d861d4bca55eb20f",
      "rows": 200,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/interactions.csv",
      "format": "csv",
      "table": "interactions",
      "key": "datasets/virtual-real-estate-tour-app/v1/csv/interactions.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/virtual-real-estate-tour-app/v1/csv/interactions.csv",
      "bytes": 30285,
      "sha256": "09b8ceb24ae0d626d3c06f75dbcea20ef7defafcabc31fd295648e7e954c4464",
      "rows": 1000,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/feedback.csv",
      "format": "csv",
      "table": "feedback",
      "key": "datasets/virtual-real-estate-tour-app/v1/csv/feedback.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/virtual-real-estate-tour-app/v1/csv/feedback.csv",
      "bytes": 20277,
      "sha256": "5a070d97789b6af75e9d7a3650246e8cfc80d9ec485ea5d7d7c1af11227f1b99",
      "rows": 300,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "virtual-real-estate-tour-app.json",
      "format": "json",
      "table": null,
      "key": "datasets/virtual-real-estate-tour-app/v1/virtual-real-estate-tour-app.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/virtual-real-estate-tour-app/v1/virtual-real-estate-tour-app.json",
      "bytes": 308208,
      "sha256": "10ccd1829ec409c99248d7936d2ac94d1eb2d33598302fa444cd44a233d7f655",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    },
    {
      "file": "sql/postgres.sql",
      "format": "sql-postgres",
      "table": null,
      "key": "datasets/virtual-real-estate-tour-app/v1/sql/postgres.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/virtual-real-estate-tour-app/v1/sql/postgres.sql",
      "bytes": 128429,
      "sha256": "b5b50c7a0aa76b2ce93ff1ffdda62323a1bb89dfbdcd163696db55979ea7f0f1",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mysql.sql",
      "format": "sql-mysql",
      "table": null,
      "key": "datasets/virtual-real-estate-tour-app/v1/sql/mysql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/virtual-real-estate-tour-app/v1/sql/mysql.sql",
      "bytes": 127858,
      "sha256": "5340c6516fe4d08228abc6aa0beaaf1edd2dcefd84e77520c57df7b2e9a29661",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mssql.sql",
      "format": "sql-mssql",
      "table": null,
      "key": "datasets/virtual-real-estate-tour-app/v1/sql/mssql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/virtual-real-estate-tour-app/v1/sql/mssql.sql",
      "bytes": 131607,
      "sha256": "5675a6412501e8a5ff1ecadfa81769c17c95b75474b58dca7a17eb6af037dfa1",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/sqlite.sql",
      "format": "sql-sqlite",
      "table": null,
      "key": "datasets/virtual-real-estate-tour-app/v1/sql/sqlite.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/virtual-real-estate-tour-app/v1/sql/sqlite.sql",
      "bytes": 127644,
      "sha256": "6a238e4d6c87b70b664196f5a7fb7204cfcdf528d0681397824846d3970d8023",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "prisma/seed.ts",
      "format": "prisma-seed",
      "table": null,
      "key": "datasets/virtual-real-estate-tour-app/v1/prisma/seed.ts",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/virtual-real-estate-tour-app/v1/prisma/seed.ts",
      "bytes": 245586,
      "sha256": "dfb543880cdaefa79f5bcbe0fb40869fa03d4d5431a82f23f1664e59f7f01d79",
      "rows": null,
      "contentType": "application/typescript; charset=utf-8"
    },
    {
      "file": "django/fixtures.json",
      "format": "django-fixture",
      "table": null,
      "key": "datasets/virtual-real-estate-tour-app/v1/django/fixtures.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/virtual-real-estate-tour-app/v1/django/fixtures.json",
      "bytes": 400494,
      "sha256": "0641d86247f03c14e80aecf8f3db1700888a71f35d4fc1737151edfff794cd9e",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    }
  ],
  "publishedAt": 1788768409659,
  "updatedAt": 1788768409659
}
