Nahrávání a stahování souborů

Introduction to AWS Boto in Python

Maksim Pecherskiy

Data engineer

Buckety a objekty

Bucket s objekty

Introduction to AWS Boto in Python

Bucket

Buckety S3

  • Bucket má název
  • Název je řetězec
  • Jedinečný název v celém S3
  • Obsahuje mnoho objektů

Objekt

Objekty S3

  • Objekt má klíč
  • Název je úplná cesta od kořene bucketu
  • Jedinečný klíč v rámci bucketu
  • Může být pouze v jednom bucketu
Introduction to AWS Boto in Python

Vytvoření klienta

s3 = boto3.client(
  's3', 
  region_name='us-east-1', 
  aws_access_key_id=AWS_KEY_ID, 
  aws_secret_access_key=AWS_SECRET
)

Komunikace klienta se S3

Introduction to AWS Boto in Python

Nahrávání souborů

s3.upload_file(
  Filename='gid_requests_2019_01_01.csv', 
  Bucket='gid-requests', 
  Key='gid_requests_2019_01_01.csv')

Nahrávání objektu do bucketu

Introduction to AWS Boto in Python

Nahrávání souborů

Soubor v S3

Introduction to AWS Boto in Python

Nahrávání dalších objektů

Nahrávání dalších objektů

Introduction to AWS Boto in Python

Výpis objektů v bucketu

response = s3.list_objects(
  Bucket='gid-requests', 
  MaxKeys=2,
  Prefix='gid_requests_2019_')

print(response)

Odpověď metody list_objects

Introduction to AWS Boto in Python

Výpis objektů v bucketu

Výpis objektů v bucketu

Introduction to AWS Boto in Python

Výpis objektů v bucketu

Výpis objektů v bucketu

Introduction to AWS Boto in Python

Výpis objektů v bucketu

Výpis objektů v bucketu

Introduction to AWS Boto in Python

Získání metadat objektu

response = s3.head_object(
  Bucket='gid-requests', 
  Key='gid_requests_2018_12_30.csv')

print(response)

Metoda head_object

Introduction to AWS Boto in Python

Získání metadat objektu

Odpověď s metadaty objektu

Introduction to AWS Boto in Python

Stahování souborů

s3.download_file(
  Filename='gid_requests_downed.csv',
  Bucket='gid-requests', 
  Key='gid_requests_2018_12_30.csv')

Stahování souborů

Introduction to AWS Boto in Python

Mazání objektů

s3.delete_object(
  Bucket='gid-requests', 
  Key='gid_requests_2018_12_30.csv')

Smazání objektu

Introduction to AWS Boto in Python

Shrnutí

  • Buckety jsou jako složky
  • Objekty jsou jako soubory
  • boto3.client()
  • s3.upload_file()
  • s3.list_objects()
  • s3.head_object()
  • s3.download_file()
  • s3.delete_object()

Buckety

Introduction to AWS Boto in Python

Vytvoříme si objekty!

Introduction to AWS Boto in Python

Preparing Video For Download...