About this project
Parquet.SourceGenerator is a C# Roslyn source generator designed to create strongly-typed Parquet serializers and deserializers at compile time, targeting the low-level columnar primitives of Parquet.Net. By eliminating runtime reflection, it achieves significant performance improvements, including faster execution times and reduced memory usage compared to traditional reflection-based approaches. The tool supports Native AOT compilation, making it suitable for serverless functions and CLI utilities where cold-start performance is critical. Key features include multi-core parallel reading, memory-bounded streaming via IAsyncEnumerable, and direct columnar data ingestion from Apache Arrow RecordBatches. It enforces strict compile-time diagnostics to catch errors early and supports various compression codecs like Snappy, Zstandard, and Gzip. The generator is particularly effective for flat analytical schemas, though it currently has limitations with nested collections and certain date types.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.