Send feedback
Class StreamWriter.Builder (3.17.0)
Stay organized with collections
Save and categorize content based on your preferences.
Version latestkeyboard_arrow_down
public static final class StreamWriter . Builder
Methods
build()
public StreamWriter build ()
Builds the StreamWriterV2
.
setChannelProvider(TransportChannelProvider channelProvider)
public StreamWriter . Builder setChannelProvider ( TransportChannelProvider channelProvider )
ChannelProvider
to use to create Channels, which must point at Cloud BigQuery Storage
API endpoint.
For performance, this client benefits from having multiple underlying connections. See
com.google.api.gax.grpc.InstantiatingGrpcChannelProvider.Builder#setPoolSize(int) .
setCompressorName(String compressorName)
public StreamWriter . Builder setCompressorName ( String compressorName )
Parameter
Name
Description
compressorName
String
setCredentialsProvider(CredentialsProvider credentialsProvider)
public StreamWriter . Builder setCredentialsProvider ( CredentialsProvider credentialsProvider )
CredentialsProvider
to use to create Credentials to authenticate calls.
setDefaultMissingValueInterpretation(AppendRowsRequest.MissingValueInterpretation defaultMissingValueInterpretation)
public StreamWriter . Builder setDefaultMissingValueInterpretation ( AppendRowsRequest . MissingValueInterpretation defaultMissingValueInterpretation )
Sets the default missing value interpretation value if the column is not presented in the
missing_value_interpretations map.
setEnableConnectionPool(boolean enableConnectionPool)
public StreamWriter . Builder setEnableConnectionPool ( boolean enableConnectionPool )
Enables a static shared bidi-streaming connection pool that would dynamically scale up
connections based on backlog within each individual connection. A single table's traffic
might be splitted into multiple connections if needed. Different tables' traffic can also be
multiplexed within the same connection.
Each connection pool would have a upper limit (default to 20) and lower limit (default to
2) for the number of active connections. This parameter can be tuned via a static method
exposed on ConnectionWorkerPool .
Example:
ConnectionWorkerPool.setOptions(
Settings.builder().setMinConnectionsPerRegion(4).setMaxConnectionsPerRegion(10).build());
Parameter
Name
Description
enableConnectionPool
boolean
setEnableLatencyProfiler(boolean enableLatencyProfiler)
public StreamWriter . Builder setEnableLatencyProfiler ( boolean enableLatencyProfiler )
Enable a latency profiler that would periodically generate a detailed latency report for the
top latency requests. This is currently an experimental API.
Parameter
Name
Description
enableLatencyProfiler
boolean
setEnableOpenTelemetry(boolean enableOpenTelemetry)
public StreamWriter . Builder setEnableOpenTelemetry ( boolean enableOpenTelemetry )
Enable generation of metrics for OpenTelemetry.
Parameter
Name
Description
enableOpenTelemetry
boolean
setEndpoint(String endpoint)
public StreamWriter . Builder setEndpoint ( String endpoint )
Gives the ability to override the gRPC endpoint.
Parameter
Name
Description
endpoint
String
setExecutorProvider(ExecutorProvider executorProvider)
public StreamWriter . Builder setExecutorProvider ( ExecutorProvider executorProvider )
ExecutorProvider
to use to create Executor to run background jobs.
setLimitExceededBehavior(FlowController.LimitExceededBehavior limitExceededBehavior)
public StreamWriter . Builder setLimitExceededBehavior ( FlowController . LimitExceededBehavior limitExceededBehavior )
Sets the limit exceeded behavior.
Exceptions
Type
Description
io.grpc.StatusRuntimeException
setLocation(String location)
public StreamWriter . Builder setLocation ( String location )
Location of the table this stream writer is targeting.
Parameter
Name
Description
location
String
setMaxInflightBytes(long value)
public StreamWriter . Builder setMaxInflightBytes ( long value )
Parameter
Name
Description
value
long
setMaxInflightRequests(long value)
public StreamWriter . Builder setMaxInflightRequests ( long value )
Parameter
Name
Description
value
long
setMaxRetryDuration(Duration maxRetryDuration)
public StreamWriter . Builder setMaxRetryDuration ( Duration maxRetryDuration )
Parameter
Name
Description
maxRetryDuration
Duration
setMissingValueInterpretationMap(Map<String,AppendRowsRequest.MissingValueInterpretation> missingValueInterpretationMap)
public StreamWriter . Builder setMissingValueInterpretationMap ( Map<String , AppendRowsRequest . MissingValueInterpretation > missingValueInterpretationMap )
Sets the missing value interpretation map for the stream writer. The input
missingValueInterpretationMap is used for all write requests unless otherwise changed.
setRetrySettings(RetrySettings retrySettings)
public StreamWriter . Builder setRetrySettings ( RetrySettings retrySettings )
Enable client lib automatic retries on request level errors.
Immeidate Retry code:
ABORTED, UNAVAILABLE, CANCELLED, INTERNAL, DEADLINE_EXCEEDED
Backoff Retry code:
RESOURCE_EXHAUSTED
Example:
RetrySettings retrySettings = RetrySettings.newBuilder()
.setInitialRetryDelay(Duration.ofMillis(500)) // applies to backoff retry
.setRetryDelayMultiplier(1.1) // applies to backoff retry
.setMaxAttempts(5) // applies to both retries
.setMaxRetryDelay(Duration.ofMinutes(1)) // applies to backoff retry .build();
setTraceId(String traceId)
public StreamWriter . Builder setTraceId ( String traceId )
Sets traceId for debuging purpose. TraceId must follow the format of
CustomerDomain:DebugString, e.g. DATAFLOW:job_id_x.
Parameter
Name
Description
traceId
String
setWriterSchema(ArrowSchema arrowSchema)
public StreamWriter . Builder setWriterSchema ( ArrowSchema arrowSchema )
Sets the user provided serialized Arrow schema of the rows.
setWriterSchema(ProtoSchema protoSchema)
public StreamWriter . Builder setWriterSchema ( ProtoSchema protoSchema )
Sets the user provided proto schema of the rows.
setWriterSchema(Schema arrowSchema)
public StreamWriter . Builder setWriterSchema ( Schema arrowSchema )
Sets the user provided unserialized Arrow schema of the rows.
Parameter
Name
Description
arrowSchema
org.apache.arrow.vector.types.pojo.Schema
Send feedback
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License , and code samples are licensed under the Apache 2.0 License . For details, see the Google Developers Site Policies . Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-09-15 UTC.
Need to tell us more?
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-15 UTC."],[],[],null,[]]