我需要在AWS S3中存储数百万个小型JSON对象(每个大约2,500个字节),并且我需要能够以三种不同方式检索它们:按时间戳或ID或通过MapReduce(Athena,EMR等)。对象键将按时间戳进行组织,因此通过时间戳范围检索对象将非常快捷。此外,共享相同时间戳(例如相同分钟)的对象可以连接成每行包含一个JSON对象的单个S3对象。结合提高了写入性能,并且与EMR和Athena也很好地配合。维护S3对象索引的最佳AWS服务?
但是,通过ID检索将不可能很慢。我还需要一种方法来执行批量查询:例如检索100,000个对象的时间戳(给出100,000个ID的列表)。
在这种情况下,哪种AWS服务可以提供索引S3内容的最佳方式?
DynamoDB无法在ID列表上查询:http://stackoverflow.com/questions/26980127/filtering-querying-by-the-contents-of-a-list-in-dynamodb –
我错过了“查询通过大量的ID列表“的一部分你的问题。也许ElasticSearch会为你工作?要么或者启动一台Aurora RDS服务器。 –
实际上,您的链接与查询嵌套列表有关,我不确定它应用于您的用例。如果您的ID是DynamoDB表的主键,则可以一次为100条记录(100个ID)执行'BatchGetItem'。 –