public static <T> Builder builderFor(DataStream<T> input,
            MapFunction<T, RowData> mapper,
            TypeInformation<RowData> outputType) {
        return new Builder().forMapperOutputType(input, mapper, outputType);
    }
Initialize a {@link Builder} to export the data from generic input data stream into iceberg table. We use
{@link RowData} inside the sink connector, so users need to provide a mapper function and a
{@link TypeInformation} to convert those generic records to a RowData DataStream.

@param input      the generic source input data stream.
@param mapper     function to convert the generic data to {@link RowData}
@param outputType to define the {@link TypeInformation} for the input data.
@param <T>        the data type of records.
@return {@link Builder} to connect the iceberg table.
inlong-sort/sort-flink/sort-flink-v1.13/sort-connectors/iceberg/src/main/java/org/apache/inlong/sort/iceberg/sink/FlinkSink.java