Main Use Cases
Learn about the main use cases of SRM.
Apache Kafka has become an essential component of enterprise data pipelines and is used for tracking clickstream event data, collecting logs, gathering metrics, and being the enterprise data bus in a microservices based architectures. Kafka supports internal replication to support data availability within a cluster. However with Kafka based applications becoming critical, enterprises require that the data availability and durability guarantees span entire cluster and site failures.
Replication of data across clusters and sites is key for the following use cases:
- Disaster Recovery
- Common enterprise use cases for cross-cluster replication is for guaranteeing business continuity in the presence of cluster or data center-wide outages.
- Aggregation for Analytics
- Aggregate data from multiple streaming pipelines possibly across multiple data centers to run batch analytics jobs that provide a holistic view across the enterprise.
- Data Deployment after Analytics
- This is the opposite of the aggregation use case in which the data generated by the analytics application in one cluster (say the aggregate cluster) is broadcast to multiple clusters possibly across data centers for end user consumption.
- Due to performance or security reasons, data needs to be replicated between different environments to isolate access. In many deployments the ingestion cluster is isolated from the consumption clusters.
- Geo Proximity
- In geographically distributed access patterns where low latency is required, replication is used to move data closer to the access location.
- Cloud Migration
- As more enterprises have an on-premise and cloud presence, Kafka replication can be used to migrate data to the public or private cloud and back.
- Legal and Compliance
- Much like the isolation uses case, a policy driven replication is used to limit what data is accessible in a cluster to meet legal and compliance requirements.