Mengunggah dan mengambil file

Pengantar AWS Boto di Python

Maksim Pecherskiy

Data engineer

Bucket dan objek

Bucket dengan objek

Pengantar AWS Boto di Python

Sebuah Bucket

Bucket S3

  • Bucket memiliki nama
  • Nama berupa string
  • Unik di seluruh S3
  • Berisi banyak objek

Sebuah Objek

Objek S3

  • Objek memiliki key
  • Nama adalah path penuh dari root bucket
  • Key unik dalam bucket
  • Hanya ada di satu bucket induk
Pengantar AWS Boto di Python

Membuat client

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

Komunikasi client dengan S3

Pengantar AWS Boto di Python

Mengunggah file

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

Mengunggah objek ke bucket

Pengantar AWS Boto di Python

Mengunggah file

File di S3

Pengantar AWS Boto di Python

Mengunggah lebih banyak objek

Mengunggah lebih banyak objek

Pengantar AWS Boto di Python

Melisting objek dalam bucket

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

print(response)

Respons list objects

Pengantar AWS Boto di Python

Melisting objek dalam bucket

Melisting objek dalam bucket

Pengantar AWS Boto di Python

Melisting objek dalam bucket

Melisting objek dalam bucket

Pengantar AWS Boto di Python

Melisting objek dalam bucket

Melisting objek dalam bucket

Pengantar AWS Boto di Python

Mengambil metadata objek

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

print(response)

Metode head object

Pengantar AWS Boto di Python

Mengambil metadata objek

Respons metadata objek

Pengantar AWS Boto di Python

Mengunduh file

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

Mengunduh file

Pengantar AWS Boto di Python

Menghapus objek

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

Menghapus objek

Pengantar AWS Boto di Python

Ringkasan

  • Bucket seperti folder
  • Objek seperti file
  • boto3.client()
  • s3.upload_file()
  • s3.list_objects()
  • s3.head_object()
  • s3.download_file()
  • s3.delete_object()

Bucket

Pengantar AWS Boto di Python

Mari buat beberapa objek!

Pengantar AWS Boto di Python

Preparing Video For Download...