This will create a connection to an Athena database. You'll be asked to provide values for the following properties:
host: this is the S3 bucket where you want results of your queries to be stored. This bucket should have a format like: s3://<bucket name> . You can access it by inspecting the details of your work group.
key: the access key id of an IAM user (with programmatic access) that is authorized to query AWS Athena (has query access to Athena, read access to Glue and read access to any S3 buckets or connected databases).
token: the secret access key of the IAM user.
region: the region of your AWS Athena cluster.
Workgroup: the workgroup of your AWS Athena cluster. Notes :
AWS Athena only supports lowercase table and column names and only lowercase special characters (even though you can create these tables in AWS Glue). More information here: https://docs.aws.amazon.com/athena/latest/ug/tables-databases-columns-names.html
The connector requires the IAM user to have read-level authorization to access AWS Athena, AWS Glue and any of the sources (eg. S3 buckets or databases) queried. The user must also have read & write access to the S3 results bucket used.
To ensure that e.g. only the Luzmo application can access your AWS Athena instance, it is highly recommended to whitelist Luzmo's range of static IP addresses. You should whitelist Luzmo's range of IP addresses as described here .
npm install @luzmo/nodejs-sdk{
"properties": {
"key": "access key id",
"host": "s3://bucketurl",
"region": "eu-west-1",
"workgroup": "primary"
},
"id": "0d698d7f-1574-44c0-b72f-bab8b6cce5cb",
"provider": "amazonathena",
"date": "2024-08-14T13:25:10.077Z",
"identifier": null,
"expiry": null,
"scope": null,
"host": null,
"name": "Amazon Athena",
"description": null,
"port": null,
"active": true,
"invalid": false,
"cache": 0,
"synced": false,
"version": null,
"datasets_meta_sync_interval": 1,
"datasets_meta_sync_enabled": true,
"created_at": "2024-08-14T13:25:10.078Z",
"updated_at": "2024-08-14T13:25:10.166Z",
"user_id": "abca9830-0dad-4b11-a6d4-23972c124020",
"plugin_id": "c47696fa-ebe2-4aaa-918a-2a0891dd8946",
"shareable_id": "dbbda255-68c1-4598-8ad0-6511fcbeb899"
}