Class StreamWriter.Builder

java.lang.Object
com.google.cloud.bigquery.storage.v1.StreamWriter.Builder
Enclosing class:
StreamWriter

public static final class StreamWriter.Builder extends Object
A builder of StreamWriters.
  • Method Details

    • setWriterSchema

      public StreamWriter.Builder setWriterSchema(ProtoSchema writerSchema)
      Sets the proto schema of the rows.
    • setMaxInflightRequests

      public StreamWriter.Builder setMaxInflightRequests(long value)
    • setMaxInflightBytes

      public StreamWriter.Builder setMaxInflightBytes(long value)
    • setEndpoint

      public StreamWriter.Builder setEndpoint(String endpoint)
      Gives the ability to override the gRPC endpoint.
    • setEnableConnectionPool

      public StreamWriter.Builder setEnableConnectionPool(boolean enableConnectionPool)
      Enable multiplexing for this writer. In multiplexing mode tables will share the same connection if possible until the connection is overwhelmed.
      Parameters:
      enableConnectionPool -
      Returns:
      Builder
    • setChannelProvider

      public StreamWriter.Builder setChannelProvider(com.google.api.gax.rpc.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 InstantiatingGrpcChannelProvider.Builder.setPoolSize(int).

    • setCredentialsProvider

      public StreamWriter.Builder setCredentialsProvider(com.google.api.gax.core.CredentialsProvider credentialsProvider)
      CredentialsProvider to use to create Credentials to authenticate calls.
    • setExecutorProvider

      public StreamWriter.Builder setExecutorProvider(com.google.api.gax.core.ExecutorProvider executorProvider)
      ExecutorProvider to use to create Executor to run background jobs.
    • setTraceId

      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.
    • setLocation

      public StreamWriter.Builder setLocation(String location)
      Location of the table this stream writer is targeting.
    • setLimitExceededBehavior

      public StreamWriter.Builder setLimitExceededBehavior(com.google.api.gax.batching.FlowController.LimitExceededBehavior limitExceededBehavior) throws io.grpc.StatusRuntimeException
      Sets the limit exceeded behavior.
      Parameters:
      limitExceededBehavior -
      Returns:
      Throws:
      io.grpc.StatusRuntimeException
    • setMaxRetryDuration

      public StreamWriter.Builder setMaxRetryDuration(Duration maxRetryDuration)
    • setCompressorName

      public StreamWriter.Builder setCompressorName(String compressorName)
    • setDefaultMissingValueInterpretation

      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.
    • setRetrySettings

      public StreamWriter.Builder setRetrySettings(com.google.api.gax.retrying.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();
       
      Parameters:
      retrySettings -
      Returns:
    • build

      public StreamWriter build() throws IOException
      Builds the StreamWriterV2.
      Throws:
      IOException