Operasi CRUD DynamoDB dan Query vs Scan

Menggunakan Data Store di AWS

Dunieski Otano

AWS Solutions Architect

Kesalahan yang mahal

  • Developer memakai Scan untuk mencari satu pengguna
  • Membaca seluruh tabel 1 juta item
  • Tagihan: $500 untuk satu pencarian
  • Query hanya sekitar $0,01

kesalahan

Menggunakan Data Store di AWS

Operasi CRUD di DynamoDB

  • PutItem: Buat atau ganti item
  • GetItem: Baca item via primary key
  • UpdateItem: Ubah atribut tertentu
  • DeleteItem: Hapus item
  • Query: Ambil item berdasarkan partition key (efisien)
  • Scan: Baca seluruh tabel (mahal)

opsi

Menggunakan Data Store di AWS

Query vs Scan: perbedaan utama

  • Query: Butuh partition key, baca item tertentu
    • Cepat, efisien, biaya rendah
  • Scan: Baca seluruh tabel, filter setelahnya
    • Lambat, mahal, hindari bila bisa
  • Aturan: Jika tahu key, gunakan Query. Jika tidak, tinjau desain.

scan

Menggunakan Data Store di AWS

Mencegah kondisi balapan dengan ekspresi kondisional

  • Masalah: Dua pengguna mengupdate item yang sama bersamaan
  • Solusi: Ekspresi kondisional
  • Contoh: Update hanya jika nilai saat ini sesuai harapan

adu cepat

Menggunakan Data Store di AWS

Ekspresi UpdateItem: memodifikasi atribut

  • SET: Tetapkan nilai atribut atau buat atribut baru
  • ADD: Naikkan/turunkan angka, tambah ke set
  • REMOVE: Hapus atribut dari item
  • DELETE: Hapus elemen dari set

ekspresi

Menggunakan Data Store di AWS

Paginasi dengan Query dan Scan

  • Masalah: Hasil besar melebihi batas 1MB
  • Solusi: Paginasi dengan LastEvaluatedKey
  • Limit: Atur item per halaman
  • Lanjutkan hingga LastEvaluatedKey bernilai null

paginasi

Menggunakan Data Store di AWS

Ayo berlatih!

Menggunakan Data Store di AWS

Preparing Video For Download...