Skip to content
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CHANGES.md
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,7 @@

## New Features / Improvements

* Added support for setting disk provisioned IOPS and throughput in Dataflow runner via `--diskProvisionedIops` and `--diskProvisionedThroughputMibps` pipeline options (Java/Go) ([#37377](https://github.com/apache/beam/issues/37377)).
Comment thread
bambadiouf1 marked this conversation as resolved.
Outdated
* X feature added (Java/Python) ([#X](https://github.com/apache/beam/issues/X)).
* TriggerStateMachineRunner changes from BitSetCoder to SentinelBitSetCoder to
encode finished bitset. SentinelBitSetCoder and BitSetCoder are state
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -742,7 +742,7 @@ class BeamModulePlugin implements Plugin<Project> {
google_api_common : "com.google.api:api-common", // google_cloud_platform_libraries_bom sets version
google_api_services_bigquery : "com.google.apis:google-api-services-bigquery:v2-rev20251012-2.0.0", // [bomupgrader] sets version
google_api_services_cloudresourcemanager : "com.google.apis:google-api-services-cloudresourcemanager:v1-rev20250606-2.0.0", // [bomupgrader] sets version
google_api_services_dataflow : "com.google.apis:google-api-services-dataflow:v1b3-rev20260118-$google_clients_version",
google_api_services_dataflow : "com.google.apis:google-api-services-dataflow:v1b3-rev20260405-$google_clients_version",
google_api_services_healthcare : "com.google.apis:google-api-services-healthcare:v1-rev20240130-$google_clients_version",
google_api_services_pubsub : "com.google.apis:google-api-services-pubsub:v1-rev20220904-$google_clients_version",
google_api_services_storage : "com.google.apis:google-api-services-storage:v1-rev20260204-2.0.0", // [bomupgrader] sets version
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -489,6 +489,13 @@ public Job translate(List<DataflowPackage> packages) {
if (options.getDiskSizeGb() > 0) {
workerPool.setDiskSizeGb(options.getDiskSizeGb());
}
if (options.getDiskProvisionedIops() != null && options.getDiskProvisionedIops() > 0) {
workerPool.setDiskProvisionedIops(options.getDiskProvisionedIops());
}
if (options.getDiskProvisionedThroughputMibps() != null
&& options.getDiskProvisionedThroughputMibps() > 0) {
workerPool.setDiskProvisionedThroughputMibps(options.getDiskProvisionedThroughputMibps());
}
AutoscalingSettings settings = new AutoscalingSettings();
if (options.getAutoscalingAlgorithm() != null) {
settings.setAlgorithm(options.getAutoscalingAlgorithm().getAlgorithm());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -193,6 +193,20 @@ public String getAlgorithm() {

void setWorkerDiskType(String value);

/** Provisioned IOPS for the worker disk. */
@Description("Provisioned IOPS for the worker disk.")
@Nullable
Long getDiskProvisionedIops();

void setDiskProvisionedIops(Long value);

/** Provisioned throughput in MiB/s for the worker disk. */
@Description("Provisioned throughput in MiB/s for the worker disk.")
@Nullable
Long getDiskProvisionedThroughputMibps();

void setDiskProvisionedThroughputMibps(Long value);

/**
* Specifies whether worker pools should be started with public IP addresses.
*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -322,4 +322,13 @@ public void destroy() {
TimeoutException.class, () -> DefaultGcpRegionFactory.getRegionFromGcloudCli(1L));
}
}

@Test
public void testDiskProvisionedIopsAndThroughput() {
DataflowPipelineOptions options = PipelineOptionsFactory.as(DataflowPipelineOptions.class);
options.setDiskProvisionedIops(1000L);
options.setDiskProvisionedThroughputMibps(100L);
assertEquals(Long.valueOf(1000), options.getDiskProvisionedIops());
assertEquals(Long.valueOf(100), options.getDiskProvisionedThroughputMibps());
}
}
28 changes: 14 additions & 14 deletions sdks/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -25,12 +25,12 @@ go 1.26.0
toolchain go1.26.2

require (
cloud.google.com/go/bigquery v1.72.0
cloud.google.com/go/bigtable v1.41.0
cloud.google.com/go/datastore v1.21.0
cloud.google.com/go/bigquery v1.74.0
cloud.google.com/go/bigtable v1.42.0
cloud.google.com/go/datastore v1.22.0
cloud.google.com/go/profiler v0.4.3
cloud.google.com/go/pubsub v1.50.1
cloud.google.com/go/spanner v1.87.0
cloud.google.com/go/spanner v1.88.0
cloud.google.com/go/storage v1.59.2
github.com/aws/aws-sdk-go-v2 v1.41.5
github.com/aws/aws-sdk-go-v2/config v1.32.7
Expand All @@ -56,12 +56,12 @@ require (
github.com/xitongsys/parquet-go-source v0.0.0-20241021075129-b732d2ac9c9b
go.mongodb.org/mongo-driver v1.17.9
golang.org/x/net v0.52.0
golang.org/x/oauth2 v0.35.0
golang.org/x/oauth2 v0.36.0
golang.org/x/sync v0.20.0
golang.org/x/sys v0.42.0
golang.org/x/text v0.35.0
google.golang.org/api v0.257.0
google.golang.org/genproto v0.0.0-20250922171735-9219d122eba9
google.golang.org/api v0.276.0
google.golang.org/genproto v0.0.0-20260319201613-d00831a3d3e7
google.golang.org/grpc v1.80.0
google.golang.org/protobuf v1.36.11
gopkg.in/yaml.v2 v2.4.0
Expand All @@ -77,13 +77,13 @@ require (

require (
cel.dev/expr v0.25.1 // indirect
cloud.google.com/go/auth v0.17.0 // indirect
cloud.google.com/go/auth v0.20.0 // indirect
cloud.google.com/go/auth/oauth2adapt v0.2.8 // indirect
cloud.google.com/go/monitoring v1.24.3 // indirect
cloud.google.com/go/pubsub/v2 v2.0.0 // indirect
dario.cat/mergo v1.0.2 // indirect
filippo.io/edwards25519 v1.1.1 // indirect
github.com/GoogleCloudPlatform/grpc-gcp-go/grpcgcp v1.5.3 // indirect
github.com/GoogleCloudPlatform/grpc-gcp-go/grpcgcp v1.6.0 // indirect
github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp v1.31.0 // indirect
github.com/GoogleCloudPlatform/opentelemetry-operations-go/exporter/metric v0.54.0 // indirect
github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/resourcemapping v0.54.0 // indirect
Expand Down Expand Up @@ -124,8 +124,8 @@ require (
go.einride.tech/aip v0.73.0 // indirect
go.opentelemetry.io/auto/sdk v1.2.1 // indirect
go.opentelemetry.io/contrib/detectors/gcp v1.39.0 // indirect
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.63.0 // indirect
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.61.0 // indirect
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.67.0 // indirect
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.67.0 // indirect
go.opentelemetry.io/otel v1.43.0 // indirect
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.43.0 // indirect
go.opentelemetry.io/otel/metric v1.43.0 // indirect
Expand All @@ -141,7 +141,7 @@ require (
cloud.google.com/go v0.123.0 // indirect
cloud.google.com/go/compute/metadata v0.9.0 // indirect
cloud.google.com/go/iam v1.5.3 // indirect
cloud.google.com/go/longrunning v0.7.0 // indirect
cloud.google.com/go/longrunning v0.8.0 // indirect
github.com/Azure/go-ansiterm v0.0.0-20250102033503-faa5f7b0171c // indirect
github.com/Microsoft/go-winio v0.6.2 // indirect
github.com/apache/arrow/go/arrow v0.0.0-20211112161151-bc219186db40 // indirect
Expand Down Expand Up @@ -175,8 +175,8 @@ require (
github.com/google/pprof v0.0.0-20250602020802-c6617b811d0e // indirect
github.com/google/renameio/v2 v2.0.0 // indirect
github.com/google/s2a-go v0.1.9 // indirect
github.com/googleapis/enterprise-certificate-proxy v0.3.7 // indirect
github.com/googleapis/gax-go/v2 v2.15.0 // indirect
github.com/googleapis/enterprise-certificate-proxy v0.3.14 // indirect
github.com/googleapis/gax-go/v2 v2.21.0 // indirect
github.com/gorilla/handlers v1.5.2 // indirect
github.com/gorilla/mux v1.8.1 // indirect
github.com/inconshreveable/mousetrap v1.1.0 // indirect
Expand Down
Loading
Loading