Skip to main content

A thread-safe connection pool for ClickHouse.

Project description

ClickHouse Pool for Python

A thread-safe connection pool for ClickHouse. Inspired by psycopg2 and using clickhouse-driver for connections.

Installation

pip install clickhouse-pool

Quick Start

from clickhouse_pool.pool import ChPool

# create a pool
pool = ChPool()

# get a clickhouse-driver client
with pool.get_client() as client:
    # execute sql and print the result
    result = client.execute("SELECT * FROM system.numbers LIMIT 5")
    print(result)

# always close all connections in the pool once you're done with it
pool.close_all_connections()

Connection Pool Size

To change the connection pool size,

# create a pool with minimum 20 connections and a max of 40
pool = ChPool(connections_min=20, connections_max=40)

# get a clickhouse-driver client
with pool.get_client() as client:
    # execute sql and print the result
    result = client.execute("SELECT * FROM system.numbers LIMIT 5")
    print(result)

# always close all connections in the pool once you're done with it
pool.close_all_connections()

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

clickhouse-pool-0.2.0.tar.gz (3.2 kB view hashes)

Uploaded Source

Built Distribution

clickhouse_pool-0.2.0-py3-none-any.whl (5.5 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page