VOOZH about

URL: https://www.cdata.com/kb/tech/elasticsearch-cloud-powerapps.rst

⇱ Integrate Live Elasticsearch Data into Custom Business Apps Built in Power Apps


Integrate Live Elasticsearch Data into Custom Business Apps Built in Power Apps

πŸ‘ Jerod Johnson
Jerod Johnson
Director, Technology Evangelism
Use CData Connect AI to connect to Elasticsearch data and integrate live Elasticsearch data into apps built in Microsoft Power Apps.

Power Apps is a service for building and using custom business apps that connect to your data and work across the web and mobile β€” without the time and expense of custom software development. When paired with CData Connect AI, you get instant, cloud-to-cloud access to Elasticsearch data from the apps you build using Power Apps. This article shows how to connect to Connect AI from Power Apps and build an app based on live Elasticsearch data.

CData Connect AI provides a pure SQL, cloud-to-cloud interface for Elasticsearch, allowing you to easily integrate with live Elasticsearch data in Power Apps β€” without replicating the data. CData Connect AI looks exactly like a SQL Server database to Power Apps 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.

About Elasticsearch Data Integration

Accessing and integrating live data from Elasticsearch has never been easier with CData. Customers rely on CData connectivity to:

  • Access both the SQL endpoints and REST endpoints, optimizing connectivity and offering more options when it comes to reading and writing Elasticsearch data.
  • Connect to virtually every Elasticsearch instance starting with v2.2 and Open Source Elasticsearch subscriptions.
  • Always receive a relevance score for the query results without explicitly requiring the SCORE() function, simplifying access from 3rd party tools and easily seeing how the query results rank in text relevance.
  • Search through multiple indices, relying on Elasticsearch to manage and process the query and results instead of the client machine.

Users frequently integrate Elasticsearch data with analytics tools such as Crystal Reports, Power BI, and Excel, and leverage our tools to enable a single, federated access layer to all of their data sources, including Elasticsearch.

For more information on CData's Elasticsearch solutions, check out our Knowledge Base article: CData Elasticsearch Driver Features & Differentiators.


Getting Started


Configure Elasticsearch Connectivity for Power Apps

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

  1. Log into Connect AI, click Sources, and then click Add Connection
  2. πŸ‘ Adding a Connection
  3. Select "Elasticsearch" from the Add Connection panel
  4. πŸ‘ Selecting a data source
  5. 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.

    πŸ‘ Configuring a connection (Salesforce is shown)
  6. Click Save & Test
  7. Navigate to the Permissions tab in the Add Elasticsearch Connection page and update the User-based permissions. πŸ‘ Updating permissions

Add a Personal Access Token

When connecting to Connect AI through the REST API, the OData API, or the Virtual SQL Server, a Personal Access Token (PAT) is used to authenticate the connection to Connect AI. It is best practice to create a separate PAT for each service to maintain granularity of access.

  1. Click on the Gear icon () at the top right of the Connect AI app to open the settings page.
  2. On the Settings page, go to the Access Tokens section and click Create PAT.
  3. Give the PAT a name and click Create. πŸ‘ Creating a new PAT
  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 and a PAT generated, you are ready to connect to Elasticsearch data from Power Apps.

Connecting to CData Connect AI

To use Connect AI to integrate Elasticsearch data into your Power Apps, you need a new SQL Server connection:

  1. Log in to Power Apps
  2. Click Dataverse -> Connections -> New connection
  3. Select SQL Server πŸ‘ Creating a new SQL Server Connection
  4. In the connection wizard:

    • Choose to connect directly
    • Set SQL server name to tds.cdata.com,14333
    • Set SQL database name to the name of the Elasticsearch connection (e.g. Elasticsearch1)
    • Set Username to a Connect AI user (e.g. [email protected])
    • Set Password to the PAT for the above user
    • Click Create πŸ‘ Connecting to Connect AI

Building a Data-Centric App for Elasticsearch Data

With the connection to Connect AI configured, you are ready to integrate live Elasticsearch data into the apps you build in Power Apps.

  1. Log in to Power Apps
  2. Click Create and select "SQL" πŸ‘ Creating a new app from data
  3. Select the SQL Server connection you created
  4. Search for or choose a table to work with
  5. Click Connect πŸ‘ Connecting to Elasticsearch data
  6. Customize the newly created app just like you would any other, including changing the layout and setting the fields exposed in BrowseScreen, DetailScreen, and EditScreen πŸ‘ Customizing the Elasticsearch data app

At this point, you have an app with read and write access to live Elasticsearch data that you can save and publish for use within your organization.

SQL Access to Elasticsearch Data from Cloud Applications

Now you have a direct connection to live Elasticsearch data from Microsoft Power Apps. You can create more connections and apps to drive business β€” all without replicating Elasticsearch data.

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