Create Apps from Elasticsearch Data in Qlik Sense Cloud

Ready to get started?

Learn more or sign up for a free trial:

CData Connect



Use the CData Connect Cloud to create an OData API for Elasticsearch data and build apps from live Elasticsearch data in Qlik Sense Cloud.

Qlik Sense Cloud allows you to create and share data visualizations and interact with information in new ways. The CData Connect Cloud creates a virtual database for Elasticsearch and can be used to generate an OData API (natively consumable in Qlik Sense Cloud) for Elasticsearch. By pairing Qlik Sense Cloud with the CData Connect Cloud, you get true cloud-to-cloud connectivity to all of your SaaS and cloud-based Big Data and NoSQL sources — no need to migrate your data or write your integrations. Simply connect to Connect Cloud from Qlik Sense Cloud as you would any other REST service and get instant, live access to your Elasticsearch data.

In this article, we walk through two connections:

  1. Connecting to Elasticsearch in Connect Cloud
  2. Connecting to Connect Cloud from Qlik Sense Cloud to create a model and build a simple dashboard

Configure Connect Cloud to Connect to Elasticsearch

To connect to Elasticsearch data from Qlik Sense Cloud, you need to configure Elasticsearch access from your Connect Cloud instance. This means creating a user, connecting to Elasticsearch, adding OData endpoints, and (optionally) configuring CORS.

Add a Connect Cloud User

Create a Cloub Hub User to connect to Elasticsearch from Qlik Sense Cloud.

  1. Click Users -> Add
  2. Configure a User
  3. Click Save Changes and make note of the Authtoken for the new user

Connect to Elasticsearch from Connect Cloud

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

  1. Open Connect Cloud and click Databases
  2. Select "Elasticsearch" from Available Data Sources
  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 Test Database
  5. Click Privileges -> Add, and add the new user (or an existing user) with the appropriate permissions (SELECT is all that is required for Reveal)

Add Elasticsearch OData Endpoints in Connect Cloud

After connecting to Elasticsearch, create OData Endpoint for the desired table(s).

  1. Click OData -> Tables -> Add Tables
  2. Select the Elasticsearch database
  3. Select the table(s) you wish to work with and click Next
  4. (Optional) Edit the resource to select specific fields and more
  5. Save the settings

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

When accessing and connecting to multiple 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 OData -> Settings.

  • 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 Qlik Sense App from Elasticsearch Data

With the connection to Elasticsearch and OData endpoints created, we are ready to add Elasticsearch data to a Qlik Sense app for visualizations, analytics, reporting, and more.

Create a New App and Upload Data

  1. Log into your Qlik Sense instance and click the button to create a new app
  2. Name and configure the new app and click "Create"
  3. In the workspace, click to open the new app
  4. Click to add data from files and other sources
  5. Select the REST connector and set the configuration properties. For the most part, you will use the default values, with the following exceptions:
    • URL: Set this to the API endpoint for your Elasticsearch table, using the @CSV URL parameter to ensure a CSV response (i.e. https://www.cdatacloud.net/api.rsc/MYINSTANCE/Elasticsearch_Orders?@CSV)
    • Authentication Schema: Set this to "Basic"
    • User Name: Set this to the user name you configured above
    • Password: Set this to the Authtoken for the above user
  6. Click "Create" to query Connect Cloud for the Elasticsearch data
  7. Check "CSV has header" and under "Tables," select "CSV_source"
  8. Select columns and click "Add data"

Generate Insights or Customize Your App

With the data loaded into Qlik Sense, you are ready to begin discovering insights. Click "Generate insights" to let Qlik analyze your data. Otherwise, you can build custom visualizations, reports, and dashboards based on your Elasticsearch data.

More Information & Free Trial

Now, you have created a simple but powerful dashboard from live Elasticsearch data. For more information on creating OData feeds from Elasticsearch (and more than 200 other data sources), visit the Connect Cloud page. Sign up for a free trial and start working with live Elasticsearch data in Qlik Sense Cloud.