Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym artykule opisano kolekcję sprawdzonych rozwiązań FinOps dotyczących usług baz danych. Zapewnia ona strategie optymalizacji kosztów, poprawy wydajności i używania zapytań usługi Azure Resource Graph (ARG) w celu uzyskania wglądu w zasoby bazy danych. Postępując zgodnie z tymi rozwiązaniami, możesz upewnić się, że usługi bazy danych są opłacalne i dostosowane do celów finansowych organizacji.
Cosmos DB - baza danych
W poniższych sekcjach znajdują się zapytania ARG dla usługi Cosmos DB. Zapytania te pomagają uzyskać wgląd w konta baz danych Cosmos DB i zapewnić ich prawidłową konfigurację przy użyciu odpowiednich jednostek żądania (RU). Analizując wzorce użycia i przedstawiając zalecenia z usługi Azure Advisor, można zoptymalizować jednostki zasobów (RUs) w celu poprawy efektywności kosztowej.
Zapytanie: Potwierdzanie jednostek żądań usługi Cosmos DB
To zapytanie usługi ARG analizuje konta usługi Cosmos DB w środowisku platformy Azure, aby upewnić się, że są skonfigurowane przy użyciu odpowiednich jednostek RU.
Opis
To zapytanie identyfikuje konta usługi Cosmos DB z zaleceniami dotyczącymi optymalizacji jednostek żądań (RU) na podstawie wzorców użycia. Przedstawia zalecenia usługi Azure Advisor, aby dostosować jednostki RU pod kątem efektywności kosztowej.
Kategoria
Optymalizacja
Zapytanie
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
Zapytanie: kolekcje usługi Cosmos DB, które mogą korzystać z przełączania do innego trybu przepływności
To zapytanie usługi ARG identyfikuje kolekcje usługi Cosmos DB w środowisku platformy Azure, które mogą korzystać z przełączania trybu przepływności na podstawie zaleceń usługi Azure Advisor.
Opis
To zapytanie powoduje wyświetlenie kolekcji Cosmos DB, które mają zalecenia dotyczące przełączania trybu przepustowości (na przykład z ręcznego na autoskalowanie lub odwrotnie), aby zoptymalizować zarówno wydajność, jak i koszty. Używa zaleceń usługi Azure Advisor, aby wyróżnić potencjalne ulepszenia.
Kategoria
Optymalizacja
Korzyści
- Optymalizacja kosztów: identyfikuje kolekcje usługi Cosmos DB, które mogą zaoszczędzić koszty, przełączając się do bardziej odpowiedniego trybu przepływności na podstawie wzorców użycia i zaleceń.
- Zarządzanie wydajnością: zapewnia, że kolekcje usługi Cosmos DB są wykorzystywane w optymalnym trybie przepustowości, zwiększając wydajność i unikając nadmiarowego lub niedostatecznego zasobów.
Zapytanie
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
Zapytanie: szczegóły trybu tworzenia kopii zapasowej usługi Cosmos DB
To zapytanie usługi ARG analizuje konta usługi Cosmos DB korzystające z zasad tworzenia kopii zapasowych okresowych i nie mają włączonej wielu lokalizacji zapisu.
Kategoria
Optymalizacja
Zapytanie
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
Bazy danych SQL
W poniższych sekcjach przedstawiono zapytania usługi ARG dla baz danych SQL Database. Te zapytania pomagają w znajdowaniu baz danych SQL, które mogą być bezczynne, stare, w trakcie tworzenia lub używane do celów testowych. Analizując te bazy danych, można zoptymalizować koszty i zwiększyć wydajność, likwidując lub ponownie stosując nie w pełni wykorzystywane zasoby.
Zapytanie: bezczynność bazy danych SQL
To zapytanie ARG identyfikuje bazy danych SQL, których nazwy wskazują, że mogą być stare, w fazie rozwoju lub używane do celów testowych.
Kategoria
Optymalizacja
Zapytanie
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
Zapytanie: Analiza nieużywanych elastycznych pul
To zapytanie ARG identyfikuje potencjalnie bezczynne elastyczne pule w środowisku Azure SQL, analizując liczbę baz danych skojarzonych z każdą pulą elastyczną.
Kategoria
Optymalizacja
Zapytanie
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
Prześlij opinię
Daj nam znać, jak nam idzie, zostawiając krótką opinię. Te recenzje służą do ulepszania i rozszerzania narzędzi i zasobów FinOps.
Jeśli szukasz czegoś konkretnego, zagłosuj na istniejący lub utwórz nowy pomysł. Podziel się pomysłami z innymi osobami, aby uzyskać więcej głosów. Skupiamy się na pomysłach z największą większością głosów.
Powiązana zawartość
Powiązane zasoby:
Powiązane rozwiązania:
- Raporty usługi Power BI dla zestawu narzędzi FinOps
- Centra FinOps
- Skoroszyty FinOps
- Aparat optymalizacji