public class JdbcTableSource extends Object implements StreamTableSource<Row>, ProjectableTableSource<Row>, LookupableTableSource<Row>
TableSource
for JDBC.Modifier and Type | Class and Description |
---|---|
static class |
JdbcTableSource.Builder
Builder for a
JdbcTableSource . |
Modifier and Type | Method and Description |
---|---|
static JdbcTableSource.Builder |
builder() |
boolean |
equals(Object o) |
String |
explainSource()
Describes the table source.
|
AsyncTableFunction<Row> |
getAsyncLookupFunction(String[] lookupKeys)
Gets the
AsyncTableFunction which supports async lookup one key at a time. |
DataStream<Row> |
getDataStream(StreamExecutionEnvironment execEnv)
Returns the data of the table as a
DataStream . |
TableFunction<Row> |
getLookupFunction(String[] lookupKeys)
Gets the
TableFunction which supports lookup one key at a time. |
DataType |
getProducedDataType()
Returns the
DataType for the produced data of the TableSource . |
TableSchema |
getTableSchema()
Returns the schema of the produced table.
|
boolean |
isAsyncEnabled()
Returns true if async lookup is enabled.
|
boolean |
isBounded()
Returns true if this is a bounded source, false if this is an unbounded source.
|
TableSource<Row> |
projectFields(int[] fields)
Creates a copy of the
TableSource that projects its output to the given field
indexes. |
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getReturnType
public boolean isBounded()
StreamTableSource
isBounded
in interface StreamTableSource<Row>
public DataStream<Row> getDataStream(StreamExecutionEnvironment execEnv)
StreamTableSource
DataStream
.
NOTE: This method is for internal use only for defining a TableSource
. Do not use
it in Table API programs.
getDataStream
in interface StreamTableSource<Row>
public TableFunction<Row> getLookupFunction(String[] lookupKeys)
LookupableTableSource
TableFunction
which supports lookup one key at a time.getLookupFunction
in interface LookupableTableSource<Row>
lookupKeys
- the chosen field names as lookup keys, it is in the defined orderpublic DataType getProducedDataType()
TableSource
DataType
for the produced data of the TableSource
.getProducedDataType
in interface TableSource<Row>
DataSet
or DataStream
.public TableSource<Row> projectFields(int[] fields)
ProjectableTableSource
TableSource
that projects its output to the given field
indexes. The field indexes relate to the physical poduced data type (TableSource.getProducedDataType()
) and not to the table schema (TableSource.getTableSchema()
of the TableSource
.
The table schema (TableSource.getTableSchema()
of the TableSource
copy must
not be modified by this method, but only the produced data type (TableSource.getProducedDataType()
) and the produced DataSet
(BatchTableSource#getDataSet(
) or DataStream
(StreamTableSource#getDataStream
).
If the TableSource
implements the DefinedFieldMapping
interface, it might
be necessary to adjust the mapping as well.
IMPORTANT: This method must return a true copy and must not modify the original table source object.
projectFields
in interface ProjectableTableSource<Row>
fields
- The indexes of the fields to return.TableSource
that projects its output.public AsyncTableFunction<Row> getAsyncLookupFunction(String[] lookupKeys)
LookupableTableSource
AsyncTableFunction
which supports async lookup one key at a time.getAsyncLookupFunction
in interface LookupableTableSource<Row>
lookupKeys
- the chosen field names as lookup keys, it is in the defined orderpublic boolean isAsyncEnabled()
LookupableTableSource
The lookup function returned by LookupableTableSource.getAsyncLookupFunction(String[])
will be used if
returns true. Otherwise, the lookup function returned by LookupableTableSource.getLookupFunction(String[])
will be used.
isAsyncEnabled
in interface LookupableTableSource<Row>
public TableSchema getTableSchema()
TableSource
getTableSchema
in interface TableSource<Row>
TableSchema
of the produced table.public String explainSource()
TableSource
explainSource
in interface TableSource<Row>
TableSource
.public static JdbcTableSource.Builder builder()
Copyright © 2014–2021 The Apache Software Foundation. All rights reserved.