Skip to content

Commit 9874c2e

Browse files
author
awstools
committed
feat(client-glue): The TableOptimizer APIs in AWS Glue now return the DpuHours field in each TableOptimizerRun, providing clients visibility to the DPU-hours used for billing in managed Apache Iceberg table compaction optimization.
1 parent 253585c commit 9874c2e

File tree

6 files changed

+62
-5
lines changed

6 files changed

+62
-5
lines changed

Diff for: clients/client-glue/src/commands/BatchGetTableOptimizerCommand.ts

+3
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,7 @@ export interface BatchGetTableOptimizerCommandOutput extends BatchGetTableOptimi
9090
* // IcebergMetrics: { // IcebergCompactionMetrics
9191
* // NumberOfBytesCompacted: Number("long"),
9292
* // NumberOfFilesCompacted: Number("long"),
93+
* // DpuHours: Number("double"),
9394
* // NumberOfDpus: Number("int"),
9495
* // JobDurationInHour: Number("double"),
9596
* // },
@@ -99,13 +100,15 @@ export interface BatchGetTableOptimizerCommandOutput extends BatchGetTableOptimi
99100
* // NumberOfDataFilesDeleted: Number("long"),
100101
* // NumberOfManifestFilesDeleted: Number("long"),
101102
* // NumberOfManifestListsDeleted: Number("long"),
103+
* // DpuHours: Number("double"),
102104
* // NumberOfDpus: Number("int"),
103105
* // JobDurationInHour: Number("double"),
104106
* // },
105107
* // },
106108
* // orphanFileDeletionMetrics: { // OrphanFileDeletionMetrics
107109
* // IcebergMetrics: { // IcebergOrphanFileDeletionMetrics
108110
* // NumberOfOrphanFilesDeleted: Number("long"),
111+
* // DpuHours: Number("double"),
109112
* // NumberOfDpus: Number("int"),
110113
* // JobDurationInHour: Number("double"),
111114
* // },

Diff for: clients/client-glue/src/commands/GetTableOptimizerCommand.ts

+3
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,7 @@ export interface GetTableOptimizerCommandOutput extends GetTableOptimizerRespons
8484
* // IcebergMetrics: { // IcebergCompactionMetrics
8585
* // NumberOfBytesCompacted: Number("long"),
8686
* // NumberOfFilesCompacted: Number("long"),
87+
* // DpuHours: Number("double"),
8788
* // NumberOfDpus: Number("int"),
8889
* // JobDurationInHour: Number("double"),
8990
* // },
@@ -93,13 +94,15 @@ export interface GetTableOptimizerCommandOutput extends GetTableOptimizerRespons
9394
* // NumberOfDataFilesDeleted: Number("long"),
9495
* // NumberOfManifestFilesDeleted: Number("long"),
9596
* // NumberOfManifestListsDeleted: Number("long"),
97+
* // DpuHours: Number("double"),
9698
* // NumberOfDpus: Number("int"),
9799
* // JobDurationInHour: Number("double"),
98100
* // },
99101
* // },
100102
* // orphanFileDeletionMetrics: { // OrphanFileDeletionMetrics
101103
* // IcebergMetrics: { // IcebergOrphanFileDeletionMetrics
102104
* // NumberOfOrphanFilesDeleted: Number("long"),
105+
* // DpuHours: Number("double"),
103106
* // NumberOfDpus: Number("int"),
104107
* // JobDurationInHour: Number("double"),
105108
* // },

Diff for: clients/client-glue/src/commands/ListTableOptimizerRunsCommand.ts

