Connect to the Aiven for ClickHouse® service with Python#
To connect to your Aiven for ClickHouse® service with Python, you can use either the native protocol or the HTTPS protocol. This article provides you with instructions for both scenarios.
Connect with the native protocol#
Pre-requisites#
Identify connection information#
To run the code for connecting to your service, first identify values of the following variables:
Variable |
Description |
---|---|
|
|
|
|
|
|
|
|
|
Query you want to run, for example |
Connect to the service#
Replace the placeholders in the code with meaningful information on your service connection and run the code.
from clickhouse_driver import Client
client = Client(user="USERNAME", password="PASSWORD", host="HOST", port=NATIVE_PORT, secure=True)
print(client.execute("SELECT 1"))
Connect with HTTPS#
Pre-requisites#
Identify connection information#
To run the code for connecting to your service, first identify values of the following variables:
Variable |
Description |
---|---|
|
|
|
Query you want to run, for example |
|
|
|
|
|
|
|
Format for the output from your query, for example |
Connect to the service#
Replace the placeholders in the code with meaningful information on your service connection and run the code.
import requests
response = requests.post(
"https://HOST:HTTPS_PORT",
params={"query": "SELECT 1"},
headers={
"X-ClickHouse-Database": "system",
"X-ClickHouse-User": "USERNAME",
"X-ClickHouse-Key": "PASSWORD",
"X-ClickHouse-Format": "JSONCompact",
})
print(response.text)
Expected result
Now you have your service connection set up and you can proceed to uploading data into your database.
See also
For information on how to connect to the Aiven for Clickhouse service with the ClickHouse client, see Connect with the ClickHouse client.