Welcome to the Coin Prediction King (βμ½μΈμμΈ‘μβ) Data Engineering repository! This repository manages all data-related pipelines, processing, and analytics for the Coin Mock Investment game, ensuring real-time data flow and efficient storage.
Coin Prediction King is a real-time cryptocurrency mock investment game where players predict market trends and compete based on their virtual portfolio performance.
- β‘ Real-time cryptocurrency data ingestion from Upbit WebSocket API
- π High-speed data processing using Kafka Streams
- π Efficient data storage with AWS Firehose, S3, and Spark analytics
- π‘ Advanced analytics pipeline with PySpark for performance insights
Upbit WebSocket β On-premises Kafka Streams β DynamoDB β
β AWS Lambda β API Gateway (Frontend Data Requests)
Frontend Post Requests Click Stream Data (json) β API Gateway β AWS Lambda β Kinesis Data Streams (parquet) β AWS S3
β on-premises Spark cluster β AWS S3 (json) β AWS Lambda β API Gateway β Frontend User Data Analysis (json)
- Data Ingestion: Kafka Streams (on-premises)
- Storage: AWS S3 (Parquet format), DynamoDB (legacy), Redis (planned migration)
- Processing: AWS Lambda + API Gateway
- Analytics: Apache Spark (PySpark)
βββ dataStreaming/ # Kafka Streaming scripts
βββ market_code/ # Market Code
βββ dataAnalysis/ # Spark-based data analytics scripts
βββ .gitignore # Files excluded from Git
βββ assets/
β βββ architecture.jpg
βββ README.md