Work with Live Elasticsearch Data in Power Query



Use CData Connect Cloud to connect to Elasticsearch data and work with live Elasticsearch data in Microsoft Power Query.

Power Query is a data transformation and data preparation engine. When paired with CData Connect Cloud, you get instant, cloud-to-cloud access to Elasticsearch data from Power Query. This article shows how to connect to Connect Cloud from Power Query through Microsoft Excel and get live access to Elasticsearch data for transformation and preparation.

CData Connect Cloud provides a pure SQL, cloud-to-cloud interface for Elasticsearch, allowing you to easily integrate with live Elasticsearch data in Power Query — without replicating the data. CData Connect Cloud looks exactly like a SQL Server database to Power Query and uses optimized data processing out of the box to push all supported SQL operations (filters, JOINs, etc) directly to Elasticsearch, leveraging server-side processing to quickly return Elasticsearch data.

Configure Elasticsearch Connectivity for Power Query

Connectivity to Elasticsearch from Power Query is made possible through CData Connect Cloud. To work with Elasticsearch data from Power Query, we start by creating and configuring a Elasticsearch connection.

  1. Log into Connect Cloud, click Connections and click Add Connection
  2. Select "Elasticsearch" from the Add Connection panel
  3. Enter the necessary authentication properties to connect to Elasticsearch.

    Set the Server and Port connection properties to connect. To authenticate, set the User and Password properties, PKI (public key infrastructure) properties, or both. To use PKI, set the SSLClientCert, SSLClientCertType, SSLClientCertSubject, and SSLClientCertPassword properties.

    The data provider uses X-Pack Security for TLS/SSL and authentication. To connect over TLS/SSL, prefix the Server value with 'https://'. Note: TLS/SSL and client authentication must be enabled on X-Pack to use PKI.

    Once the data provider is connected, X-Pack will then perform user authentication and grant role permissions based on the realms you have configured.

  4. Click Create & Test
  5. Navigate to the Permissions tab in the Add Elasticsearch 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 does not support OAuth authentication, you can create a Personal Access Token (PAT) to use for authentication. Best practices would dictate that you create a separate PAT for each service, to maintain granularity of access.

  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 Elasticsearch data from Power Query.

Working with Live Elasticsearch Data in Power Query

With the connection to Connect Cloud configured, you are ready to work with live Elasticsearch data in Power Query.

  1. In Microsoft Excel, open the Power Query Editor (from the Data ribbon, click Get Data -> Launch Power Query Editor)
  2. Click New Source -> SQL Server
  3. In the SQL Server database modal:
    • Set Server to tds.cdata.com,14333
    • (Optional) Set Database to the name of the Elasticsearch connection (e.g. Elasticsearch1 )
  4. In the SQL Server credentials modal, select "Database" and
    • Set User to your Connect Cloud username (e.g. [email protected] )
    • Set Password to the PAT for the above user
  5. Click Connect
  6. Select the table(s) you wish to work with in the Navigator and click "OK"

At this point, you have live access to Elasticsearch data from Power Query for transformation and preparation.

SQL Access to Elasticsearch Data

Now you have a direct connection to live Elasticsearch data from Microsoft Power Query. You can create more connections and transform and preparte your data to better drive business — all without replicating Elasticsearch data.

To get real-time data access to 100+ SaaS, Big Data, and NoSQL sources directly from your cloud applications, sign up for a free trial of CData Connect Cloud.

Ready to get started?

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

Free Trial