/ClickHouse.Client

.NET client for ClickHouse

Primary LanguageC#MIT LicenseMIT

ClickHouse.Client

ADO.NET client for ClickHouse, ultra-fast 'big data' relational database

License NuGet status Build status Tests status

Key features

  • High-throughput
  • Fully supports ClickHouse-specific types:
    • Composite types: Array, Tuple, Nullable, Nested, including combinations
    • Specialized types: IPv4, IPv6, UUID, DateTime64, LowCardinality, Enum etc.
  • Correctly handles DateTime, including time zones
  • Uses compressed binary protocol over HTTP(S)
  • Supports bulk insertion
  • Uses HTTP(S), so is compatible with any server version
  • Available for .NET Core/Framework/Standard

Why another client?

Compared to other existing .NET clients, ClickHouse.Client has following advantages

  • Does not have to buffer response, reducing memory usage
  • Is version-agnostic
  • Offers wider support for ClickHouse-specific types
  • Is more compliant to ADO.NET standards (e.g. does not require calling 'NextResult' on SELECT queries)