2017-09-23 1 views
-1

Je travaille sur un projet où j'ai besoin de télécharger des clés à partir du seau Amazon S3, qui contient plus d'un milliard d'objets. J'ai écrit un code en utilisant l'API Java V2 mais ça n'aide pas car il ne télécharge que 1000 clés à la fois. Cela prend des jours pour obtenir la liste de toutes les clés de ce seau. Yat-il un moyen plus rapide d'obtenir toute la liste des clés.Comment modifier la limite de 1000 API de AWS S3 V2 Java lors de la liste des objets [Pour Bucket ayant plus de 1 milliard d'objets]?

J'ai vérifié d'autres réponses liées à ce sujet et cela n'a pas aidé.

Merci

+0

Quel est le nom du nom de ces objets? – Kannaiyan

+0

Son étrange, les gens ont juste l'habitude de poser des questions de classement comme non utiles, même s'ils n'ont pas de réponse :-) – Kapil

Répondre

1

Nous avons eu le même problème avec un grand nombre d'objets.

Nous avons suivi un horodatage de modèle en 10 incréments dans leur nom d'objet. Il ressemble à ceci,

s3://bucket-name/timestamp/actualobject.extension 

Eg., 
s3://mys3bucket/1506237300/datafile001.json 

Lorsque vous itérer je threads parallèles en cours d'exécution pour chaque horodatage pour incréments de 15 minutes et tout a été lu très vite.

La solution consiste à trouver le motif que vous avez utilisé pour stocker ces objets et à lister les noms d'objets en fonction de ces motifs.

Espérons que ça aide.