https://softwarepatternslexicon.com/stream-processing/data-ingestion-patterns/data-partitioning/
Data Partitioning: Distributing Data for Scalability