+3
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@ export interface ListTableOptimizerRunsCommandOutput extends ListTableOptimizerR
6666
* // IcebergMetrics: { // IcebergCompactionMetrics
6767
* // NumberOfBytesCompacted: Number("long"),
6868
* // NumberOfFilesCompacted: Number("long"),
69+
* // DpuHours: Number("double"),
6970
* // NumberOfDpus: Number("int"),
7071
* // JobDurationInHour: Number("double"),
7172
* // },
@@ -75,13 +76,15 @@ export interface ListTableOptimizerRunsCommandOutput extends ListTableOptimizerR
7576
* // NumberOfDataFilesDeleted: Number("long"),
7677
* // NumberOfManifestFilesDeleted: Number("long"),
7778
* // NumberOfManifestListsDeleted: Number("long"),
79+
* // DpuHours: Number("double"),
7880
* // NumberOfDpus: Number("int"),
7981
* // JobDurationInHour: Number("double"),
8082
* // },
8183
* // },
8284
* // orphanFileDeletionMetrics: { // OrphanFileDeletionMetrics
8385
* // IcebergMetrics: { // IcebergOrphanFileDeletionMetrics
8486
* // NumberOfOrphanFilesDeleted: Number("long"),
87+
* // DpuHours: Number("double"),
8588
* // NumberOfDpus: Number("int"),
8689
* // JobDurationInHour: Number("double"),
8790
* // },

Diff for: clients/client-glue/src/models/models_0.ts

