Use the CData ODBC Driver for Elasticsearch in MicroStrategy

Ready to get started?

Download for a free trial:

Download Now

Learn more:

Elasticsearch ODBC Driver

The Elasticsearch ODBC Driver is a powerful tool that allows you to connect with live Elasticsearch document databases, directly from any applications that support ODBC connectivity.

Access Elasticsearch like you would a database - read, write, and update through a standard ODBC Driver interface.



Connect to Elasticsearch data in MicroStrategy Developer using the CData ODBC Driver for Elasticsearch.

MicroStrategy is an analytics and mobility platform that enables data-driven innovation. When you pair MicroStrategy with the CData ODBC Driver for Elasticsearch, 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 database instance for Elasticsearch in MicroStrategy Developer and creating a Warehouse Catalog based on Elasticsearch data.

The CData ODBC Driver offers unmatched performance for interacting with live Elasticsearch data in MicroStrategy due to optimized data processing built into the driver. When you issue complex SQL queries from MicroStrategy to Elasticsearch, the driver pushes supported SQL operations, like filters and aggregations, directly to Elasticsearch and utilizes the embedded SQL engine to process unsupported operations (often SQL functions and JOIN operations) client-side. With built-in dynamic metadata querying, you can visualize and analyze Elasticsearch data using native MicroStrategy data types.

Connect to Elasticsearch as an ODBC Data Source

Information for connecting to Elasticsearch follows, along with different instructions for configuring a DSN in Windows and Linux environments (the ODBC Driver for Elasticsearch must be installed on the machine hosting the connected MicroStrategy Intelligence Server).

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.

When you configure the DSN, you may also want to set the Max Rows connection property. This will limit the number of rows returned, which is especially helpful for improving performance when designing reports and visualizations.

Windows

If you have not already, first specify connection properties in an ODBC DSN (data source name). This is the last step of the driver installation. You can use the Microsoft ODBC Data Source Administrator to create and configure ODBC DSNs.

Linux

If you are installing the CData ODBC Driver for Elasticsearch in a Linux environment, the driver installation predefines a system DSN. You can modify the DSN by editing the system data sources file (/etc/odbc.ini) and defining the required connection properties.

/etc/odbc.ini

[CData Elasticsearch Sys] Driver = CData ODBC Driver for Elasticsearch Description = My Description Server = 127.0.0.1 Port = 9200 User = admin Password = 123456

For specific information on using these configuration files, please refer to the help documentation (installed and found online).

Create a Elasticsearch Database Instance in MicroStrategy Developer

You can connect to Elasticsearch in MicroStrategy Developer by adding a database instance based on the CData ODBC Driver for Elasticsearch.*

  1. Open MicroStrategy Developer and select a Project Source.
  2. Navigate to Administration -> Configuration Managers -> Database Instances and right-click to add a new instance.
  3. Name the instance, select Generic DBMS as the database connection type, and create a new database connection.
  4. In the database connection wizard, name the connection and create a new Database Login name, using filler values for the user and password.
  5. Select the DSN that you configured earlier as the ODBC data source (i.e., CData Elasticsearch Sys).
  6. Select the newly created database connection.
  7. In the Project Source, right-click the project and open the Project configuration.
  8. Navigate to Database Instances and select the newly created database instance.
  9. Close MicroStrategy Developer and restart the connected MicroStrategy Intelligence Server to complete the database instance creation.

With the database instance configured, you will now be able to connect to Elasticsearch data from the Warehouse Catalog and Data Import.

Connect to Elasticsearch Data from the Warehouse Catalog

Once you have created a database instance based on the ODBC Driver for Elasticsearch, you can connect to data from the Warehouse Catalog.

  1. Select your project and click Schema -> Warehouse Catalog.
  2. In the Read Settings for the Catalog, click Settings and set the queries to retrieve the schema:
    • To retrieve the list of tables, use the following query:
      SELECT 
        CatalogName NAME_SPACE,
        TableName TAB_NAME 
      FROM 
        SYS_TABLES
              
    • To retrieve the list of columns for selected tables, use the following query:
      SELECT DISTINCT 
        CatalogName NAME_SPACE, 
        TableName TAB_NAME, 
        ColumnName COL_NAME, 
        DataTypeName DATA_TYPE, 
        Length DATA_LEN, 
        NumericPrecision DATA_PREC, 
        NumericScale DATA_SCALE 
      FROM 
        SYS_TABLECOLUMNS 
      WHERE 
        TableName IN (#TABLE_LIST#) 
      ORDER BY
        1,2,3
              
  3. Select tables to be used in the project.

If you are interested in connecting to Elasticsearch from other MicroStrategy products, you can read about connecting from MicroStrategy Web and connecting from MicroStrategy Desktop.


Note: connecting using a ODBC driver requires a 3- or 4-tier architecture.