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 py3

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page