How to Query Elasticsearch Data in MySQL Workbench



Execute MySQL queries against live Elasticsearch data from MySQL Workbench.

You can use the SQL Gateway from the ODBC Driver for Elasticsearch to query Elasticsearch data through a MySQL interface. Follow the procedure below to start the MySQL remoting service of the SQL Gateway and work with live Elasticsearch data in MySQL Workbench.

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 Data

If you have not already done so, provide values for the required connection properties in the data source name (DSN). You can use the built-in Microsoft ODBC Data Source Administrator to configure the DSN. This is also the last step of the driver installation. See the "Getting Started" chapter in the help documentation for a guide to using the Microsoft ODBC Data Source Administrator to create and configure a DSN.

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.

Configure the SQL Gateway

See the SQL Gateway Overview to set up connectivity to Elasticsearch data as a virtual MySQL database. You will configure a MySQL remoting service that listens for MySQL requests from clients. The service can be configured in the SQL Gateway UI.

Creating a MySQL Remoting Service in SQL Gateway (Salesforce is shown)

Query Elasticsearch from MySQL Workbench

The steps below outline connecting to the virtual Elasticsearch database created in the SQL Gateway from MySQL Workbench and issuing basic queries to work with live Elasticsearch data.

Connect to Elasticsearch through the SQL Gateway

  1. In MySQL Workbench, click to add a new MySQL connection.
  2. Name the connection (CData SQL Gateway for Elasticsearch).
  3. Set the Hostname, Port, and Username parameters to connect to the SQL Gateway.
  4. Click Store in Vault to set and store the password.
  5. Click Test Connection to ensure the connection is configured properly and click OK.

NOTE: When we refer to Username and Password, we mean the credentials for the user(s) created for the SQL Gateway.

Query Elasticsearch Data

  1. Open the connection you just created (CData SQL Gateway for Elasticsearch).
  2. Click File -> New Query Tab.
  3. Write a SQL query to retrieve Elasticsearch data, like SELECT * FROM `CData Elasticsearch Sys`.Orders;

With access to live Elasticsearch data from MySQL Workbench, you can easily query and update Elasticsearch, just like you would a MySQL database. Get started now with a free, 30-day trial of the CData ODBC Driver for Elasticsearch and the CData SQL Gateway.

Ready to get started?

Download a free trial of the Elasticsearch ODBC Driver to get started:

 Download Now

Learn more:

Elasticsearch Icon 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.