private InternalCreateMultiTimeSeriesStatement getTimeSeriesBatchStatement() {
    final InternalCreateMultiTimeSeriesStatement internalCreateMultiTimeSeriesStatement =
        new InternalCreateMultiTimeSeriesStatement(new HashMap<>());
    createTimeSeriesStatements.forEach(
        statement ->
            addNonAlignedTimeSeriesToBatchStatement(
                statement, internalCreateMultiTimeSeriesStatement));
    createAlignedTimeSeriesStatements.forEach(
        statement ->
            addAlignedTimeSeriesToBatchStatement(
                statement, internalCreateMultiTimeSeriesStatement));
    createTimeSeriesStatements.clear();
    createAlignedTimeSeriesStatements.clear();
    return internalCreateMultiTimeSeriesStatement;
  }
This visitor will convert {@link Statement}s to batch and is stateful, and can only be used in a
single thread. It only guarantees the correctness when is used by the schema snapshot and shall
not be used for other purposes.

<p>When the visitor is called, it shall encounter no:

<p>1. {@link StatementNode}s other than {@link Statement}s

<p>2. TimeSeries with identical path.

<p>3. Alter to the timeSeries and templates in batch.
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/receiver/visitor/PipeTreeStatementToBatchVisitor.java