+19-1
Original file line numberDiff line numberDiff line change
@@ -7941,6 +7941,12 @@ export interface IcebergCompactionMetrics {
79417941
* <p>The number of DPU hours consumed by the job.</p>
79427942
* @public
79437943
*/
7944+
DpuHours?: number | undefined;
7945+
7946+
/**
7947+
* <p>The number of DPUs consumed by the job, rounded up to the nearest whole number.</p>
7948+
* @public
7949+
*/
79447950
NumberOfDpus?: number | undefined;
79457951

79467952
/**
@@ -7997,7 +8003,7 @@ export interface RunMetrics {
79978003
NumberOfFilesCompacted?: string | undefined;
79988004

79998005
/**
8000-
* <p>The number of DPU hours consumed by the job.</p>
8006+
* <p>The number of DPUs consumed by the job, rounded up to the nearest whole number.</p>
80018007
* @public
80028008
*/
80038009
NumberOfDpus?: string | undefined;
@@ -8024,6 +8030,12 @@ export interface IcebergOrphanFileDeletionMetrics {
80248030
* <p>The number of DPU hours consumed by the job.</p>
80258031
* @public
80268032
*/
8033+
DpuHours?: number | undefined;
8034+
8035+
/**
8036+
* <p>The number of DPUs consumed by the job, rounded up to the nearest whole number.</p>
8037+
* @public
8038+
*/
80278039
NumberOfDpus?: number | undefined;
80288040

80298041
/**
@@ -8072,6 +8084,12 @@ export interface IcebergRetentionMetrics {
80728084
* <p>The number of DPU hours consumed by the job.</p>
80738085
* @public
80748086
*/
8087+
DpuHours?: number | undefined;
8088+
8089+
/**
8090+
* <p>The number of DPUs consumed by the job, rounded up to the nearest whole number.</p>
8091+
* @public
8092+
*/
80758093
NumberOfDpus?: number | undefined;
80768094

80778095
/**

Diff for: clients/client-glue/src/protocols/Aws_json1_1.ts

+3
Original file line numberDiff line numberDiff line change
@@ -15471,6 +15471,7 @@ const de_GrokClassifier = (output: any, context: __SerdeContext): GrokClassifier
1547115471
*/
1547215472
const de_IcebergCompactionMetrics = (output: any, context: __SerdeContext): IcebergCompactionMetrics => {
1547315473
return take(output, {
15474+
DpuHours: __limitedParseDouble,
1547415475
JobDurationInHour: __limitedParseDouble,
1547515476
NumberOfBytesCompacted: __expectLong,
1547615477
NumberOfDpus: __expectInt32,
@@ -15488,6 +15489,7 @@ const de_IcebergOrphanFileDeletionMetrics = (
1548815489
context: __SerdeContext
1548915490
): IcebergOrphanFileDeletionMetrics => {
1549015491
return take(output, {
15492+
DpuHours: __limitedParseDouble,
1549115493
JobDurationInHour: __limitedParseDouble,
1549215494
NumberOfDpus: __expectInt32,
1549315495
NumberOfOrphanFilesDeleted: __expectLong,
@@ -15501,6 +15503,7 @@ const de_IcebergOrphanFileDeletionMetrics = (
1550115503
*/
1550215504
const de_IcebergRetentionMetrics = (output: any, context: __SerdeContext): IcebergRetentionMetrics => {
1550315505
return take(output, {
15506+
DpuHours: __limitedParseDouble,
1550415507
JobDurationInHour: __limitedParseDouble,
1550515508
NumberOfDataFilesDeleted: __expectLong,
1550615509
NumberOfDpus: __expectInt32,

Diff for: codegen/sdk-codegen/aws-models/glue.json

+31-4
Original file line numberDiff line numberDiff line change
@@ -25666,11 +25666,18 @@
2566625666
"smithy.api#documentation": "<p>The number of files removed by the compaction job run.</p>"
2566725667
}
2566825668
},
25669+
"DpuHours": {
25670+
"target": "com.amazonaws.glue#dpuHours",
25671+
"traits": {
25672+
"smithy.api#default": 0,
25673+
"smithy.api#documentation": "<p>The number of DPU hours consumed by the job.</p>"
25674+
}
25675+
},
2566925676
"NumberOfDpus": {
2567025677
"target": "com.amazonaws.glue#dpuCounts",
2567125678
"traits": {
2567225679
"smithy.api#default": 0,
25673-
"smithy.api#documentation": "<p>The number of DPU hours consumed by the job.</p>"
25680+
"smithy.api#documentation": "<p>The number of DPUs consumed by the job, rounded up to the nearest whole number.</p>"
2567425681
}
2567525682
},
2567625683
"JobDurationInHour": {
@@ -25736,11 +25743,18 @@
2573625743
"smithy.api#documentation": "<p>The number of orphan files deleted by the orphan file deletion job run.</p>"
2573725744
}
2573825745
},
25746+
"DpuHours": {
25747+
"target": "com.amazonaws.glue#dpuHours",
25748+
"traits": {
25749+
"smithy.api#default": 0,
25750+
"smithy.api#documentation": "<p>The number of DPU hours consumed by the job.</p>"
25751+
}
25752+
},
2573925753
"NumberOfDpus": {
2574025754
"target": "com.amazonaws.glue#dpuCounts",
2574125755
"traits": {
2574225756
"smithy.api#default": 0,
25743-
"smithy.api#documentation": "<p>The number of DPU hours consumed by the job.</p>"
25757+
"smithy.api#documentation": "<p>The number of DPUs consumed by the job, rounded up to the nearest whole number.</p>"
2574425758
}
2574525759
},
2574625760
"JobDurationInHour": {
@@ -25805,11 +25819,18 @@
2580525819
"smithy.api#documentation": "<p>The number of manifest lists deleted by the retention job run.</p>"
2580625820
}
2580725821
},
25822+
"DpuHours": {
25823+
"target": "com.amazonaws.glue#dpuHours",
25824+
"traits": {
25825+
"smithy.api#default": 0,
25826+
"smithy.api#documentation": "<p>The number of DPU hours consumed by the job.</p>"
25827+
}
25828+
},
2580825829
"NumberOfDpus": {
2580925830
"target": "com.amazonaws.glue#dpuCounts",
2581025831
"traits": {
2581125832
"smithy.api#default": 0,
25812-
"smithy.api#documentation": "<p>The number of DPU hours consumed by the job.</p>"
25833+
"smithy.api#documentation": "<p>The number of DPUs consumed by the job, rounded up to the nearest whole number.</p>"
2581325834
}
2581425835
},
2581525836
"JobDurationInHour": {
@@ -35002,7 +35023,7 @@
3500235023
"NumberOfDpus": {
3500335024
"target": "com.amazonaws.glue#MessageString",
3500435025
"traits": {
35005-
"smithy.api#documentation": "<p>The number of DPU hours consumed by the job.</p>"
35026+
"smithy.api#documentation": "<p>The number of DPUs consumed by the job, rounded up to the nearest whole number.</p>"
3500635027
}
3500735028
},
3500835029
"JobDurationInHour": {
@@ -45494,6 +45515,12 @@
4549445515
"smithy.api#default": 0
4549545516
}
4549645517
},
45518+
"com.amazonaws.glue#dpuHours": {
45519+
"type": "double",
45520+
"traits": {
45521+
"smithy.api#default": 0
45522+
}
45523+
},
4549745524
"com.amazonaws.glue#glueConnectionNameString": {
4549845525
"type": "string",
4549945526
"traits": {

0 commit comments

Comments
 (0)