List<MixedFormatSplit> planSplits() {
    Map<String, Map<Long, Node>> nodes = new HashMap<>();
    plan(true, nodes);
    plan(false, nodes);

    List<MixedFormatSplit> splits = new ArrayList<>();

    nodes
        .values()
        .forEach(
            indexNodes ->
                indexNodes
                    .values()
                    .forEach(
                        node ->
                            splits.add(
                                new ChangelogSplit(
                                    node.inserts, node.deletes, splitCount.incrementAndGet()))));
    return splits;
  }
This is a group of the partitions and nodes of the mixed-format table, it can plan different
nodes and different partitions into different {@link MixedFormatSplit}.
amoro-format-mixed/amoro-mixed-flink/amoro-mixed-flink-common/src/main/java/org/apache/amoro/flink/read/PartitionAndNodeGroup.java