Pinterest's next-generation database ingestion framework, built on Kafka, Flink, Spark, and Iceberg, has evolved to address data completeness challenges in stream-based processing. This includes automated schema evolution and a new partition finalization mechanism. The partition finalization logic, integrated into the Flink-to-Iceberg sink, uses event time statistics collected via Iceberg snapshot summaries and t-digest sketches. A watermark is generated to indicate partition completeness, stored as an Iceberg table property and propagated to downstream base tables. This mechanism is extensible through 'Accumulators' for metric collection and 'CommitProcessors' for custom post-commit logic, ensuring zero overhead when not configured.
All Pinterest trails