CloudSteps: Personalized Steps Analytics on GCP

Methodology Code Link

1. Goal:

The goal of this project is to build a cloud-native, scalable, and efficient service for processing and analyzing Apple Health data, with a particular focus on steps data. The service generates personalized insights, such as weekly, monthly, and yearly averages of step counts, by utilizing various Google Cloud Platform (GCP) services for secure data processing and storage. The system provides users with a simple interface to upload their Apple Health data and retrieve meaningful Steps Analytics including Weekly, Monthly and Yearly trends and averages.

2. Methodology:

Methodology

Software Components

1. Flask Framework

Purpose: Provides a REST API for users to upload Apple Health files and retrieve analytics.

Advantages:

Disadvantages:

2. Google Cloud Storage

Purpose: Secure storage for raw Apple Health XML files.

Advantages:

Disadvantages:

3. Google Pub/Sub

Purpose: Facilitates asynchronous communication between components.

Advantages:

Disadvantages:

4. Google Cloud Functions

Purpose: Processes XML files to extract and structure step data.

Advantages:

Disadvantages:

5. Google BigQuery

Purpose: Stores and queries structured step data to generate trends and averages.

Advantages:

Disadvantages:

6. Google Kubernetes Engine (GKE)

Purpose: Hosts containerized Flask applications.

Advantages:

Disadvantages:

7. Docker

Purpose: Containerizes Flask and supporting services for consistent deployments.

Advantages:

Disadvantages:

8. Python Libraries

Hardware Components

1. User Devices

Purpose: Apple devices (e.g., iPhones or Apple Watches) for collecting and exporting Apple Health data, especially Steps.

4. Results:

Weekly, monthly, and yearly step averages and trends.

Methodology

5. Capabilities

6. Limitations

Contact Me

Feel free to connect with me and collaborate to explore your data!

Icon 1 Icon 2 Icon 3