01
Stage 1. User Login & Authentication
Process
The user logs into the Data Processing Application using their registered credentials.
Tools
Keycloak
Kubernetes
Implementation
The application sends the login request to Keycloak. Keycloak validates the user's identity and provides access to the appropriate application functions.
02
Stage 2. Data Upload
Process
The user uploads the required dataset for processing.
Tools
Kubernetes
Implementation
The application receives the uploaded data and validates the file format, required fields, and basic data structure before processing.
03
Stage 3. Data Validation & Preparation
Process
The application checks and prepares the uploaded data for processing.
Tools
Apache Spark
Kubernetes
Implementation
The application identifies missing or invalid data, performs required cleaning and transformation, and prepares the dataset for processing.
04
Stage 4. Data Processing
Process
The application processes the prepared dataset according to the required processing rules.
Tools
Apache Spark
Python
Kubernetes
Implementation
The application runs distributed data processing jobs using Spark-based services running as containers in Kubernetes.
05
Stage 5. Data Analysis & Results
Process
The application analyzes the processed data and generates the required results.
Tools
Apache Spark
PostgreSQL
Implementation
The application performs the required calculations, stores the processed results in PostgreSQL, and presents the results to the user.
06
Stage 6. Report Generation
Process
The user selects the required results and generates a report.
Tools
Python
PostgreSQL
Implementation
The application retrieves the required information from PostgreSQL and generates the requested data processing report.
07
Stage 7. Processing Status & Error Handling
Process
The application displays the processing status and handles errors that occur during data processing.
Tools
Kubernetes
Implementation
The application tracks job states such as Pending, Processing, Completed, or Failed and displays relevant error information when a processing failure occurs.
08
Stage 8. Application Completion & Logout
Process
The user reviews the final results and logs out of the application.
Tools
PostgreSQL
Keycloak
Kubernetes
Implementation
The application retrieves the required results from PostgreSQL and displays them to the user. After completion, the user's session is terminated through Keycloak.