Czym jest Amazon S3?

19 maja 2021

Amazon Simple Storage Service (Amazon S3) stanowi swego rodzaju magazyn danych. Został zaprojektowany w taki sposób, aby ułatwić programistom przetwarzanie w skali internetowej.

Amazon S3 posiada prosty interfejs usług sieciowych, który możesz wykorzystywać do przechowywania i pobierania dowolnej ilości danych, w dowolnym czasie i z dowolnego miejsca w sieci. Daje każdemu programiście odpowiedni dostęp do tej samej wysoce skalowalnej, niezawodnej, szybkiej i niedrogiej infrastruktury służącej do przechowywania danych, której Amazon używa do obsługi i prowadzenia własnej i globalnej sieci witryn internetowych. Usługa ta ma na celu maksymalizację korzyści i przekazania tych benefitów programistom.

 

Zalety z korzystania z Amazon S3

Amazon S3 został celowo zbudowany z minimalnym zestawem funkcji, który koncentruje się na prostocie i odporności. Poniżej znajdują się wybrane zalety korzystania z Amazon S3:

  • tworzenie bucketów – utwórz i nazwij bucket, który przechowuje dane. Buckety stanowią podstawowe kontenery do przechowywania danych w Amazon S3;
  • przechowywanie danych – przechowuj nieskończoną ilość danych w buckecie. Prześlij dowolną liczbę obiektów do bucketu Amazon S3. Każdy z obiektów może zawierać nawet do 5 TB danych. Każdy obiekt jest przechowywany i pobierany przy wykorzystaniu unikalnego klucza przypisanego przez programistę;
  • pobieranie danych – pobierz swoje dane lub umożliw to innym. Pobieraj dane w dowolnym momencie lub pozwól innym robić to samo;
  • uprawnienia – udzielaj lub odmawiaj dostępu innym osobom, które chcą przesłać lub pobrać dane do Twojego bucketu Amazon S3. Przyznaj uprawnienia do przesyłania i pobierania trzem typom użytkowników. Mechanizmy uwierzytelniania mogą pomóc chronić dane przed nieautoryzowanym dostępem;
  • standardowe interfejsy – korzystaj z opartych na standardach interfejsów REST i SOAP zaprojektowanych do pracy z dowolnym zestawem narzędzi programistycznych do internetu.

 

Amazon S3 – pojęcie klucza i terminologia

Bucket

Bucket jest pojemnikiem na obiekty przechowywane w Amazon S3. Każdy z obiektów jest przechowywany w określonym buckecie. Na przykład, jeśli obiekt o nazwie photos/puppy.jpg jest przechowywany w buckecie awsexamplebucket1 w zachodnich stanach USA (Oregon), to w takim razie można go adresować za pomocą adresu URL https://awsexamplebucket1.s3.us-west-2.amazonaws.com/photos/puppy.jpg.

Buckety służą kilku określonym celom:

  • organizują przestrzeń nazw Amazon S3 na najwyższym poziomie;
  • identyfikują konto odpowiedzialne za opłaty za przechowywanie i transfer danych;
  • odgrywają rolę w kontroli dostępu;
  • służą jako jednostka agregacji do raportowania użycia.

Możesz skonfigurować zasobniki w taki sposób, aby były tworzone w określonym Regionie AWS. Możesz także skonfigurować bucket tak, aby za każdym razem, gdy zostanie do niego dodany obiekt, Amazon S3 generuje unikalny identyfikator wersji i przypisuje go do obiektu.

Obiekty

Obiekty są podstawowymi jednostkami przechowywanymi w Amazon S3. Obiekty składają się z danych opisowych i metadanych. Część danych jest nieprzejrzysta dla Amazon S3. Metadane stanowią zestaw par nazwa-wartość, które opisują obiekt. Obejmują one niektóre domyślne metadane, takie jak data ostatniej modyfikacji i standardowe metadane HTTP jak Content-Type. Możesz również określić niestandardowe metadane podczas przechowywania obiektu.

Obiekt jest jednoznacznie identyfikowany w zasobniku za pomocą klucza (nazwy) i identyfikatora wersji.

Klucze

Klucz stanowi unikalny identyfikator dla obiektu w obrębie bucketu. Każdy obiekt w buckecie posiada dokładnie jeden klucz. Połączenie bucketu, klucza i identyfikatora jednoznacznie utożsamia każdy obiekt. Dlatego też możesz myśleć o Amazon S3 jako o podstawowej mapie danych pomiędzy „bucketem + kluczem + wersją” i obiektem samym w sobie. Każdy obiekt w Amazon S3 może być indywidualnie adresowany poprzez połączenie punktu końcowego, nazwy zasobnika, klucza i ewentualnie wersji. Na przykład w adresie URL https://doc.s3.amazonaws.com/2006-03-01/AmazonS3.wsdl, "doc" jest nazwą zasobnika, a "2006-03-01/AmazonS3.wsdl" klucza.

Regiony

Możesz wybrać region geograficzny, w którym Amazon S3 będzie przechowywał buckety, które tworzysz. Możesz również wybrać region w celu zoptymalizowania opóźnienia, zminimalizowania kosztów lub zaadresowania wymagań prawnych. Obiekty przechowywane w danym regionie nigdy nie opuszczają jego obrębu, chyba że Ty wyraźnie przeniesiesz je do innego regionu. Na przykład obiekty przechowywane w regionie Europy (Irlandia) nigdy go nie opuszczają.

Opłaty za korzystanie z Amazon S3

Ceny dla Amazon S3 zostały zaprojektowane tak, abyś nie musiał planować wymagań dotyczących pamięci Twojej aplikacji. Większość dostawców pamięci masowej zmusza Cię do zakupu z góry określonej ilości pamięci masowej i przepustowości sieciowej: jeśli przekroczysz tę pojemność, usługa zostanie wyłączona lub zostaną naliczone wysokie opłaty za nadwyżkę. Jeśli nie przekroczysz tej pojemności, zapłacisz tak, jakbyś wykorzystał wszystko.

Z kolei Amazon S3 nalicza opłaty tylko za to, czego faktycznie używasz, bez ukrytych kosztów i dodatkowych opłat. To gwarantuje programistom usługę o zmiennym koszcie, która może rozwijać się wraz z ich działalnością, jednocześnie ciesząc się przewagą kosztową infrastruktury AWS.

Zanim zaczniesz przechowywać cokolwiek w usłudze Amazon S3, musisz zarejestrować się w usłudze i podać metodę płatności, która jest naliczana na koniec każdego miesiąca. Nie ma żadnych opłat konfiguracyjnych w celu rozpoczęcia korzystania z usługi. Pod koniec miesiąca Twoja metoda płatności jest automatycznie naliczana za zużycie w danym miesiącu.

Case Studies
Referencje

Bardzo sprawny kontakt z pracownikami Hostersi pozwolił nam pomyślną realizację naszego projektu i osiągnięcie założonych celów biznesowych. Jesteśmy pełni uznania dla kompetencji specjalistów Hostersi i jakości świadczonych przez nich usług.

Beata Kaczor
Dyrektor Zarządzający
W skrócie o nas
Specjalizujemy się w dostarczaniu rozwiązań IT w obszarach projektowania infrastruktury serwerowej, wdrażania chmury obliczeniowej, opieki administracyjnej i bezpieczeństwa danych.