Class RemoveNetCarryoverIterator

java.lang.Object
org.apache.iceberg.spark.ChangelogIterator
org.apache.iceberg.spark.RemoveNetCarryoverIterator
All Implemented Interfaces:
Iterator<org.apache.spark.sql.Row>

public class RemoveNetCarryoverIterator extends ChangelogIterator
This class computes the net changes across multiple snapshots. It is different from RemoveCarryoverIterator, which only removes carry-over rows within a single snapshot. It takes a row iterator, and assumes the following:
  • The row iterator is partitioned by all columns.
  • The row iterator is sorted by all columns, change order, and change type. The change order is 1-to-1 mapping to snapshot id.
  • Constructor Details

    • RemoveNetCarryoverIterator

      protected RemoveNetCarryoverIterator(Iterator<org.apache.spark.sql.Row> rowIterator, org.apache.spark.sql.types.StructType rowType)
  • Method Details

    • hasNext

      public boolean hasNext()
    • next

      public org.apache.spark.sql.Row next()