Connect to Live Elasticsearch Data in MicroStrategy through CData Connect Cloud

Ready to get started?

Learn more or sign up for a free trial:

CData Connect



Create a virtual database for Elasticsearch in CData Connect Cloud and connect to it from MicroStrategy.

MicroStrategy is an analytics and mobility platform that enables data-driven innovation. When you pair MicroStrategy with CData Connect Cloud, you gain database-like access to live Elasticsearch data from MicroStrategy, expanding your reporting and analytics capabilities. In this article, we walk through creating a virtual database for Elasticsearch in Connect Cloud and connecting to Connect Cloud in MicroStrategy to create a simple visualization of Elasticsearch data.

As a cloud-based integration platform, Connect Cloud is ideal for working with cloud-based BI and analytics tools. With no servers to configure or data proxies to set up, you can simply use the web-based UI to create a virtual database for Elasticsearch and connect from MicroStrategy to start performing analytics based on live Elasticsearch data.

Configuring Connect Cloud

To work with live Elasticsearch data in MicroStrategy, we need to create a virtual database for Elasticsearch in Connect Cloud.

Create a Virtual MySQL Database for Elasticsearch in Connect Cloud

CData Connect Cloud uses a straightforward, point-and-click interface to connect to data sources and create virtual databases.

  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

Connect to and Visualize Elasticsearch Data Using MicroStrategy

You can connect to Elasticsearch in MicroStrategy by adding a data source based on the native MySQL functionality. Once you have created a data source, you can build dynamic visualizations of Elasticsearch data in MicroStrategy.

  1. Open MicroStrategy and select your project.
  2. Click Add External Data, select Databases, and use Select Tables as the Import Option.
  3. In the Import from Tables wizard, click to add a new Data Source.
  4. Select MySQL in the Database menu and select MySQL 5.x in the Version menu.
  5. Set the connection properties as follows:
    • Server Name: the URL for your Connect Cloud instance (i.e.: myinstance.cdatacloud.net)
    • Port Number: the port for your Connect Cloud MySQL service (3306 by default)
    • Database Name: the name of your virtual Elasticsearch database (i.e.: Elasticsearch1)
    • User: a Connect Cloud user with permissions to access your Elasticsearch database
    • Password: the password for your Connect Cloud user
    • Data Source Name: a name for the new external data source, like "Connect Cloud Elasticsearch"
  6. Expand the menu for the new data source and choose "Edit Catalog Options"
  7. Edit the "SQL statement retrieve columns ..." query to include TABLE_SCHEMA = '#?Schema_Name?#' in the WHERE clause, and click Apply and then OK (the complete query is below).

    SELECT DISTINCT 
      TABLE_SCHEMA NAME_SPACE, 
      TABLE_NAME TAB_NAME, 
      COLUMN_NAME COL_NAME, 
      (CASE 
        WHEN 
          (DATA_TYPE LIKE '%char' AND (CHARACTER_SET_NAME='utf8' OR CHARACTER_SET_NAME='ucs2')) 
        THEN 
          CONCAT('n',DATA_TYPE) 
        ELSE 
          DATA_TYPE 
      END) DATA_TYPE, 
      CHARACTER_MAXIMUM_LENGTH DATA_LEN, 
      NUMERIC_PRECISION DATA_PREC, 
      NUMERIC_SCALE DATA_SCALE 
    FROM 
      INFORMATION_SCHEMA.COLUMNS 
    WHERE 
      TABLE_NAME 
    IN 
      (#TABLE_LIST#) AND TABLE_SCHEMA='#?Schema_Name?#' 
    ORDER BY 
      1,2,3
    
  8. Select the new data source and select the Namespace that corresponds to your virtual Elasticsearch database (like Elasticsearch1).
  9. Drag tables into the pane to import them. Note: Since we create a live connection, we can import whole tables and utilize the filtering and aggregation features native to the MicroStrategy products to customize our datasets.
  10. Click Finish, choose the option to connect live, save the query, and choose the option to create a new dossier. Live connections are possible and effective, thanks to high-performance data processing native to CData Connect Cloud.
  11. Choose a visualization, choose fields to display, and apply any filters to create a new visualization of Elasticsearch data. Data types are discovered automatically through dynamic metadata discovery. Where possible, the complex queries generated by the filters and aggregations will be pushed down to Elasticsearch, while any unsupported operations (which can include SQL functions and JOIN operations) will be managed by the CData SQL engine embedded in Connect Cloud.
  12. Once you have finished configuring the dossier, click File -> Save.

Using CData Connect Cloud with MicroStrategy, you can easily create robust visualizations and reports on Elasticsearch data. For more information on creating virtual databases for 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 MicroStrategy.