Ograniczenie S3 do obiektów w wiadrze

85

Czy ktoś wie, czy istnieje ograniczenie liczby obiektów, które mogę umieścić w wiadrze S3? czy mogę umieścić milion, 10 milionów itd. w jednym wiadrze?

Iloraz
źródło
1
Dlaczego nie wrzucić miliona lub 10 milionów i się dowiedzieć?
PurplePilot
27
10 000 żądań po 0,01 USD może być drogie, aby znaleźć zewnętrzne limity. Dzięki za cytat poniżej
Quotient
1
Jego 20000 za 0,01 USD teraz
Petah

Odpowiedzi:

91

Według Amazon:

Zapisuj, odczytuj i usuwaj obiekty zawierające od 0 bajtów do 5 terabajtów danych każdy. Liczba obiektów, które możesz przechowywać jest nieograniczona.

Źródło: http://aws.amazon.com/s3/details/ stan na 3 września 2015 r.

PurplePilot
źródło
3
Uwaga: 5 GB to maksimum dla każdego PUT. Jeśli chcesz przesłać obiekt o pojemności 5 TB, musisz włączyć przesyłanie wieloczęściowe .
whiteshooz,
Maksymalny rozmiar pliku to 5 TB, ale można również przechowywać obiekty o rozmiarze 0 bajtów . Źródło: P: Ile danych mogę przechowywać w Amazon S3?
Norbert
17

Wygląda na to, że limit się zmienił. Możesz przechowywać 5 TB dla jednego obiektu.

Całkowita objętość danych i liczba obiektów, które możesz przechowywać, są nieograniczone. Poszczególne obiekty Amazon S3 mogą mieć rozmiar od minimum 0 bajtów do maksymalnie 5 terabajtów. Największy obiekt, który można przesłać w jednym PUT, ma 5 gigabajtów. W przypadku obiektów większych niż 100 megabajtów klienci powinni rozważyć użycie funkcji przesyłania wieloczęściowego.

http://aws.amazon.com/s3/faqs/#How_much_data_can_I_store

Ryan White
źródło
11
  • Nie ma ograniczenia liczby obiektów na wiadro.
  • Istnieje limit 100 wiader na konto (jeśli potrzebujesz więcej, musisz poprosić o amazon).
  • Nie ma spadku wydajności, nawet jeśli przechowujesz miliony obiektów w jednym zasobniku.

Z dokumentów,

Nie ma ograniczeń co do liczby obiektów, które można przechowywać w zasobniku i nie ma różnicy w wydajności, niezależnie od tego, czy używasz wielu zasobników, czy tylko kilku. Możesz przechowywać wszystkie swoje obiekty w jednym zasobniku lub możesz je uporządkować w kilku zasobnikach.

stan na sierpień 2016 r

rahimv
źródło
3
Prefiks organizacji / klucza obiektów w zasobniku może mieć znaczenie, gdy pracujesz z milionami obiektów. Zobacz aws.amazon.com/blogs/aws/…
Trenton
W dokumencie docs.aws.amazon.com/AmazonS3/latest/dev/ ... jest napisane „Nie musisz już losowo ustawiać nazw prefiksów w celu zwiększenia wydajności”. Ale z dokumentacji nie jest jasne, w jaki sposób S3 wykonuje indeksowanie (haszowanie? B-drzew?) I czy może skutecznie wyświetlać obiekty pasujące do prefiksu. Następująca nieaktualna dokumentacja zawiera kilka wskazówek: aws.amazon.com/blogs/aws/ ...
Don Smith
7

Chociaż możesz przechowywać nieograniczoną liczbę plików / obiektów w jednym zasobniku, kiedy przejdziesz do listy „katalogu” w zasobniku, domyślnie dostaniesz tylko pierwsze 1000 plików / obiektów w tym zasobniku. Aby uzyskać dostęp do wszystkich plików w dużym „katalogu” takim jak ten, musisz wykonać wiele wywołań ich interfejsu API.

Dave Strickler
źródło
2

Nie ma ograniczeń co do liczby obiektów, które możesz przechowywać w swoim segmencie S3. AWS twierdzi, że ma nieograniczoną przestrzeń dyskową. Istnieją jednak pewne ograniczenia -

  1. Domyślnie klienci mogą udostępnić do 100 zasobników na konto AWS. Możesz jednak zwiększyć swój limit zasobnika Amazon S3, odwiedzając AWS Service Limits.
  2. Obiekt może mieć od 0 bajtów do 5 TB.
  3. Największy obiekt, który można przesłać w jednym PUT, ma 5 gigabajtów
  4. W przypadku obiektów większych niż 100 megabajtów klienci powinni rozważyć użycie funkcji przesyłania wieloczęściowego.

Biorąc to pod uwagę, jeśli naprawdę masz dużo obiektów do przechowywania w zasobniku S3, rozważ losowanie prefiksu nazwy obiektu, aby poprawić wydajność.

Gdy obciążenie jest mieszanką typów żądań, wprowadź pewną losowość do nazw kluczy, dodając ciąg skrótu jako prefiks do nazwy klucza. Poprzez wprowadzenie losowości do nazw kluczy, obciążenie we / wy zostanie rozłożone na wiele partycji indeksu. Na przykład możesz obliczyć skrót MD5 sekwencji znaków, którą planujesz przypisać jako klucz i dodać 3 lub 4 znaki z skrótu jako przedrostek do nazwy klucza.

Więcej szczegółów - https://aws.amazon.com/premiumsupport/knowledge-center/s3-bucket-performance-improve/

- stan na czerwiec 2018 r

Aniket Thakur
źródło
0

„Możesz przechowywać dowolną liczbę obiektów w zasobniku oraz zapisywać, odczytywać i usuwać obiekty w swoim zasobniku. Obiekty mogą mieć rozmiar do 5 terabajtów”.

z http://aws.amazon.com/s3/details/ (od 4 marca 2015)

Joga
źródło
-1

@ Acyra - wydajność dostarczania obiektu z jednego zasobnika zależałaby w dużym stopniu od nazw obiektów w nim.

Gdyby nazwy plików były oddzielone losowymi znakami, ich fizyczne lokalizacje byłyby dalej rozproszone na sprzęcie AWS, ale jeśli nazwałbyś wszystko „common-x.jpg”, „common-y.jpg”, wówczas te obiekty będą przechowywane razem.

Może to spowolnić dostarczanie plików, jeśli zażądasz ich jednocześnie, ale nie na tyle, aby Cię martwić, tym większe ryzyko wiąże się z utratą danych lub awarią, ponieważ te obiekty są przechowywane razem, zostaną utracone lub niedostępne razem.

Phillip Rodgers
źródło
Czy masz jakieś odniesienie do tego, czy jest to zgadywanie? Mogę zgadnąć, że obiekty S3 są podzielone na fragmenty / zahaszowane według nazwy pliku, lub mogę zgadnąć, że jest używane coś bardziej losowego, jak sha1 / md5 lub coś takiego ... ale bez materiału źródłowego, którego właściwie nie wiem .
fazy