ClickHouse.Driver.
HTTP
El Client HTTP ofrece la API de alto nivelClickHouseClient, segura para subprocesos, y la API ADO.NET
que utilizan los ORM. Es compatible con .NET 6.0 y versiones posteriores y se recomienda para la mayoría de las aplicaciones.
Utilice el Client HTTP si necesita:
- ADO.NET o un ORM;
- entrada y salida en CSV, JSONEachRow, Parquet o flujos sin procesar;
- autenticación bearer o encabezados HTTP personalizados;
- resolución personalizada de tipos de parámetros, formato de parámetros o conversión de lectura;
- especificar una base de datos o un rol para cada consulta;
- un mejor rendimiento con
JSON. El Client TCP solo puede transferir valoresJSONcomo texto.
TCP nativo
El Client TCP nativo es experimental y su API pública puede cambiar en futuras versiones. Ofrece la APIClickHouseTcpClient para leer bloques de datos columnares, usar compresión nativa y conexiones agrupadas, y
mantener sesiones asociadas a una conexión. Requiere .NET 8.0 o una versión posterior.
Utilice el Client TCP nativo cuando necesite:
- un mejor rendimiento, especialmente al procesar datos por columnas;
- bloques de datos columnares;
- conexiones persistentes;
- sesiones asociadas a una conexión mediante
OpenSessionAsync; - callbacks de progreso, perfil, log, totales y valores extremos;
- propagación del contexto de trazas W3C a ClickHouse.