Inspiration
We were inspired by the stories and reports often heard on social media. One of the incidents involved a person walking home from work, feeling uneasy as he noticed the streets becoming increasingly deserted. The stories of harassment and violence against women and children that we had read about and heard from friends echoed in your mind. This incident made me realize the importance of staying in touch and ensuring your safety, inspiring me to take proactive steps to improve our family’s communication and safety measures.
What it does
This solution helps with real-time data processing and analysis, enabling us to monitor and respond to critical user activity instantly. By streaming data in real time, we can ensure that only relevant and enriched data is stored and analyzed. The use of KQL for advanced querying allows us to gain deeper insights from the data. Additionally, the real-time dashboards in Microsoft Fabric provide a dynamic visualization of location and health-related data, facilitating immediate decision-making. The alert triggers based on real-time data further enhance our ability to respond quickly to any significant changes or anomalies, thereby improving overall safety.
How we built it
Our objective is to mimic the data received from user data, replicating the streaming data from a virtual machine using a Python script. The CSV file contains latitude, longitude, elevation, heart rate, blood pressure, and stress levels. We will stream this dataset using Event Stream and filter incoming data in real time. We also store the data in the form of a medallion architecture in the KQL database. The filtered and enriched data, along with predictions, is loaded into KQL databases where we use KQL for advanced querying and data analysis. We utilized Microsoft Fabric Real-Time Dashboard to create a real-time dashboard that visualizes location data and health-related data. Alert triggers were implemented based on the real-time dashboard.
Challenges we ran into
One of the major challenges we faced was writing efficient KQL queries was also challenging, as our initial queries resulted in performance bottlenecks. Additionally, building real-time dashboards in Microsoft Fabric required careful design to handle live updates smoothly. Creating alerts based on the real-time dashboard data was also quite challenging.
Accomplishments that we're proud of
One of the accomplishments we are most proud of is optimizing our event stream for efficient real-time data processing. Despite the initial challenges with performance bottlenecks in our KQL queries, we managed to refine them for better efficiency. Additionally, we designed and built real-time dashboards in Microsoft Fabric that handle live updates smoothly. Implementing alert triggers based on real-time dashboard data was particularly challenging, but we overcame these obstacles and achieved a robust, real-time data visualization and alert system
What we learned
Through this project, we gained a comprehensive understanding of Real-Time Analytics features. We explored how to stream data from multiple sources and store complex real-time data in a KQL database. Additionally, we acquired knowledge about querying with KQL and gained experience using Microsoft Fabric Notebook. We examined various policies in the KQL database and functions associated with geospatial data. Furthermore, we understood the primary differences between Power BI dashboards and real-time dashboards, enabling us to leverage them for our business use cases. Finally, we recognized the crucial role of Data Activator in completing the real-time experience.
What's next for Safety Sphere
We are planning to embed the visuals in the app, helping users to quickly set up with the solution. We also plan to integrate different ML models into the solution to further improve it and provide proof in unfortunate situations, such as capturing images from the user’s mobile phone and identifying and recognizing the person captured by the user’s camera. This will help us to further enhance the solution.
Log in or sign up for Devpost to join the conversation.