Repository navigation
GateGuard v4.0.2 - Assignment 4 Horizontal Sharding Release
Overview
This patch release finalizes Assignment 4 delivery quality by keeping the 3-shard architecture stable and improving documentation, demo readiness, and release hygiene.
What is included
- Horizontal sharding across 3 PostgreSQL shard nodes using Docker Compose.
- Deterministic hash routing rule based on memberid % 3.
- Full 4-step migration pipeline for shard creation, migration, verification, and indexing.
- Module A proof notebook with stepwise validation of routing and integrity.
- Module B shard-aware backend routing integrated into live service paths.
- Assignment 4 report and README updates for submission and demonstration clarity.
What is new in v4.0.2
- Expanded Assignment 4 documentation in README.md.
- Added Assignment 4 repository structure details in README.md.
- Added Assignment 4 branching strategy section and branch map context in README.md.
- Added Assignment 4 run and check-test guide in README.md.
- Switched Docker architecture image reference to a repository-hosted asset:
ss_docker_compose.png - Improved release hygiene by keeping selected generated PDFs out of repository tracking via .gitignore.
Core technical deliverables
- Docker orchestration: docker-compose.yml
- Module A migration script: migrate_to_docker_shards.py
- Module A SQL pipeline: schema
- Module A notebook proof: test_sharding.ipynb
- JS shard router: shardRouter.js
- Shard-aware visit service: personVisit.service.js
- Assignment 4 report source: GateGuard_Assignment4_Report.tex
Validation outcomes
- Balanced member distribution: 1666, 1667, 1667
- Balanced personvisit distribution: 16664, 16673, 16677
- Zero overlap across shard member tables
- O(1) member-scoped routing path
- Scatter-gather global query path with documented trade-offs
Notes
- Assignment 4 selected generated PDFs are intentionally kept local and excluded from repository tracking.
- Recommended environment: Docker Desktop, Python 3.10+, Node.js 18+, source PostgreSQL dataset ready.
- This release is a patch-level refinement release over v4.0.1 with no architectural rollback.
Quick run flow
- Start shard containers from docker-compose.yml.
- Run migration via migrate_to_docker_shards.py.
- Execute test_sharding.ipynb and confirm PASS checkpoints.
- Start Module B backend and validate shard routing behavior through shardRouter.js and personVisit.service.js.