Fully managed, safe, extremely fast .NET library to 📖read and ✍️write Apache Parquet files designed for .NET world (not a wrapper). Targets .NET 8
, .NET 7
, .NET 6.0
, .NET Core 3.1
, .NET Standard 2.1
and .NET Standard 2.0
.
Whether you want to build apps for Linux, MacOS, Windows, iOS, Android, Tizen, Xbox, PS4, Raspberry Pi, Samsung TVs or much more, Parquet.Net has you covered.
- 0️⃣ Has zero dependencies - pure library that just works anywhere .NET works i.e. desktops, servers, phones, watches and so on.
- 🚀Really fast. Faster than Python and Java, and alternative C# implementations out there. It's often even faster than native C++ implementations.
- 🏠NET native. Designed to utilise .NET and made for .NET developers, not the other way around.
- ❤️🩹Not a "wrapper" that forces you to fit in. It's the other way around - forces parquet to fit into .NET.
- 🦄Unique Features:
- The only library that supports dynamic schemas.
- Supports all parquet types, encodings and compressions.
- Fully supports C# class serialization, for all simple and complex Parquet types.
- Provides low-level, high-level, and untyped API.
- Access to file and column metadata.
- Integration with DataFrames (
Microsoft.Data.Analysis
).
This repository now includes an implementation of parquet desktop viewer application called Floor (parquet floor, get it?). It's cross-platform, self-contained executable made with Avalonia, and is compiled for Linux, Windows and MacOS.
Floor is not meant to be the best parquet viewer on the planet, but just a reference implementation. There are probably better, more feature-rich applications out there.
Download it from the releases section. On Windows, you can install it with winget - winget install aloneguid.ParquetDotnet.floor
.
- Azure Cosmos DB Desktop Data Migration Tool.
- RavenDB - An ACID NoSQL Document Database.
- Cinchoo ETL: An ETL framework for .NET.
- ParquetViewer: Simple Windows desktop application for viewing & querying Apache Parquet files.
- ML.NET: Machine Learning for .NET.
- PSParquet: PowerShell Module for Parquet.
- Omni Loader: Self-tuning Database Migration Accelerator.
- Contoso Data Generator V2 : sample data generator.
- Recfuence - An analysis of YouTube's political influence through recommendations.
- Kusto-loco - C# KQL query engine with flexible I/O layers and visualization.
- DeltaIO - Delta Lake implementation in pure .NET.
...raise a PR to appear here...
See the contribution page. The first important thing you can do is simply star ⭐ this project.