Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Identifikasi sumber daya Anda yang tidak digunakan di DynamoDB
Bagian ini memberikan gambaran umum tentang cara mengevaluasi sumber daya yang Anda tidak terpakai secara berkala. Seiring berkembangnya persyaratan aplikasi Anda, Anda harus memastikan tidak ada sumber daya yang tidak terpakai dan berkontribusi terhadap biaya Amazon DynamoDB yang tidak diperlukan. Prosedur yang dijelaskan di bawah ini akan menggunakan CloudWatch metrik Amazon untuk mengidentifikasi sumber daya yang tidak digunakan dan akan membantu Anda mengidentifikasi dan mengambil tindakan terhadap sumber daya tersebut untuk mengurangi biaya.
Anda dapat memantau DynamoDB CloudWatch menggunakan, yang mengumpulkan dan memproses data mentah dari DynamoDB menjadi metrik yang dapat dibaca, mendekati real-time. Statistik ini disimpan selama jangka waktu tertentu, sehingga Anda dapat mengakses informasi historis untuk lebih memahami pemanfaatan Anda. Secara default, data metrik DynamoDB dikirim secara otomatis. CloudWatch Untuk informasi selengkapnya, lihat Apa itu Amazon CloudWatch? dan Retensi metrik di Panduan CloudWatch Pengguna Amazon.
Topik
- Cara mengidentifikasi sumber daya yang tidak terpakai
- Mengidentifikasi sumber daya tabel yang tidak terpakai
- Membersihkan sumber daya tabel yang tidak terpakai
- Mengidentifikasi sumber daya yang tidak digunakan GSI
- Membersihkan sumber daya yang tidak terpakai GSI
- Membersihkan tabel global yang tidak terpakai
- Membersihkan cadangan atau point-in-time pemulihan yang tidak digunakan () PITR
Cara mengidentifikasi sumber daya yang tidak terpakai
Untuk mengidentifikasi tabel atau indeks yang tidak digunakan, kita akan melihat CloudWatch metrik berikut selama periode 30 hari untuk memahami apakah ada pembacaan atau penulisan aktif di tabel atau pembacaan apa pun pada indeks sekunder global (): GSIs
ConsumedReadCapacityUnits
Jumlah unit kapasitas baca yang terpakai selama jangka waktu tertentu, sehingga Anda dapat melacak jumlah kapasitas terpakai yang telah Anda gunakan. Anda dapat mengambil total kapasitas baca yang digunakan untuk tabel dan semua indeks sekunder globalnya, atau untuk indeks sekunder global tertentu.
ConsumedWriteCapacityUnits
Jumlah unit kapasitas tulis yang terpakai selama jangka waktu tertentu, sehingga Anda dapat melacak jumlah kapasitas terpakai yang telah Anda gunakan. Anda dapat mengambil total kapasitas tulis yang digunakan untuk tabel dan semua indeks sekunder globalnya, atau untuk indeks sekunder global tertentu.
Mengidentifikasi sumber daya tabel yang tidak terpakai
Amazon CloudWatch adalah layanan pemantauan dan observabilitas yang menyediakan metrik tabel DynamoDB yang akan Anda gunakan untuk mengidentifikasi sumber daya yang tidak digunakan. CloudWatch metrik dapat dilihat melalui AWS Management Console maupun melalui. AWS Command Line Interface
Membersihkan sumber daya tabel yang tidak terpakai
Jika Anda telah mengidentifikasi sumber daya tabel yang tidak terpakai, Anda dapat mengurangi biaya berkelanjutannya dengan cara berikut.
catatan
Jika Anda telah mengidentifikasi tabel yang tidak terpakai tetapi masih ingin tetap tersedia jika tabel tersebut perlu diakses di masa mendatang, pertimbangkan untuk mengalihkannya ke mode sesuai permintaan. Atau, Anda dapat mempertimbangkan untuk membuat cadangan dan menghapus tabel sepenuhnya.
Mode kapasitas
DynamoDB mengenakan biaya untuk membaca, menulis, dan menyimpan data dalam tabel DynamoDB Anda.
DynamoDB memiliki dua mode kapasitas, yang dilengkapi dengan opsi penagihan khusus untuk memproses baca dan tulis pada tabel Anda: sesuai permintaan dan disediakan. Mode kapasitas baca/tulis mengontrol cara Anda dikenakan biaya untuk throughput baca dan tulis serta cara Anda mengelola kapasitas.
Untuk tabel mode sesuai permintaan, Anda tidak perlu menentukan jumlah throughput baca dan tulis yang Anda harapkan untuk dijalankan oleh aplikasi Anda. DynamoDB membebankan biaya bagi Anda atas baca dan tulis yang dilakukan aplikasi Anda pada tabel Anda dalam hal unit permintaan baca dan unit permintaan tulis. Jika tidak ada aktivitas di tabel/indeks Anda, Anda tidak perlu membayar throughput tetapi Anda masih akan dikenakan biaya penyimpanan.
Kelas tabel
DynamoDB juga menawarkan dua kelas tabel yang didesain untuk membantu Anda mengoptimalkan biaya. Kelas tabel DynamoDB Standard adalah defaultnya dan direkomendasikan untuk sebagian besar beban kerja. Kelas tabel DynamoDB Standard-Infrequent Access (DynamoDB Standard-IA) dioptimalkan untuk tabel yang biayanya didominasi oleh penyimpanan.
Jika tidak ada aktivitas di tabel atau indeks Anda, penyimpanan kemungkinan akan menjadi biaya yang dominan dan mengubah kelas tabel akan menghasilkan penghematan yang signifikan.
Menghapus tabel
Jika telah menemukan tabel yang tidak terpakai dan ingin menghapusnya, sebaiknya Anda mencadangkan atau mengekspor datanya terlebih dahulu.
Pencadangan yang diambil melalui AWS Backup dapat memanfaatkan tiering cold storage, yang selanjutnya mengurangi biaya. Lihat Menggunakan AWS Backup dengan DynamoDB dokumentasi untuk informasi tentang cara mengaktifkan pencadangan melalui AWS Backup serta dokumentasi Mengelola rencana cadangan untuk informasi tentang cara menggunakan siklus hidup untuk memindahkan cadangan Anda ke penyimpanan dingin.
Atau, Anda dapat mengekspor data tabel ke S3. Untuk melakukannya, lihat dokumentasi Mengekspor ke Amazon S3. Setelah data Anda diekspor, jika Anda ingin memanfaatkan S3 Glacier Instant Retrieval, S3 Glacier Flexile Retrieval, atau S3 Glacier Deep Archive untuk semakin mengurangi biaya, lihat Mengelola siklus hidup penyimpanan Anda.
Setelah tabel Anda telah dicadangkan, Anda dapat menghapusnya melalui AWS Management Console atau AWS Command Line Interface.
Mengidentifikasi sumber daya yang tidak digunakan GSI
Langkah-langkah untuk mengidentifikasi sekunder global yang tidak terpakai sama dengan langkah-langkah untuk mengidentifikasi tabel yang tidak terpakai. Karena DynamoDB mereplikasi item yang ditulis ke tabel dasar GSI Anda ke dalam jika berisi atribut yang digunakan sebagai GSI kunci partisi, yang GSI tidak terpakai masih cenderung ConsumedWriteCapacityUnits
memiliki di atas 0 jika tabel dasarnya sedang digunakan. Akibatnya, Anda hanya akan mengevaluasi ConsumedReadCapacityUnits
metrik untuk menentukan apakah metrik Anda tidak GSI digunakan.
Untuk melihat GSI metrik Anda melalui AWS AWS CLI, Anda dapat menggunakan perintah berikut untuk mengevaluasi tabel Anda berbunyi:
aws cloudwatch get-metric-statistics --metric-name ConsumedReadCapacityUnits --start-time <start-time> --end-time <end- time> --period <period> --namespace AWS/DynamoDB --statistics Sum -- dimensions Name=TableName,Value=<table-name> Name=GlobalSecondaryIndexName,Value=<index-name>
Untuk menghindari kesalahan dalam mengidentifikasi tabel sebagai tidak terpakai, sebaiknya Anda mengevaluasi metrik dalam jangka waktu yang lebih lama. Pilih rentang waktu mulai dan waktu berakhir yang sesuai, seperti 30 hari, dan periode yang sesuai, seperti 86400.
Dalam data yang dikembalikan, setiap Jumlah di atas 0 menunjukkan bahwa tabel yang Anda evaluasi menerima lalu lintas baca selama periode tersebut.
Hasil berikut menunjukkan lalu lintas baca GSI penerima dalam periode yang dievaluasi:
{ "Timestamp": "2022-08-17T21:20:00Z", "Sum": 36319167.0, "Unit": "Count" }, { "Timestamp": "2022-08-11T21:20:00Z", "Sum": 1869136.0, "Unit": "Count" },
Hasil berikut menunjukkan GSI menerima lalu lintas baca minimal dalam periode yang dievaluasi:
{ "Timestamp": "2022-08-28T21:20:00Z", "Sum": 0.0, "Unit": "Count" }, { "Timestamp": "2022-08-15T21:20:00Z", "Sum": 2.0, "Unit": "Count" },
Hasil berikut menunjukkan GSI penerimaan tidak membaca lalu lintas dalam periode yang dievaluasi:
{ "Timestamp": "2022-08-17T21:20:00Z", "Sum": 0.0, "Unit": "Count" }, { "Timestamp": "2022-08-11T21:20:00Z", "Sum": 0.0, "Unit": "Count" },
Membersihkan sumber daya yang tidak terpakai GSI
Jika Anda telah mengidentifikasi yang tidak digunakanGSI, Anda dapat memilih untuk menghapusnya. Karena semua data yang ada dalam a GSI juga ada di tabel dasar, cadangan tambahan tidak diperlukan sebelum menghapus file. GSI Jika di masa depan GSI sekali lagi diperlukan, itu dapat ditambahkan kembali ke tabel.
Jika Anda telah mengidentifikasi yang jarang digunakanGSI, Anda harus mempertimbangkan perubahan desain dalam aplikasi Anda yang memungkinkan Anda untuk menghapusnya atau mengurangi biayanya. Misalnya, sementara pemindaian DynamoDB harus digunakan dengan hemat karena mereka dapat mengkonsumsi sejumlah besar sumber daya sistem, mereka mungkin lebih hemat biaya daripada jika pola akses GSI yang didukungnya jarang digunakan.
Selain itu, jika GSI diperlukan untuk mendukung pola akses yang jarang, pertimbangkan untuk memproyeksikan serangkaian atribut yang lebih terbatas. Meskipun mungkin memerlukan kueri berikutnya terhadap tabel dasar untuk mendukung pola akses yang jarang, hal ini berpotensi memberikan pengurangan yang signifikan dalam biaya penyimpanan dan penulisan.
Membersihkan tabel global yang tidak terpakai
Tabel global Amazon DynamoDB menyediakan solusi terkelola penuh untuk men-deploy basis data multi-Wilayah dan multi-aktif, tanpa harus membangun dan memelihara solusi replikasi Anda sendiri.
Tabel global ideal untuk menyediakan akses latensi rendah ke data yang dekat dengan pengguna dan juga wilayah sekunder untuk pemulihan bencana.
Jika opsi tabel global diaktifkan untuk sumber daya dalam upaya menyediakan akses latensi rendah ke data tetapi bukan bagian dari strategi pemulihan bencana Anda, validasi bahwa kedua replika secara aktif melayani lalu lintas baca dengan mengevaluasi metriknya. CloudWatch Jika satu replika tidak melayani lalu lintas baca, replika tersebut mungkin merupakan sumber daya yang tidak terpakai.
Jika tabel global adalah bagian dari strategi pemulihan bencana Anda, satu replika yang tidak menerima lalu lintas baca mungkin terjadi dalam pola aktif/siaga.
Membersihkan cadangan atau point-in-time pemulihan yang tidak digunakan () PITR
DynamoDB menawarkan dua gaya cadangan. Point-in-timepemulihan menyediakan pencadangan berkelanjutan selama 35 hari untuk membantu Anda melindungi dari penulisan atau penghapusan yang tidak disengaja sementara cadangan sesuai permintaan memungkinkan pembuatan snapshot yang dapat disimpan dalam jangka panjang. Kedua jenis pencadangan ini memiliki biaya yang terkait dengannya.
Lihat dokumentasi untuk Backup dan restore untuk DynamoDB dan oint-in-time Backup P untuk DynamoDB untuk menentukan apakah tabel Anda mengaktifkan cadangan yang mungkin tidak diperlukan lagi.