Model Amazon Athena Data Using Azure Analysis Services



Leverage CData Connect Cloud to establish a connection between Azure Analysis Services and Amazon Athena, enabling the direct import of real-time Amazon Athena data.

Microsoft Azure Analysis Services (AAS) is a fully-managed platform-as-a-service (PaaS) offering that delivers enterprise-grade data models in the cloud. When combined with CData Connect Cloud, AAS facilitates immediate cloud-to-cloud access to Amazon Athena data for applications. This article outlines the process of connecting to Amazon Athena via Connect Cloud and importing Amazon Athena data into Visual Studio using an AAS extension.

CData Connect Cloud offers a seamless cloud-to-cloud interface tailored for Amazon Athena, enabling you to create live models of Amazon Athena data in Azure Analysis Services without the need to replicate data to a natively supported database. While constructing high-quality semantic data models for business reports and client applications, Azure Analysis Services formulates SQL queries to retrieve data. CData Connect Cloud is equipped with optimized data processing capabilities right from the start, directing all supported SQL operations, including filters and JOINs, directly to Amazon Athena. This leverages server-side processing for swift retrieval of the requested Amazon Athena data.

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


Prerequisites

Before you connect, you must first do the following:

  • Connect a data source to your CData Connect Cloud account. Detailed steps are provided in the next section.
  • Generate a Personal Access Token (PAT). Copy this down, as it acts as your password during authentication.
  • Create a server in Azure Analysis Services to which you will deploy your data from CData Connect Cloud.
  • Install and configure an On-Premise Gateway in your system. This will pull data from the source via CData Connect Cloud into the Azure Analysis Services project and deploy models to the server. Refer to the given link to find the detailed process.

Configure Amazon Athena Connectivity for AAS

Connectivity to Amazon Athena from Azure Analysis Services is made possible through CData Connect Cloud. To work with Amazon Athena data from Azure Analysis Services, we start by creating and configuring a Amazon Athena connection.

  1. Log into Connect Cloud, click Connections and click Add Connection
  2. Select "Amazon Athena" from the Add Connection panel
  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.

  4. Click Create & Test
  5. Navigate to the Permissions tab in the Add Amazon Athena Connection page and update the User-based permissions.

Add a Personal Access Token

If you are connecting from a service, application, platform, or framework that lacks support for OAuth authentication, you have the option to generate a Personal Access Token (PAT) for authentication purposes. It's advisable to follow best practices by creating a distinct PAT for each service to uphold access granularity.

  1. Click on your username at the top right of the Connect Cloud app and click User Profile.
  2. On the User Profile page, scroll down to the Personal Access Tokens section and click Create PAT.
  3. Give your PAT a name and click Create.
  4. The personal access token is only visible at creation, so be sure to copy it and store it securely for future use.

With the connection configured, you are ready to connect to Amazon Athena data from Visual Studio using Azure Analysis Services.

Connect to Amazon Athena in Visual Studio Using AAS

The steps below outline connecting to CData Connect Cloud from Azure Analysis Services to create a new Amazon Athena data source. You will need the Microsoft Analysis Services Project extension installed in Microsoft Visual Studio to continue.

  1. In Visual Studio, create a new project. Select Analysis Services Tabular Project. Click on Next.
  2. In the Configure your new project dialog box, enter a name for your project in the Project name field. Fill in the rest of the fields.
  3. Click on Create. The Tabular model designer dialog box opens. Select Workspace server and enter the address of your Azure Analysis Services server (for example, asazure://eastus.azure.windows.net/myAzureServer). Also, make sure to select the option SQL Server 2022 / Azure Analysis Services (1600) from the Compatibility level dropdown. Click on Test Connection to check if the connection details are correct. Click OK and sign in to your server.
  4. Now, click on OK to create the project. Your Visual Studio window should resemble the following screenshot:
  5. In the Tabular Model Explorer window of Visual Studio, right-click Data Sources and select Import From Data Source.
  6. In the Get Data window, select SQL Server database and click Connect. In the Server field, enter the Virtual SQL Server endpoint and the port separated by a comma: e.g., “tds.cdata.com, 14333”, and click on OK.
  7. Click on Database and enter the following information:
    • User name: Enter your CData Connect Cloud username. This is displayed in the top-right corner of the CData Connect Cloud interface. For example, [email protected].
    • Password: Enter the PAT you generated on the Settings page.

    Click on Connect. If successful, the Navigator window will pop up.

  8. In the Navigator window, search and select the tables of your choice
  9. You should now see the Salesforce table populated with data in the preview section on the right panel.
  10. Click on Load to import the data.

Now that you have imported the Amazon Athena data into your data model, you are ready to deploy the project to Azure Analysis Services for use in business reports, client applications, and more.

Get CData Connect Cloud

To get live data access to 100+ SaaS, Big Data, and NoSQL sources directly from your cloud applications, try CData Connect Cloud today!

Ready to get started?

Learn more about CData Connect Cloud or sign up for free trial access:

Free Trial