IN - Type of the elements emitted by this sinkpublic abstract class GenericWriteAheadSink<IN> extends AbstractStreamOperator<IN> implements OneInputStreamOperator<IN,IN>
Incoming records are stored within a AbstractStateBackend, and only committed if a checkpoint is
completed.
| 限定符和类型 | 字段和说明 |
|---|---|
protected static org.slf4j.Logger |
LOG |
protected org.apache.flink.api.common.typeutils.TypeSerializer<IN> |
serializer |
chainingStrategy, config, latencyStats, metrics, output, processingTimeService| 构造器和说明 |
|---|
GenericWriteAheadSink(CheckpointCommitter committer,
org.apache.flink.api.common.typeutils.TypeSerializer<IN> serializer,
String jobID) |
| 限定符和类型 | 方法和说明 |
|---|---|
void |
close()
This method is called at the very end of the operator's life, both in the case of a
successful completion of the operation, and in the case of a failure and canceling.
|
void |
initializeState(org.apache.flink.runtime.state.StateInitializationContext context)
Stream operators with state which can be restored need to override this hook method.
|
void |
notifyCheckpointComplete(long checkpointId) |
void |
open()
This method is called immediately before any elements are processed, it should contain the
operator's initialization logic, e.g. state initialization.
|
void |
processElement(StreamRecord<IN> element)
Processes one element that arrived on this input of the
MultipleInputStreamOperator. |
protected abstract boolean |
sendValues(Iterable<IN> values,
long checkpointId,
long timestamp)
Write the given element into the backend.
|
void |
snapshotState(org.apache.flink.runtime.state.StateSnapshotContext context)
Stream operators with state, which want to participate in a snapshot need to override this
hook method.
|
finish, getChainingStrategy, getContainingTask, getCurrentKey, getExecutionConfig, getInternalTimerService, getKeyedStateBackend, getKeyedStateStore, getMetricGroup, getOperatorConfig, getOperatorID, getOperatorName, getOperatorStateBackend, getOrCreateKeyedState, getPartitionedState, getPartitionedState, getProcessingTimeService, getRuntimeContext, getTimeServiceManager, getUserCodeClassloader, initializeState, isUsingCustomRawKeyedState, notifyCheckpointAborted, prepareSnapshotPreBarrier, processLatencyMarker, processLatencyMarker1, processLatencyMarker2, processWatermark, processWatermark1, processWatermark2, processWatermarkStatus, processWatermarkStatus1, processWatermarkStatus2, registerCounterOnOutput, reportOrForwardLatencyMarker, setChainingStrategy, setCurrentKey, setKeyContextElement1, setKeyContextElement2, setProcessingTimeService, setup, snapshotStateclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitsetKeyContextElementfinish, getMetricGroup, getOperatorID, initializeState, prepareSnapshotPreBarrier, setKeyContextElement1, setKeyContextElement2, snapshotStategetCurrentKey, setCurrentKeyprocessLatencyMarker, processWatermark, processWatermarkStatusprotected static final org.slf4j.Logger LOG
protected final org.apache.flink.api.common.typeutils.TypeSerializer<IN> serializer
public GenericWriteAheadSink(CheckpointCommitter committer, org.apache.flink.api.common.typeutils.TypeSerializer<IN> serializer, String jobID) throws Exception
Exceptionpublic void initializeState(org.apache.flink.runtime.state.StateInitializationContext context)
throws Exception
AbstractStreamOperatorinitializeState 在接口中 StreamOperatorStateHandler.CheckpointedStreamOperatorinitializeState 在类中 AbstractStreamOperator<IN>context - context that allows to register different states.Exceptionpublic void open()
throws Exception
AbstractStreamOperatorThe default implementation does nothing.
open 在接口中 StreamOperator<IN>open 在类中 AbstractStreamOperator<IN>Exception - An exception in this method causes the operator to fail.public void close()
throws Exception
StreamOperatorThis method is expected to make a thorough effort to release all resources that the operator has acquired.
NOTE:It can not emit any records! If you need to emit records at the end of
processing, do so in the StreamOperator.finish() method.
close 在接口中 StreamOperator<IN>close 在类中 AbstractStreamOperator<IN>Exceptionpublic void snapshotState(org.apache.flink.runtime.state.StateSnapshotContext context)
throws Exception
AbstractStreamOperatorsnapshotState 在接口中 StreamOperatorStateHandler.CheckpointedStreamOperatorsnapshotState 在类中 AbstractStreamOperator<IN>context - context that provides information and means required for taking a snapshotExceptionpublic void notifyCheckpointComplete(long checkpointId)
throws Exception
notifyCheckpointComplete 在接口中 org.apache.flink.api.common.state.CheckpointListenernotifyCheckpointComplete 在类中 AbstractStreamOperator<IN>Exceptionprotected abstract boolean sendValues(Iterable<IN> values, long checkpointId, long timestamp) throws Exception
values - The values to be writtencheckpointId - The checkpoint ID of the checkpoint to be writtentimestamp - The wall-clock timestamp of the checkpointExceptionpublic void processElement(StreamRecord<IN> element) throws Exception
InputMultipleInputStreamOperator.
This method is guaranteed to not be called concurrently with other methods of the operator.processElement 在接口中 Input<IN>ExceptionCopyright © 2014–2022 The Apache Software Foundation. All rights reserved.