The Bold BI designer allows you to connect with multiple ClickHouse data sources to visualize and analyze the data using interactive dashboards.
To configure the ClickHouse data source, follow these steps:
Click on Data Sources in the configuration panel to add a new data connection.
Click on CREATE NEW to launch a new connection from the connection panel.
Select the ClickHouse connection in the connection panel.
NOTE: You can also create a data source from the home page by clicking on the Data Sources menu in the left menu panel and selecting Create Data Source from the data sources page.
After clicking a data source, the NEW DATA SOURCE configuration panel opens. Follow the given steps to create the ClickHouse data source:
The schema represents the collection list retrieved from the ClickHouse server. This dialog displays a list of schemas in the treeview and their corresponding values.
Drag and drop any table and click the update button to preview the data.
By default, the data design view opens with the design view. Switch to the code view by enabling the slider option in the tools pane in the data design view, as shown in the image below.
Click Save to save the data source with a relevant name.
We have added support for custom attributes and dashboard parameters to the data source connection. You can connect to the data source using custom attributes or dashboard parameters.
Custom Attribute
Dashboard Parameter
Note: Refer to the Dashboard Parameter Documentation and Custom Attributes Documentation for more details.
NOTE: In future, you can edit the connection information using the Edit Connection option.
The type while creating the data source needs to be ClickHouse.
NOTE: The ability to provide join support is available only during the creation of a new data source. Join in edit connection mode is not supported.
Parameters | Details |
---|---|
Servername required | string
Server name or Host name of the connection |
Port required | string
Port number used to connect to ClickHouse
|
Username required | string
A valid Username for the connection |
Password required | string
A valid Password for the connection |
Database required | string
database which needs to be connected |
Schemaname required for table mode | string
Enter a valid Schemaname |
Tablename required for table mode | string
Enter a valid Tablename |
JoinType Required For Join Info | string
Enter a valid JoinType For Example (Inner,Outer) |
LeftTable Required For Join Info | string
Enter a valid Left Table name |
RightTable Required For Join Info | string
Enter a valid Right Table name |
LeftField Required For Join Info | string
Enter a valid Left Table Column Name |
RightField Required For Join Info | string
Enter a valid Right Table Column Name |
Condition Required For Join Info | string
Enter a valid Condition For Example (AND,OR) |
LeftField Required For Join Info | string
Enter a valid Left Table Column Name |
Operator Required For Join Info | string
Enter a Valid Operator For Example (=,>=) |
Value Optional For only Join Info | string
Specifically choose the column values. |
Query required for code view mode | string
Enter a valid Query |
AdvancedSettings optional | string
Additional optional connection parameters can be provided. By default, it is empty. |
Expressions optional | `Array of Objects` |
Parameters | Details |
---|---|
ServerName required | string
Server name or Host name of the connection |
Port required | string
Port number used to connect to ClickHouse
|
UserName required | string
A valid Username for the connection |
Password required | string
A valid Password for the connection |
Database required | string
database which needs to be connected |
Schema required for table mode | string
Enter a valid Schemaname |
AdvancedSettings optional | string
Additional optional connection parameters can be provided. By default, it is empty. |
CommandTimeout optional | string
Enter a valid Timeout for connection. By default, it is 300 |
Parameters | Details |
---|---|
Name required | string
Name of the Expression
|
Expression required | string
Expression
|
NOTE: To edit a Data Source via API, all parameters are optional. Only the parameter that needs to be changed should be provided.
Parameters | Details |
---|---|
Name required | string
Name of the Expression
|
Expression required | string
Expression
|
Action optional | string
add/delete/edit
By default, it is add
|
NewName optional | string
For renaming the expression. This is applicable only if the Action is edit
|
"Connection":
{
"Servername": "string",
"Port": "string",
"Username": "string",
"Password": "string",
"Database": "string",
"Schemaname": "string",
"Tablename": "string",
"AdvancedSettings": "string",
"Expressions" : [{
"Name": "Expression1",
"Expression" : "SUM(numeric expression)"
},
{
"Name": "Expression2",
"Expression" : "UPPER(string expression)"
}]
}
"Connection":
{
"Servername": "string",
"Port": "string",
"Username": "string",
"Password": "string",
"Database": "string",
"Tables": [
{
"Tablename": "string",
"Schemaname": "string"
},
{
"Tablename": "string",
"Schemaname": "string"
}
],
"JoinInfo": [
{
"JoinType": "string",
"LeftTable": "string",
"RightTable": "string",
"JoinFieldInfos": [
{
"Condition": "string",
"LeftField": "string",
"Operator": "string",
"RightField": "string",
"Value": "string"
},
{
"Condition": "string",
"LeftField": "string",
"Operator": "string",
"RightField": "string",
"Value": "string"
}
]
}
],
"AdvancedSettings": "string",
"Expressions" : [{
"Name": "Expression1",
"Expression" : "SUM(numeric expression)"
},
{
"Name": "Expression2",
"Expression" : "UPPER(string expression)"
}]
}
"Connection":
{
"Servername": "string",
"Port": "string",
"Username": "string",
"Password": "string",
"Database": "string",
"Schemaname": "string",
"Tablename": "string",
"AdvancedSettings": "string",
"Expressions" : [{
"Name": "Expression1",
"Expression" : "SUM(numeric expression)",
"NewName" : "Sum",
"Action": "edit"
},
{
"Name": "Expression2",
"Expression" : "UPPER(string expression)"
"Action": "delete"
}]
}
NOTE: Through the Rest API, the data source can be created or edited with only one table. If a different table is provided in editing the data source, the table will be replaced. The widgets will be retained only if the schema is the same as the previous table.
"Connection":
{
"Servername": "string",
"Port": "string",
"Username": "string",
"Password": "string",
"Database": "string",
"Query": "string",
"AdvancedSettings": "string",
"Expressions" : [{
"Name": "Expression1",
"Expression" : "SUM(numeric expression)"
},
{
"Name": "Expression2",
"Expression" : "UPPER(string expression)"
}]
}
"Connection": {
"ServerName": "string",
"Database": "string",
"UserName": "string",
"Password": "string",
"Port": "string",
"AdvancedSettings": "string",
"CommandTimeout": "string",
"Schema": "string"
}