Buffer inserts and send big requests to ClickHouse server
2.0K
Clickhouse insert buffer queue using RabbitMQ STOMP protocol.
Run container with shared tmp directory:
docker run -it -v /path/to/tmp:/var/www/clickhouse-queue/tmp --name clickhouse-queue pnixx/clickhouse-queue
Environment variables:
CLICKHOUSE_HOST - ClickHouse host for inserts, default localhostCLICKHOUSE_PORT - ClickHouse port for inserts, default 8123CLICKHOUSE_DB - ClickHouse database for inserts, default defaultCLICKHOUSE_USER - ClickHouse user, optionalCLICKHOUSE_PASSWORD - ClickHouse password, optionalCLICKHOUSE_SSL - ClickHouse need use HTTPS connection instead HTTP, default falseRABBIT_HOST - RabbitMQ host for subscribe, default localhostRABBIT_STOMP_PORT - RabbitMQ STOMP port, default 61613RABBIT_USER - RabbitMQ STOMP login user, default guestRABBIT_PASSWORD - RabbitMQ STOMP login password, default guestRABBIT_QUEUE - RabbitMQ queue for buffer data, default clickhouseRABBIT_VHOST - RabbitMQ vhost, default /MAX_DELAY - time flush data to ClickHouse, default 5MAX_FILE_SIZE - max buffer size before flush to ClickHouse, default 5242880LOG_LEVEL - output log level, default warningHeader table: to insert data into the specified table
Body: JSON as string row data
{"column1": "data1", "column2": "data2"}
Example publish:
rabbitmqadmin publish routing_key=clickhouse payload='{"column1":"data1","column2":"data2"}' properties='{"headers":{"table":"messages"}}'
Donations to this project are going directly to PNixx, the original author of this project:
1H3rhpf7WEF5JmMZ3PVFMQc7Hm29THgUfN0x6F094365A70fe7836A633d2eE80A1FA9758234d542gP71qLB5M43RuDnrQ3vSJFFxis9Kw9VMURhpx9NLQRRwNvaZRjm2TFojAMC8Fk1BQhZNKyWhoyJSn5Ak9kppgZPjE17ZhUQB5RntjBNMA6qXjuqTrl2TcqceNu3vMOj1AyyW3eeGGI-QdContent type
Image
Digest
sha256:05b6a7a06…
Size
228.6 MB
Last updated
about 1 year ago
docker pull pnixx/clickhouse-queue