Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Artikel ini menguraikan kumpulan praktik FinOps yang terbukti untuk layanan database. Ini menyediakan strategi untuk mengoptimalkan biaya, meningkatkan efisiensi, dan menggunakan kueri Azure Resource Graph (ARG) untuk mendapatkan wawasan tentang sumber daya database Anda. Dengan mengikuti praktik ini, Anda dapat memastikan bahwa layanan database Anda hemat biaya dan selaras dengan tujuan keuangan organisasi Anda.
Cosmos DB
Bagian berikut menyediakan kueri ARG untuk Cosmos DB. Kueri ini membantu Anda mendapatkan wawasan tentang akun Cosmos DB Anda dan memastikannya dikonfigurasi dengan Unit Permintaan (RU) yang sesuai. Dengan menganalisis pola penggunaan dan memunculkan rekomendasi dari Azure Advisor, Anda dapat mengoptimalkan RU untuk efisiensi biaya.
Kueri: Konfirmasi unit permintaan untuk Cosmos DB
Kueri ARG ini menganalisis akun Cosmos DB dalam lingkungan Azure Anda untuk memastikan akun tersebut dikonfigurasi dengan RU yang sesuai.
Keterangan
Kueri ini mengidentifikasi akun Cosmos DB dengan rekomendasi untuk mengoptimalkan RU mereka berdasarkan pola penggunaan. Ini memunculkan rekomendasi dari Azure Advisor untuk menyesuaikan RU untuk efisiensi biaya.
Kategori
Pengoptimalan
Pertanyaan
advisorresources
| where type =~ 'microsoft.advisor/recommendations'
| where properties.impactedField == 'microsoft.documentdb/databaseaccounts'
and properties.recommendationTypeId == '8b993855-1b3f-4392-8860-6ed4f5afd8a7'
| order by id asc
| project
id, subscriptionId, resourceGroup,
CosmosDBAccountName = properties.extendedProperties.GlobalDatabaseAccountName,
DatabaseName = properties.extendedProperties.DatabaseName,
CollectionName = properties.extendedProperties.CollectionName,
EstimatedAnnualSavings = bin(toreal(properties.extendedProperties.annualSavingsAmount), 1),
SavingsCurrency = properties.extendedProperties.savingsCurrency
Kueri: Koleksi Cosmos DB yang dapat memperoleh manfaat dengan beralih ke mode throughput lain
Kueri ARG ini mengidentifikasi koleksi Cosmos DB dalam lingkungan Azure Anda yang akan mendapat manfaat dari mengalihkan mode throughput mereka, berdasarkan rekomendasi Azure Advisor.
Keterangan
Kueri ini menampilkan koleksi Cosmos DB yang memiliki rekomendasi untuk mengalihkan mode throughput mereka (misalnya, dari manual ke skala otomatis atau sebaliknya) untuk mengoptimalkan performa dan biaya. Ini menggunakan rekomendasi Azure Advisor untuk menyoroti potensi peningkatan.
Kategori
Pengoptimalan
Keuntungan
- Pengoptimalan biaya: Mengidentifikasi koleksi Cosmos DB yang dapat menghemat biaya dengan beralih ke mode throughput yang lebih tepat berdasarkan pola penggunaan dan rekomendasi.
- Manajemen kinerja: Memastikan bahwa koleksi Cosmos DB menggunakan mode throughput yang optimal, meningkatkan kinerja, dan menghindari penyediaan yang berlebihan atau kurang.
Pertanyaan
advisorresources
| where type =~ 'microsoft.advisor/recommendations'
| where properties.impactedField == 'microsoft.documentdb/databaseaccounts'
and properties.recommendationTypeId in (
' cdf51428-a41b-4735-ba23-39f3b7cde20c',
' 6aa7a0df-192f-4dfa-bd61-f43db4843e7d'
)
| order by id asc
| project
id, subscriptionId, resourceGroup,
CosmosDBAccountName = properties.extendedProperties.GlobalDatabaseAccountName,
DatabaseName = properties.extendedProperties.DatabaseName,
CollectionName = properties.extendedProperties.CollectionName,
EstimatedAnnualSavings = bin(toreal(properties.extendedProperties.annualSavingsAmount), 1),
SavingsCurrency = properties.extendedProperties.savingsCurrency
Kueri: Detail mode pencadangan Cosmos DB
Kueri ARG ini menganalisis akun Cosmos DB yang menggunakan kebijakan pencadangan 'Berkala' dan tidak mengaktifkan beberapa lokasi tulis.
Kategori
Pengoptimalan
Pertanyaan
resources
| where type == "microsoft.documentdb/databaseaccounts"
| where resourceGroup in ({ResourceGroup})
| where properties.backupPolicy.type == 'Periodic'
and tobool(properties.enableMultipleWriteLocations) == false
| extend BackupCopies = toreal(properties.backupPolicy.periodicModeProperties.backupRetentionIntervalInHours)
/ (toreal(properties.backupPolicy.periodicModeProperties.backupIntervalInMinutes) / real(60))
| where BackupCopies >= 10
or (BackupCopies > 2
and toint(properties.backupPolicy.periodicModeProperties.backupRetentionIntervalInHours) <= 168)
| order by id asc
| project id, CosmosDBAccountName=name, resourceGroup, subscriptionId, BackupCopies
SQL Database
Azure SQL Database adalah mesin database platform as a service (PaaS) yang dikelola sepenuhnya yang menangani sebagian besar fungsi manajemen database seperti peningkatan, patching, pencadangan, dan pemantauan tanpa keterlibatan pengguna. Kumpulan Elastis memungkinkan Anda berbagi sumber daya di antara beberapa database untuk mengoptimalkan biaya.
Sumber daya terkait:
- Halaman produk Azure SQL Database
- Harga Azure SQL Database
- Dokumentasi Azure SQL Database
- Panduan performa SQL Database
Kueri: SQL DB menganggur
Kueri ARG ini mengidentifikasi database SQL dengan nama yang menunjukkan bahwa database tersebut mungkin sudah tua, dalam pengembangan, atau digunakan untuk tujuan pengujian.
Kategori
Pengoptimalan
Pertanyaan
resources
| where type == "microsoft.sql/servers/databases"
| where name contains "old" or name contains "Dev"or name contains "test"
| where resourceGroup in ({ResourceGroup})
| extend SQLDBName = name, Type = sku.name, Tier = sku.tier, Location = location
| order by id asc
| project id, SQLDBName, Type, Tier, resourceGroup, Location, subscriptionId
Menghapus Kumpulan Elastis yang tidak digunakan
Rekomendasi: Hapus Kumpulan Elastis yang tidak memiliki database terkait untuk menghindari biaya yang tidak perlu.
Tentang Kumpulan Elastis yang tidak digunakan
Kumpulan Elastis SQL memungkinkan beberapa database berbagi kumpulan sumber daya umum. Saat Elastic Pool tidak memiliki database, kumpulan tersebut tetap dikenakan biaya berdasarkan eDTU atau vCore yang dikonfigurasi. Menghapus Elastic Pools yang kosong menghilangkan biaya yang tidak perlu ini.
Note
Hub FinOps dapat secara otomatis mengidentifikasi Kumpulan Elastis yang tidak digunakan. Pelajari lebih lanjut.
Mengidentifikasi Kumpulan Elastis yang tidak digunakan
Gunakan kueri ARG berikut untuk mengidentifikasi Kumpulan Elastis tanpa database terkait.
resources
| where type == "microsoft.sql/servers/elasticpools"
| extend elasticPoolId = tolower(tostring(id))
| extend elasticPoolName = name
| extend elasticPoolRG = resourceGroup
| extend skuName = tostring(sku.name)
| extend skuTier = tostring(sku.tier)
| extend skuCapacity = tostring(sku.capacity)
| join kind=leftouter (
resources
| where type == "microsoft.sql/servers/databases"
| extend elasticPoolId = tolower(tostring(properties.elasticPoolId))
) on elasticPoolId
| summarize databaseCount = countif(isnotempty(elasticPoolId1)) by
elasticPoolId,
elasticPoolName,
serverResourceGroup = resourceGroup,
name,
skuName,
skuTier,
skuCapacity,
elasticPoolRG
| where databaseCount == 0
| project elasticPoolId,
elasticPoolName,
databaseCount,
elasticPoolRG,
skuName,
skuTier,
skuCapacity
Berikan umpan balik
Beri tahu kami bagaimana kinerja kami melalui ulasan singkat. Kami menggunakan ulasan ini untuk meningkatkan dan memperluas alat dan sumber daya FinOps.
Jika Anda mencari sesuatu yang spesifik, pilih yang sudah ada atau buat ide baru. Bagikan ide dengan orang lain untuk mendapatkan lebih banyak suara. Kami fokus pada ide-ide dengan suara terbanyak.
Konten terkait
Sumber daya terkait:
Solusi terkait: