Menyimpan dan Mengambil Data dengan DynamoDB - AWS Mobile SDK

AWS Mobile SDK for Xamarin sekarang disertakan dalam AWS SDK for .NET. Panduan ini menjadi referensi versi yang diarsipkan dari Mobile SDK for Xamarin.

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Menyimpan dan Mengambil Data dengan DynamoDB

Amazon DynamoDB adalah layanan basis data yang cepat, sangat dapat diskalakan, sangat tersedia, hemat biaya, dan bukan basis data relasional. DynamoDB menghilangkan keterbatasan skalabilitas tradisional pada penyimpanan data sekaligus mempertahankan performa latensi rendah dan dapat diprediksi.

Tutorial di bawah ini menjelaskan cara untuk mengintegrasikan Model Persistensi Objek DynamoDB dengan aplikasi Anda, yang menyimpan objek di DynamoDB.

Penyiapan Proyek

Prasyarat

Anda harus menyelesaikan semua instruksi yang ada di Menyiapkan AWS Mobile SDK for .NET and Xamarin sebelum memulai tutorial ini.

Membuat Tabel DynamoDB

Sebelum Anda dapat melakukan baca dan tulis data ke basis data DynamoDB, Anda harus membuat tabel. Saat membuat tabel Anda harus menentukan kunci primer. Kunci primer terdiri dari atribut hash dan atribut rentang opsional. Untuk informasi selengkapnya tentang cara atribut primer dan rentang digunakan, lihat Bekerja Dengan Tabel.

  1. Buka Konsol DynamoDB dan klik Buat Tabel. Penuntun Buat Tabel akan muncul.

  2. Tentukan nama tabel Anda, tipe kunci primer (Hash), dan nama atribut hash (“Id”) seperti yang ditunjukkan di bawah ini, dan kemudian klik Lanjutkan:

    DynamoDB table creation interface showing table name, primary key type, and hash attribute configuration.
  3. Biarkan bidang edit di layar berikutnya kosong dan klik Lanjutkan.

  4. Setujui nilai default untuk Unit Kapasitas Baca dan Unit Kapasitas Tulis dan klik Lanjutkan.

  5. Pada layar berikutnya, masukkan alamat email Anda di kotak teks Kirim notifikasi ke: dan klik Lanjutkan. Layar tinjauan akan muncul.

  6. Klik Buat. Mungkin diperlukan waktu beberapa menit hingga tabel Anda selesai dibuat.

Mengatur Izin untuk DynamoDB

Agar kolam identitas Anda dapat mengakses Amazon DynamoDB, Anda harus mengubah peran kolam identitas tersebut.

  1. Arahkan ke Konsol Identity and Access Management dan klik Peran di panel sebelah kiri. Cari nama kolam identitas Anda - dua peran akan dicantumkan, satu untuk pengguna yang tidak di-autentikasi dan satu untuk pengguna yang di-autentikasi.

  2. Klik peran untuk pengguna yang tidak di-autentikasi (hal ini akan menambahkan “unauth” pada nama kolam identitas Anda) dan klik Buat Kebijakan Peran.

  3. Pilih Generator Kebijakan dan klik Pilih.

  4. Pada Edit Izin, masukkan pengaturan yang ditunjukkan pada citra berikut. Amazon Resource Name (ARN) dari tabel DynamoDB terlihat seperti arn:aws:dynamodb:us-west-2:123456789012:table/Books dan terdiri dari wilayah di mana tabel berada, nomor akun AWS pemilik, dan nama tabel dalam format table/Books. Untuk informasi selengkapnya tentang menentukan ARN, lihat Nama Sumber Daya Amazon untuk DynamoDB.

    Edit Permissions page for Amazon DynamoDB with Allow effect and ARN input field.
  5. Klik Tambah Pernyataan, dan kemudian klik Langkah Selanjutnya. Penuntun akan menampilkan konfigurasi yang dihasilkan.

  6. Klik Terapkan Kebijakan.

TambahkanNuGetPaket untuk DynamoDB untuk Proyek Anda

Ikuti Langkah 4 dari petunjuk diMenyiapkan AWS Mobile SDK for .NET and Xamarinuntuk menambahkan DynamoDBNuGetpaket untuk proyek Anda.

InisialisasiAmazonDynamoDBClient

Berikan penyedia kredensial Amazon Cognito Anda yang sudah diinisialisasi dan wilayah Anda ke konstruktor AmazonDynamoDB, kemudian berikan klien ke DynamoDBContext:

var client = new AmazonDynamoDBClient(credentials,region); DynamoDBContext context = new DynamoDBContext(client);

Membuat Kelas

Untuk menulis baris ke tabel, tentukan kelas untuk menyimpan data baris Anda. Kelas tersebut juga harus berisi properti yang menyimpan data atribut untuk baris dan akan dipetakan ke Tabel DynamoDB yang dibuat di konsol tersebut. Deklarasi kelas berikut menggambarkan kelas semacam itu:

[DynamoDBTable("Books")] public class Book { [DynamoDBHashKey] // Hash key. public int Id { get; set; } public string Title { get; set; } public string ISBN { get; set; } public int Price { get; set; } public string PageCount { get; set; } public string Author{ get; set; } }

Menyimpan Item

Untuk menyimpan item, pertama buatlah objek:

Book songOfIceAndFire = new Book() { Id=1, Title="Game Of Thrones", ISBN="978-0553593716", Price=4, PageCount="819", Author="GRRM" };

Kemudian simpan:

context.Save(songOfIceAndFire);

Untuk memperbarui baris, modifikasi instans dari kelas DDTableRow dan panggil AWSDynamoObjectMapper.save() seperti yang ditunjukkan di atas.

Mengambil Item

Mengambil item menggunakan kunci primer:

Book retrievedBook = context.Load<Book>(1);

Memperbarui Item

Untuk memperbarui item:

Book retrievedBook = context.Load<Book>(1); retrievedBook.ISBN = "978-0553593716"; context.Save(retrievedBook);

Menghapus Item

Untuk menghapus item:

Book retrievedBook = context.Load<Book>(1); context.Delete(retrievedBook);

Untuk informasi lebih lanjut tentang mengakses DynamoDB dari aplikasi Xamarin, lihat Amazon DynamoDB.