Analyze Amazon Athena Data in Infragistics Reveal



Use the CData API Server to create an OData API on top of Amazon Athena data and visualize live Amazon Athena data in Ingragistics Reveal.

Reveal is a data visualization solution provided by Infragistics and can be paired with the CData API Server to build dynamic dashboards from live Amazon Athena data. The CData API Server generates an OData API for Amazon Athena, which is natively consumable in Reveal. In this article, we walk through connecting to Amazon Athena in API Server and connecting to the API Server from Infragistics Reveal to create a simple dashboard.

About Amazon Athena Data Integration

CData provides the easiest way to access and integrate live data from Amazon Athena. Customers use CData connectivity to:

  • Authenticate securely using a variety of methods, including IAM credentials, access keys, and Instance Profiles, catering to diverse security needs and simplifying the authentication process.
  • Streamline their setup and quickly resolve issue with detailed error messaging.
  • Enhance performance and minimize strain on client resources with server-side query execution.

Users frequently integrate Athena with analytics tools like Tableau, Power BI, and Excel for in-depth analytics from their preferred tools.

To learn more about unique Amazon Athena use cases with CData, check out our blog post: https://www.cdata.com/blog/amazon-athena-use-cases.


Getting Started


Connect to Amazon Athena from API Server

CData API Server uses a straightforward, point-and-click interface to connect to data sources and generate APIs.

  1. Open API Server and click Settings -> Connection -> Add Connection
  2. Select "Amazon Athena"
  3. Enter the necessary authentication properties to connect to Amazon Athena.

    Authenticating to Amazon Athena

    To authorize Amazon Athena requests, provide the credentials for an administrator account or for an IAM user with custom permissions: Set AccessKey to the access key Id. Set SecretKey to the secret access key.

    Note: Though you can connect as the AWS account administrator, it is recommended to use IAM user credentials to access AWS services.

    Obtaining the Access Key

    To obtain the credentials for an IAM user, follow the steps below:

    1. Sign into the IAM console.
    2. In the navigation pane, select Users.
    3. To create or manage the access keys for a user, select the user and then select the Security Credentials tab.

    To obtain the credentials for your AWS root account, follow the steps below:

    1. Sign into the AWS Management console with the credentials for your root account.
    2. Select your account name or number and select My Security Credentials in the menu that is displayed.
    3. Click Continue to Security Credentials and expand the Access Keys section to manage or create root account access keys.

    Authenticating from an EC2 Instance

    If you are using the CData Data Provider for Amazon Athena 2018 from an EC2 Instance and have an IAM Role assigned to the instance, you can use the IAM Role to authenticate. To do so, set UseEC2Roles to true and leave AccessKey and SecretKey empty. The CData Data Provider for Amazon Athena 2018 will automatically obtain your IAM Role credentials and authenticate with them.

    Authenticating as an AWS Role

    In many situations it may be preferable to use an IAM role for authentication instead of the direct security credentials of an AWS root user. An AWS role may be used instead by specifying the RoleARN. This will cause the CData Data Provider for Amazon Athena 2018 to attempt to retrieve credentials for the specified role. If you are connecting to AWS (instead of already being connected such as on an EC2 instance), you must additionally specify the AccessKey and SecretKey of an IAM user to assume the role for. Roles may not be used when specifying the AccessKey and SecretKey of an AWS root user.

    Authenticating with MFA

    For users and roles that require Multi-factor Authentication, specify the MFASerialNumber and MFAToken connection properties. This will cause the CData Data Provider for Amazon Athena 2018 to submit the MFA credentials in a request to retrieve temporary authentication credentials. Note that the duration of the temporary credentials may be controlled via the TemporaryTokenDuration (default 3600 seconds).

    Connecting to Amazon Athena

    In addition to the AccessKey and SecretKey properties, specify Database, S3StagingDirectory and Region. Set Region to the region where your Amazon Athena data is hosted. Set S3StagingDirectory to a folder in S3 where you would like to store the results of queries.

    If Database is not set in the connection, the data provider connects to the default database set in Amazon Athena.

Add Amazon Athena Resource Definitions in API Server

After connecting to Amazon Athena, create Resources, which represent API endpoints for Amazon Athena data.

  1. Click Settings -> Resources -> Add Resource
  2. Select the Amazon Athena connection
  3. Select the table you wish to retrieve and click Next
  4. (Optional) Edit the resource to select specific fields and more
  5. Save the settings

Add an API Server User

Create a User to connect to Amazon Athena from Reveal through API Server.

  1. Click Settings -> Users
  2. Click Add
  3. Configure a User with access to the Amazon Athena Connection and Resource(s)

(Optional) Configure Cross-Origin Resource Sharing (CORS)

When accessing and connecting to multiple different domains from an application such as Ajax, there is a possibility of violating the limitations of cross-site scripting. In that case, configure the CORS settings in Settings -> Server.

  • Enable cross-origin resource sharing (CORS): ON
  • Allow all domains without '*': ON
  • Access-Control-Allow-Methods: GET, PUT, POST, OPTIONS
  • Access-Control-Allow-Headers: Authorization

Save the changes to the settings.

Create a Dashboard in Reveal

With the API Server configured, we can visualize Amazon Athena data in Reveal.

  1. Log into Reveal and click Dashboards -> New
  2. Click Data Source -> OData Feed
  3. Specify the API Server API endpoint URL, for example: https://serverurl/api.rsc
  4. Select Generic Credentials and specify the API Server username and authentication token
  5. Select the entity you wish to visualize
  6. Select fields and choose a chart type

More Information & Free Trial

At this point, you have created a simple dashboard from live Amazon Athena data. For more information on creating OData feeds from Amazon Athena (and more than 150 other sources), visit the API Server page. Download a free, 30-day trial and start working live Amazon Athena data in tools that consume OData APIs.

Ready to get started?

Learn more or sign up for a free trial:

CData API Server