Suchdateien (Schlüssel) in s3 Eimer dauert längere Zeit

Ich habe 10000 Dateien in einem s3 bucket.Wenn ich alle Dateien auflisten, dauert es 10 Minuten. Ich möchte ein Suchmodul mit BOTO (Python-Schnittstelle zu AWS) implementieren, das Dateien basierend auf Benutzereingaben durchsucht. Gibt es eine Art, wie ich bestimmte Dateien mit weniger Zeit suchen kann?

2 Solutions collect form web for “Suchdateien (Schlüssel) in s3 Eimer dauert längere Zeit”

AFAIK das Beste, was du tun kannst, filtern die Ergebnisse auf der Grundlage eines Dateivorfos mit dem prefix namens Parameter .

Es gibt zwei Möglichkeiten, die Suche zu implementieren …

Fall 1 . Wie von john vorgeschlagen – können Sie das Präfix der s3-Schlüsseldatei in Ihrer Listenmethode angeben. Das wird das Ergebnis von S3-Schlüsseldateien zurückgeben, die mit dem angegebenen Präfix beginnen.

Fall 2. Wenn du die S3-Taste durchsuchen möchtest, die mit einem bestimmten Suffix enden oder wir eine Erweiterung sagen können, kannst du das Suffix im Trennzeichen angeben. Denken Sie daran, es wird Ihnen korrektes Ergebnis nur in dem Fall geben, wenn Sie Suffix für die Suche geben, die mit diesem String endet. Else Trennzeichen wird für Pfad Trennzeichen verwendet.

Ich schlage vor, Sie Fall 1 aber wenn Sie schneller suchen mit bestimmten Suffix dann können Sie versuchen, Fall 2

  • Vergleich der Startzeit der EC2-Instanz und der aktuellen Zeit in Python
  • Boto "Get Byte Bereich" gibt mehr als erwartet zurück
  • Django wird keine statischen Dateien von Amazon S3 mit benutzerdefinierter Domain bedienen
  • Mit boto, wie kann ich eine neu erzeugte EC2-Instanz benennen?
  • So speichern Sie S3-Objekt in einer Datei mit boto3
  • Amazon S3-Upload fehlschlägt mit boto + Python
  • Holen Sie alle Elemente von DynamoDB mit Abfrage ab?
  • Lesen Sie eine Datei Zeile für Zeile von S3 mit boto?
  • Gute Anmeldeinformationen Datei in der boto.cfg für Python
  • Wie man Metadaten auf einem Objekt in Amazon S3 ändert
  • Senden Sie Raw Email (mit Anhang) an mehrere Empfänger
  • Python ist die beste Programmiersprache der Welt.