This project implements a distributed MapReduce system using Go and gRPC.
- Distributed processing with master and worker nodes
- Fault tolerance with task reassignment(WIP)
- Configurable through command-line flags
- Supports custom map and reduce functions
- Go 1.16+
- gRPC
cmd/: Command-line applicationsmaster/: Master node implementationworker/: Worker node implementationrpc/: Protocol buffer definitions and generated gRPC code
Contributions are welcome. Please fork the repository and submit a pull request with your changes.
- Add tests.
- Code refactoring
- Properly close worker connections.
- Fault tolerance improvements.