The Bold BI Dashboard Designer supports connecting to the Amazon Athena database using the SQL Live Query (C# API).
To choose an Amazon Athena data source, follow these steps:
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.
The Amazon Athena data source can be accessed in Bold BI using the live connection mode.
After clicking on the data source, the NEW DATA SOURCE configuration panel opens. Follow the given steps to create an Amazon Athena data source:
You can use the Code View option for passing a query to display data.
NOTE: In the future, you can edit the connection information using the Edit Connection option.
We have added support for custom attributes and dashboard parameters in the data source connection. You can now connect to the data source using custom attributes or dashboard parameters.
Custom Attribute
Dashboard Parameter
Note: Please refer to the Dashboard Parameter Documentation and Custom Attributes Documentation for more details.
The type while creating the data source needs to be amazonathena.
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 |
---|---|
RegionEndpoint required | string
Region in which the server is available
The region code must be provided. Examples: us-east-1, ap-south-1, and more. A list of available regions is provided in the following link.
The available AWS regions
|
AwsAccessKeyId required | string
AWS access key of the account. |
AwsSecretAccessKey required | string
AWS secret key of the account. |
OutputLocation required | string
A valid S3 location to store the query results. Format: s3://bucketname/foldername
The following link explains the s3 output location in Athena and its usage.
Output location in the Athena
|
Database required | string
database which needs to be connected |
Schemaname required for table mode | string
Enter a valid Schemaname which will mostly be the database name. |
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 |
---|---|
RegionEndpoint required | string
Region in which the server is available
The region code must be provided. Examples: us-east-1, ap-south-1, and more. A list of available regions is provided in the following link.
The available AWS regions
|
AwsAccessKeyId required | string
AWS access key of the account. |
AwsSecretAccessKey required | string
AWS secret key of the account. |
OutputLocation required | string
A valid S3 location to store the query results. Format: s3://bucketname/foldername
The following link explains the s3 output location in Athena and its usage.
Output location in the Athena
|
Database required | string
database which needs to be connected |
Schema required for table mode | string
Enter a valid Schemaname, which will mostly be the database name. |
AdvancedSettings optional | string
Additional optional connection parameters can be provided. By default, it is empty. |
Parameters | Details |
---|---|
Name required | string
Name of the Expression
|
Expression required | string
Expression
|
NOTE: For editing a Data Source via API, all parameters are optional. The required parameter that needs to be changed can 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":
{
"RegionEndpoint": "string",
"AwsAccessKeyId": "string",
"AwsSecretAccessKey": "string",
"OutputLocation": "string",
"Database": "string",
"Schemaname": "string",
"Tablename": "string",
"AdvancedSettings": "string",
"Expressions" : [{
"Name": "Expression1",
"Expression" : "SUM(numeric expression)"
},
{
"Name": "Expression2",
"Expression" : "UPPER(string expression)"
}]
}
"Connection":
{
"RegionEndpoint": "string",
"AwsAccessKeyId": "string",
"AwsSecretAccessKey": "string",
"OutputLocation": "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":
{
"RegionEndpoint": "string",
"AwsAccessKeyId": "string",
"AwsSecretAccessKey": "string",
"OutputLocation": "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":
{
"RegionEndpoint": "string",
"AwsAccessKeyId": "string",
"AwsSecretAccessKey": "string",
"OutputLocation": "string",
"Database": "string",
"Query": "string",
"AdvancedSettings": "string",
"Expressions" : [{
"Name": "Expression1",
"Expression" : "SUM(numeric expression)"
},
{
"Name": "Expression2",
"Expression" : "UPPER(string expression)"
}]
}
"Connection": {
"Database": "string",
"RegionEndpoint": "string",
"OutputLocation": "string",
"AwsAccessKeyId": "string",
"AwsSecretAccessKey": "string",
"Schema": "string"
}