THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
...
Code Block |
---|
/**
* Job logical plan is built according to JobGraph. Users can get sources, sinks and the relationship between nodes from plan.
*/
@PublicEvolvig
public interface JobLogicalPlan {
JobID jobId();
String jobName();
/* Scheduler type such as Default/Adaptive/AdaptiveBatch. */
String scheduler();
/* Job execution mode, PIPELINED/PIPELINED_FORCED/BATCH/BATCH_FORCED. */
ExecutionMode executionMode();
/* Job type, BATCH or STREAMING. */
String jobType();
/* Source vertex list. */
List<JobPlanVertex> sources();
/* Sink vertex list. */
List<JobPlanVertex> sinks();
/* Get all vertex list. */
List<JobPlanVertex> getVerticesSortedTopologicallyFromSources();
/* Get specific vertex by id. */
JobPlanVertex vertex(String id);
/* Job configuration. */
Configuration jobConfiguration();
/* Vertex in job logical plan based on JobVertex. */
@PublicEvolving
public interface JobPlanVertex {
String id();
String name();
String operatorName();
String operatorDescription();
int parallelism();
String invokableClassName();
boolean supportsConcurrentExecutionAttempts();
List<JobPlanEdge> inputs();
}
/* Edge between vertexes in the logical plan. */
@PublicEvolving
public interface JobPlanEdge {
JobPlanVertex source();
JobPlanVertex target();
String distribution();
String shipStrategyName();
boolean isBroadcast();
boolean isForward();
}
}
/* Table scan source and sink base interface, datastream source/sink vertexes can be added based on the requirements in the future. */
public interface JobPlanTableVertex extends JobPlanVertex {
/* `catalog`.`database`.`table` for scan source. */
ObjectIdentifier table();
/* For Scan source, the type is Values or Table; for sink, the type is CollectSink or ModifySink. */
String type();
/* Table options. */
Map<String, String> config();
/* For scan source, column list consumed by job; for sink, column list produced by job. */
List<JobTableColumn> columns();
/* Column with name and type in the table. */
public interface JobTableColumn extends Serializable {
String name();
LogicalType type();
}
/* Table scan source vertex. */
@PublicEvolving
public interface JobPlanTableSourceVertex extends JobPlanTableVertex {}
/* Table sink vertex. */
@PublicEvolving
public interface JobPlanTableSinkVertex extends JobPlanTableVertex {
/* Modify type, INSERT/UPDATE/DELETE. */
String modifyType();
/* Update mode, APPEND/RETRACT/UPSERT. */
String updateMode();
boolean overwrite();
Map<String, String> staticPartitions();
}
} |
...