存储流式数据——快速、廉价、可靠且适合批量消费
Store streaming data - fast, cheap, reliable and good for batch consumption
我有一个 (spring-boot) 网络服务,它为每个请求生成一个 json 响应。此响应在返回给查询用户的同时,还需要在某个地方存档(以便我们知道我们对用户的响应)。
该服务需要支持 4,000 requests/second。因此,我们需要快速的归档方法。存档数据稍后将由 map-reduce(批处理)作业使用。
我想知道使用哪种解决方案 - Kafka、S3 或任何其他解决方案。该服务已部署到 AWS。因此 AWS 内的解决方案是理想的。
要求如下:
- 写入速度至少应为 94K req/s。
- 写入应该是非阻塞的(这样服务响应时间不受影响)。
- 读取不需要很快,但应该适合 map-reduce 作业的消耗。
- 数据应该能够应对服务器崩溃等问题
- 应该不会太贵write/store再看吧
没有data retirement plan
,即数据需要一直保存到时间结束。
您推荐哪些解决方案?
您的某些要求(例如 "should not be too expensive")有点含糊。最后,您将需要自己根据所有具体要求评估服务。
考虑到这一条件,我会考虑将数据流式传输到 Kenesis,目标是将数据存档到 S3。我建议阅读 AWS 的 this blog post 以了解如何实现这一目标。
我有一个 (spring-boot) 网络服务,它为每个请求生成一个 json 响应。此响应在返回给查询用户的同时,还需要在某个地方存档(以便我们知道我们对用户的响应)。
该服务需要支持 4,000 requests/second。因此,我们需要快速的归档方法。存档数据稍后将由 map-reduce(批处理)作业使用。
我想知道使用哪种解决方案 - Kafka、S3 或任何其他解决方案。该服务已部署到 AWS。因此 AWS 内的解决方案是理想的。
要求如下:
- 写入速度至少应为 94K req/s。
- 写入应该是非阻塞的(这样服务响应时间不受影响)。
- 读取不需要很快,但应该适合 map-reduce 作业的消耗。
- 数据应该能够应对服务器崩溃等问题
- 应该不会太贵write/store再看吧
没有data retirement plan
,即数据需要一直保存到时间结束。
您推荐哪些解决方案?
您的某些要求(例如 "should not be too expensive")有点含糊。最后,您将需要自己根据所有具体要求评估服务。
考虑到这一条件,我会考虑将数据流式传输到 Kenesis,目标是将数据存档到 S3。我建议阅读 AWS 的 this blog post 以了解如何实现这一目标。