Jakie są najlepsze alternatywy dla Amazon S3? Jakie są wady i zalety?


Najlepsza odpowiedź

Sugerowałbym dwie alternatywy Opensource dla S3, ale zanim przejdę, pamiętaj, że S3 jest znacznie zaawansowany i wszystkie inne alternatywy próbują dogonić S3 za pomocą kompatybilnych interfejsów API, a co nie, jeśli chodzi o pokonanie S3, nikt nie jest blisko.

  1. Openstack Swift: Swift to wysoce dostępny, rozproszony, ostatecznie spójny magazyn obiektów / obiektów blob. Organizacje mogą używać Swift do wydajnego, bezpiecznego i taniego przechowywania dużej ilości danych. Obiekty i pliki są zapisywane na wielu dyskach rozmieszczonych na serwerach w centrum danych, a oprogramowanie OpenStack jest odpowiedzialne za zapewnienie replikacji danych i integralności w całym klastrze. Klastry pamięci masowej skalują się w poziomie, po prostu dodając nowe serwery. W przypadku awarii serwera lub dysku twardego OpenStack replikuje swoją zawartość z innych aktywnych węzłów do nowych lokalizacji w klastrze. Ponieważ OpenStack używa logiki oprogramowania, aby zapewnić replikację i dystrybucję danych na różnych urządzeniach, można używać niedrogich dysków twardych i serwerów.
  2. Ceph : It jest opartą na obiektowej pamięci masowej, otwartą platformą do przechowywania danych, która przechowuje dane w pojedynczym rozproszonym klastrze komputerowym i zapewnia interfejsy do przechowywania na poziomie obiektów, bloków i plików.Ceph dąży przede wszystkim do pełnej dystrybucji bez SPOF, skalowalnej do poziomu eksabajtów, i swobodnie dostępne

Ponieważ oba są typu Open source, możesz wdrożyć je w domu, nie martwiąc się o kradzież danych z Amazon (czego nigdy nie robi).

Wady:

Konfiguracja Swift i Ceph jest uciążliwa, a do tego potrzeba dedykowanych inżynierów . Utrzymywanie ich to także ogromny bałagan, a na dłuższą metę, jeśli nie zdobędziesz dobrego doświadczenia, będziesz miał problemy. Nie jest zalecane wybieranie żadnej z tych opcji, chyba że masz dużo kłamstw nadmiarowych serwerów lub konfigurujesz duży magazyn w domu, który skaluje się do około 50-500 petabajtów.

PS: Jestem Openstack programista, intensywnie pracował nad Swift i Ceph, a moja codzienna praca polega na naprawianiu błędów i utrzymywaniu klastra Openstack i Ceph.

Odpowiedź

Twierdzę, że nie ma ” najlepsza alternatywa dla S3.

Jeśli wszystko, czego potrzebujesz, to magazyn obiektowy, to z pewnością istnieje wiele alternatyw. Ale S3 oferuje funkcjonalność (taką jak powiadomienia i możliwość uruchamiania funkcji Lambda przy zdarzeniach put / get / overwrite i innych), które w tym momencie nie są wspólne z żadną z alternatyw.

Na przykład w W ostatnim projekcie zaimplementowaliśmy mechanizm, który po otrzymaniu pliku przechowywanego w S3, odpala funkcję Lambda, która wyodrębnia metadane pliku i przechowuje je w DynamoDB. W międzyczasie strumień DynamoDB uruchomiłby wówczas inną funkcję Lambda. Ta ostatnia funkcja czyta metadane z DynamoDB i wykonuje różne zadania, w zależności od typu pliku oryginalnego w S3. Na przykład, jeśli plik źródłowy był plikiem wideo, Elastic Transcoder zostałby wywołany w celu transkodowania pliku; jeśli pierwotnym plikiem był obraz, wywołany zostałby skrypt gm (GraphicsMagick for Node.js) w celu wyodrębnienia danych EXIF, utworzenia miniatur i zaktualizowania metadanych DynamoDB. Pozwoliło to na bezserwerową infrastrukturę do prostego zarządzania treścią.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *