RequestEntryT
- Request entry type for AsyncDynamicTableSink
.ConcreteBuilderT
- Builder Implementation type.@PublicEvolving public abstract class AsyncDynamicTableSinkBuilder<RequestEntryT extends Serializable,ConcreteBuilderT extends AsyncDynamicTableSinkBuilder<?,?>> extends Object
AsyncDynamicTableSink
.Constructor and Description |
---|
AsyncDynamicTableSinkBuilder() |
Modifier and Type | Method and Description |
---|---|
abstract AsyncDynamicTableSink<RequestEntryT> |
build() |
protected Integer |
getMaxBatchSize() |
protected Integer |
getMaxBufferedRequests() |
protected Long |
getMaxBufferSizeInBytes() |
protected Integer |
getMaxInFlightRequests() |
protected Long |
getMaxTimeInBufferMS() |
ConcreteBuilderT |
setMaxBatchSize(int maxBatchSize) |
ConcreteBuilderT |
setMaxBufferedRequests(int maxBufferedRequests) |
ConcreteBuilderT |
setMaxBufferSizeInBytes(long maxBufferSizeInBytes) |
ConcreteBuilderT |
setMaxInFlightRequests(int maxInFlightRequests) |
ConcreteBuilderT |
setMaxTimeInBufferMS(long maxTimeInBufferMS) |
public ConcreteBuilderT setMaxBatchSize(int maxBatchSize)
maxBatchSize
- maximum number of elements that may be passed in a list to be written
downstream.ConcreteBuilderT
itselfpublic ConcreteBuilderT setMaxInFlightRequests(int maxInFlightRequests)
maxInFlightRequests
- maximum number of uncompleted calls to submitRequestEntries that
the SinkWriter will allow at any given point. Once this point has reached, writes and
callbacks to add elements to the buffer may block until one or more requests to
submitRequestEntries completes.ConcreteBuilderT
itselfpublic ConcreteBuilderT setMaxBufferedRequests(int maxBufferedRequests)
maxBufferedRequests
- the maximum buffer length. Callbacks to add elements to the buffer
and calls to write will block if this length has been reached and will only unblock if
elements from the buffer have been removed for flushing.ConcreteBuilderT
itselfpublic ConcreteBuilderT setMaxBufferSizeInBytes(long maxBufferSizeInBytes)
maxBufferSizeInBytes
- a flush will be attempted if the most recent call to write
introduces an element to the buffer such that the total size of the buffer is greater
than or equal to this threshold value.ConcreteBuilderT
itselfpublic ConcreteBuilderT setMaxTimeInBufferMS(long maxTimeInBufferMS)
maxTimeInBufferMS
- the maximum amount of time an element may remain in the buffer. In
most cases elements are flushed as a result of the batch size (in bytes or number) being
reached or during a snapshot. However, there are scenarios where an element may remain in
the buffer forever or a long period of time. To mitigate this, a timer is constantly
active in the buffer such that: while the buffer is not empty, it will flush every
maxTimeInBufferMS milliseconds.ConcreteBuilderT
itselfpublic abstract AsyncDynamicTableSink<RequestEntryT> build()
protected Integer getMaxBatchSize()
protected Integer getMaxInFlightRequests()
protected Integer getMaxBufferedRequests()
protected Long getMaxBufferSizeInBytes()
protected Long getMaxTimeInBufferMS()
Copyright © 2014–2024 The Apache Software Foundation. All rights reserved.