調用GetStorageAnalysisResult介面,查詢空間分析任務狀態和分析結果。
介面說明
物理檔案大小擷取的是檔案真實大小(需執行個體部署形態支援);表層級其他資料基於information_schema.tables。由於 MySQL 中統計資訊不是即時更新,所以可能和物理檔案大小存在差異,如有需要擷取最新資料,可在業務低峰時期對相關的表執行ANALYZE TABLE。
本介面只適用於 RDS MySQL、PolarDB MySQL 版和 MongoDB 執行個體。
對於 RDS MySQL 和 PolarDB MySQL 版執行個體,本介面對應於舊版空間分析功能,該介面產生的任務無法在 DAS 控制台新版空間分析頁面查看。如有需要查看任務及結果,請調用介面後自行儲存資料。
使用阿里雲或 DAS 的 SDK 時,建議使用最新版本。
在使用 SDK 調用 DAS 服務時,需要將地區指定為 cn-shanghai。
調試
您可以在OpenAPI Explorer中直接運行該介面,免去您計算簽名的困擾。運行成功後,OpenAPI Explorer可以自動產生SDK程式碼範例。
調試
授權資訊
|
操作 |
存取層級 |
資源類型 |
條件關鍵字 |
關聯操作 |
|
hdm:GetStorageAnalysisResult |
none |
*全部資源
|
無 | 無 |
請求參數
|
名稱 |
類型 |
必填 |
描述 |
樣本值 |
| InstanceId |
string |
是 |
執行個體 ID。 |
rm-2ze1jdv45i7l6**** |
| NodeId |
string |
否 |
節點 ID。 說明
預留參數。 |
None |
| TaskId |
string |
是 |
任務 ID,調用 CreateStorageAnalysisTask 介面返回的任務 ID。 |
910f83f4b96df0524ddc5749f615**** |
返回參數
|
名稱 |
類型 |
描述 |
樣本值 |
|
object |
|||
| Code |
integer |
返回的狀態代碼。 |
200 |
| Message |
string |
請求返回訊息。 說明
請求成功時該參數返回 Successful,請求失敗時會返回請求異常資訊(如錯誤碼等)。 |
Successful |
| Data |
object |
返回的資料。 |
|
| TaskId |
string |
任務 ID。 |
910f83f4b96df0524ddc5749f615**** |
| TaskFinish |
boolean |
任務是否結束:
|
true |
| TaskSuccess |
boolean |
任務是否成功:
說明
當任務結束時才返回該欄位。 |
true |
| TaskState |
string |
空間分析任務的狀態:
|
SUCCESS |
| TaskProgress |
integer |
任務進度,取值為 0~100 的整數。 說明
例如取值為 100 時,表示任務進度 100%。 |
100 |
| TotalDbCount |
integer |
空間分析任務需要分析的資料庫數量。 |
32 |
| AnalyzedDbCount |
integer |
已分析結束的資料庫數量。 |
2 |
| StorageAnalysisResult |
object |
空間分析詳情。 |
|
| TotalStorageSize |
integer |
執行個體總空間大小,單位為 Byte。 說明
當前僅支援 RDS MySQL。 |
214748364800 |
| TotalUsedStorageSize |
integer |
已使用的空間,單位為 Byte。 |
68345135104 |
| TotalFreeStorageSize |
integer |
剩餘可用空間,單位為 Byte。 說明
當前僅支援 RDS MySQL。 |
146403229696 |
| DailyIncrement |
integer |
近一周空間日均增長量估算值,單位為 Byte。 |
0 |
| EstimateAvailableDays |
integer |
剩餘空間可使用天數估算值。 |
99 |
| AnalysisSuccess |
boolean |
資料庫和資料表空間分析是否成功。
|
true |
| AnalysisErrorType |
string |
資料庫和資料表空間分析任務失敗類型:
|
DB_NOT_EXIST |
| NeedOptimizeItemList |
array<object> |
根據 DAS 預設規則產生的待最佳化項列表。使用者也可根據自身業務情況忽略該列表中的內容,然後根據介面返回的其他基礎資料自訂規則產生待最佳化項列表。 |
|
|
object |
|||
| DbName |
string |
資料庫名。 |
testdb01 |
| TableName |
string |
表名。 |
test_table |
| OptimizeItemName |
string |
待最佳化項:
|
NEED_OPTIMIZE_TABLE |
| OptimizeAdvice |
string |
最佳化建議:
|
NEED_OPTIMIZE_TABLE |
| AssociatedData |
string |
待最佳化項關聯資料,以 JSON 格式返回。 |
{ "autoIncrementCurrentValue": 2147483647, "autoIncrementRatio": 1, "dbName": "testdb01", "maximumValue": 2147483647, "columnName": "id", "tableName": "test_table" } |
| TableStats |
array<object> |
資料表空間資料列表。 |
|
|
object |
|||
| DbName |
string |
資料庫名。 |
testdb01 |
| TableName |
string |
表名。 |
test_table |
| TableType |
string |
表類型。 說明
該參數適用於 RDS MySQL 和 PolarDB MySQL 版。 |
BASE TABLE |
| Engine |
string |
表使用的儲存引擎類型。 說明
該參數適用於 RDS MySQL 和 PolarDB MySQL 版。 |
InnoDB |
| PhysicalFileSize |
integer |
表物理檔案大小,單位為 Byte。 說明
該參數適用於 RDS MySQL 和 PolarDB MySQL 版。部分執行個體因部署形態的原因不支援擷取該資料。 |
3057655808 |
| PhyTotalSize |
integer |
資料表空間大小,單位為 Byte。 說明
對於 RDS MySQL 和 PolarDB MySQL 版,取值為 DataSize、IndexSize、DataFree 之和;對於 MongoDB,取值為 DataSize、IndexSize 之和。 |
3012493312 |
| TotalSize |
integer |
|
3005153280 |
| IndexSize |
integer |
索引佔用的空間大小,單位為 Byte。 |
1022296064 |
| DataSize |
integer |
|
1982857216 |
| DataFree |
integer |
片段空間大小,單位為 Byte。 說明
該參數適用於 RDS MySQL 和 PolarDB MySQL 版。表片段率計算方式一般為: |
7340032 |
| TableRows |
integer |
錶行數。 |
12794732 |
| AvgRowLength |
integer |
平均行長,單位為 Byte。 |
154 |
| FragmentSize |
integer |
可回收空間大小(片段空間大小),單位為 Byte。 說明
該參數僅適用於 MongoDB 執行個體。表片段率計算方式為: |
362221568 |
| RequestId |
string |
請求 ID。 |
B6D17591-B48B-4D31-9CD6-9B9796B2**** |
| Success |
boolean |
請求是否執行成功:
|
true |
樣本
正常返回樣本
JSON格式
{
"Code": 200,
"Message": "Successful",
"Data": {
"TaskId": "910f83f4b96df0524ddc5749f615****",
"TaskFinish": true,
"TaskSuccess": true,
"TaskState": "SUCCESS",
"TaskProgress": 100,
"TotalDbCount": 32,
"AnalyzedDbCount": 2,
"StorageAnalysisResult": {
"TotalStorageSize": 214748364800,
"TotalUsedStorageSize": 68345135104,
"TotalFreeStorageSize": 146403229696,
"DailyIncrement": 0,
"EstimateAvailableDays": 99,
"AnalysisSuccess": true,
"AnalysisErrorType": "DB_NOT_EXIST",
"NeedOptimizeItemList": [
{
"DbName": "testdb01",
"TableName": "test_table",
"OptimizeItemName": "NEED_OPTIMIZE_TABLE",
"OptimizeAdvice": "NEED_OPTIMIZE_TABLE",
"AssociatedData": "{\n \"autoIncrementCurrentValue\": 2147483647,\n \"autoIncrementRatio\": 1,\n \"dbName\": \"testdb01\",\n \"maximumValue\": 2147483647,\n \"columnName\": \"id\",\n \"tableName\": \"test_table\"\n}"
}
],
"TableStats": [
{
"DbName": "testdb01",
"TableName": "test_table",
"TableType": "BASE TABLE",
"Engine": "InnoDB",
"PhysicalFileSize": 3057655808,
"PhyTotalSize": 3012493312,
"TotalSize": 3005153280,
"IndexSize": 1022296064,
"DataSize": 1982857216,
"DataFree": 7340032,
"TableRows": 12794732,
"AvgRowLength": 154,
"FragmentSize": 362221568
}
]
}
},
"RequestId": "B6D17591-B48B-4D31-9CD6-9B9796B2****",
"Success": true
}
錯誤碼
|
HTTP status code |
錯誤碼 |
錯誤資訊 |
描述 |
|---|---|---|---|
| 400 | InvalidParams | The request parameters are invalid. | |
| 403 | NoPermission | You are not authorized to do this action. |
訪問錯誤中心查看更多錯誤碼。
變更歷史
更多資訊,參考變更詳情。