ClickHouse.Driver NuGet パッケージに含まれています。
HTTP
HTTP クライアントは、高レベルでスレッドセーフなClickHouseClient API と、ORM が使用する ADO.NET API を提供します。
.NET 6.0 以降に対応しており、ほとんどのアプリケーションでの使用を推奨します。
次のいずれかが必要な場合は、HTTP クライアントを使用してください。
- ADO.NET または ORM。
- CSV、JSONEachRow、Parquet、または生のストリームによる入出力。
- Bearer 認証またはカスタム HTTP ヘッダー。
- パラメータの型解決やフォーマット、読み取り時の変換のカスタマイズ。
- クエリごとのデータベースまたはロールの指定。
JSONの処理性能の向上。TCP クライアントでは、JSONの値をテキストとしてしか転送できません。
ネイティブ TCP
ネイティブ TCP クライアントは実験的な機能であり、公開 API は今後のリリースで変更される可能性があります。列指向のブロック読み取り、ネイティブ圧縮、プールされた接続、特定の接続に固定されたセッションに対応するClickHouseTcpClient API を提供します。.NET 8.0 以降に対応しています。
次の機能が必要な場合は、ネイティブ TCP クライアントを使用してください。
- パフォーマンスの向上 (特にカラム単位でデータを処理する場合)
- 列指向のデータブロック
- 接続の維持
OpenSessionAsyncによる特定の接続に固定されたセッション- 進捗、プロファイル、ログ、合計値、極値を受け取るコールバック
- W3C トレースコンテキストの ClickHouse への伝播