We are proud to share our inclusion in the 2024 Gartner Magic Quadrant for Data Integration Tools. We believe this recognition reflects the differentiated business outcomes CData delivers to our customers.
Get the Report →Use the CData ODBC Driver for Elasticsearch in MicroStrategy
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.
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
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.*
- Open MicroStrategy Developer and select a Project Source.
- Navigate to Administration -> Configuration Managers -> Database Instances and right-click to add a new instance.
- Name the instance, select Generic DBMS as the database connection type, and create a new database connection.
- In the database connection wizard, name the connection and create a new Database Login name, using filler values for the user and password.
- Select the DSN that you configured earlier as the ODBC data source (i.e., CData Elasticsearch Sys).
- Select the newly created database connection.
- In the Project Source, right-click the project and open the Project configuration.
- Navigate to Database Instances and select the newly created database instance.
- 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.
- Select your project and click Schema -> Warehouse Catalog.
- 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
- To retrieve the list of tables, use the following query:
- 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.