Pengaturan konfigurasi opsional untuk D ynamoDBMapper - Amazon DynamoDB

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

Pengaturan konfigurasi opsional untuk D ynamoDBMapper

Saat Anda membuat instans DynamoDBMapper, instans tersebut memiliki perilaku default tertentu; Anda dapat menimpa pengaturan default ini menggunakan kelas DynamoDBMapperConfig.

Cuplikan kode berikut akan membuat DynamoDBMapper dengan pengaturan kustom:

AmazonDynamoDB client = AmazonDynamoDBClientBuilder.standard().build(); DynamoDBMapperConfig mapperConfig = DynamoDBMapperConfig.builder() .withSaveBehavior(DynamoDBMapperConfig.SaveBehavior.CLOBBER) .withConsistentReads(DynamoDBMapperConfig.ConsistentReads.CONSISTENT) .withTableNameOverride(null) .withPaginationLoadingStrategy(DynamoDBMapperConfig.PaginationLoadingStrategy.EAGER_LOADING) .build(); DynamoDBMapper mapper = new DynamoDBMapper(client, mapperConfig);

Untuk informasi selengkapnya, lihat D ynamoDBMapper Config di Referensi.AWS SDK for Java API

Anda dapat menggunakan argumen berikut untuk instans DynamoDBMapperConfig:

  • Nilai enumerasi DynamoDBMapperConfig.ConsistentReads:

    • EVENTUAL—instans pemeta menggunakan permintaan bacaan akhir konsisten.

    • CONSISTENT—instans pemeta menggunakan permintaan bacaan sangat konsisten. Anda dapat menggunakan pengaturan opsional ini dengan operasi load, query, atau scan. Bacaan sangat konsisten memiliki implikasi terhadap performa dan penagihan; lihat halaman detail produk DynamoDB untuk informasi selengkapnya.

    Jika Anda tidak menentukan pengaturan konsistensi baca untuk instans pemeta Anda, pengaturan defaultnya adalah EVENTUAL.

    catatan

    Nilai ini diterapkan dalamquery,querypage,load, dan batch load operasi DynamoDBMapper.

  • Nilai enumerasi DynamoDBMapperConfig.PaginationLoadingStrategy—Mengontrol cara instans pemeta memproses daftar data yang diberi nomor halaman, seperti hasil dari query atau scan:

    • LAZY_LOADING—instans pemeta memuat data jika memungkinkan, dan menyimpan semua hasil yang dimuat dalam memori.

    • EAGER_LOADING—instans pemeta memuat data segera setelah daftar diinisialisasi.

    • ITERATION_ONLY—Anda hanya dapat menggunakan Iterator untuk membaca dari daftar. Selama iterasi, daftar akan menghapus semua hasil lama sebelum memuat halaman berikutnya, sehingga daftar akan menyimpan maksimal satu halaman dari hasil yang dimuat dalam memori. Hal ini juga berarti bahwa daftar hanya dapat diiterasi satu kali. Strategi ini direkomendasikan saat menangani item besar, guna mengurangi overhead memori.

    Jika Anda tidak menentukan strategi pemuatan pemberian nomor halaman untuk instans pemeta Anda, pengaturan defaultnya adalah LAZY_LOADING.

  • Nilai enumerasi DynamoDBMapperConfig.SaveBehavior - Menentukan cara instans pemeta akan menangani atribut selama operasi simpan:

    • UPDATE—selama operasi simpan, semua atribut model diperbarui, dan atribut yang tidak dibuat modelnya tidak terpengaruh. Jenis angka primitif (byte, int, long) diatur ke 0. Jenis objek diatur ke null.

    • CLOBBER—menghapus dan mengganti semua atribut, termasuk yang tidak dibuat modelnya, selama operasi simpan. Hal ini dilakukan dengan menghapus item lalu membuatnya kembali. Batasan bidang dengan versi juga diabaikan.

    Jika Anda tidak menentukan perilaku simpan untuk instans pemeta, pengaturan defaultnya adalah UPDATE.

    catatan

    D operasi ynamoDBMapper transaksional tidak mendukung DynamoDBMapperConfig.SaveBehavior enumerasi.

  • Objek DynamoDBMapperConfig.TableNameOverride—Menginstruksikan instans pemeta untuk mengabaikan nama tabel yang ditentukan oleh anotasi DynamoDBTable kelas, dan menggunakan nama tabel lain yang Anda berikan. Ini berguna saat mempartisi data Anda menjadi beberapa tabel saat runtime.

Anda dapat mengganti objek konfigurasi default untuk DynamoDBMapper per operasi, jika diperlukan.