Create Informatica Mappings From/To a JDBC Data Source for Elasticsearch



Create Elasticsearch data objects in Informatica using the standard JDBC connection process: Copy the JAR and then connect.

Informatica provides a powerful, elegant means of transporting and transforming your data. By utilizing the CData JDBC Driver for Elasticsearch, you are gaining access to a driver based on industry-proven standards that integrates seamlessly with Informatica's powerful data transportation and manipulation features. This tutorial shows how to transfer and browse Elasticsearch data in Informatica PowerCenter.

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


Deploy the Driver

To deploy the driver to the Informatica PowerCenter server, copy the CData JAR and .lic file, located in the lib subfolder in the installation directory, to the following folder: Informatica-installation-directory\services\shared\jars\thirdparty.

To work with Elasticsearch data in the Developer tool, you will need to copy the CData JAR and .lic file, located in the lib subfolder in the installation directory, into the following folders:

  • Informatica-installation-directory\client\externaljdbcjars
  • Informatica-installation-directory\externaljdbcjars

Create the JDBC Connection

Follow the steps below to connect from Informatica Developer:

  1. In the Connection Explorer pane, right-click your domain and click Create a Connection.
  2. In the New Database Connection wizard that is displayed, enter a name and Id for the connection and in the Type menu select JDBC.
  3. In the JDBC Driver Class Name property, enter: cdata.jdbc.elasticsearch.ElasticsearchDriver
  4. In the Connection String property, enter the JDBC URL, using the connection properties for 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.

    Built-in Connection String Designer

    For assistance in constructing the JDBC URL, use the connection string designer built into the Elasticsearch JDBC Driver. Either double-click the JAR file or execute the jar file from the command-line.

    java -jar cdata.jdbc.elasticsearch.jar

    Fill in the connection properties and copy the connection string to the clipboard.

    A typical connection string is below:

    jdbc:elasticsearch:Server=127.0.0.1;Port=9200;User=admin;Password=123456;

Browse Elasticsearch Tables

After you have added the driver JAR to the classpath and created a JDBC connection, you can now access Elasticsearch entities in Informatica. Follow the steps below to connect to Elasticsearch and browse Elasticsearch tables:

  1. Connect to your repository.
  2. In the Connection Explorer, right-click the connection and click Connect.
  3. Clear the Show Default Schema Only option.

You can now browse Elasticsearch tables in the Data Viewer: Right-click the node for the table and then click Open. On the Data Viewer view, click Run.

Create Elasticsearch Data Objects

Follow the steps below to add Elasticsearch tables to your project:

  1. Select tables in Elasticsearch, then right-click a table in Elasticsearch, and click Add to Project.
  2. In the resulting dialog, select the option to create a data object for each resource.
  3. In the Select Location dialog, select your project.

    Create a Mapping

    Follow the steps below to add the Elasticsearch source to a mapping:

    1. In the Object Explorer, right-click your project and then click New -> Mapping.
    2. Expand the node for the Elasticsearch connection and then drag the data object for the table onto the editor.
    3. In the dialog that appears, select the Read option.

    Follow the steps below to map Elasticsearch columns to a flat file:

    1. In the Object Explorer, right-click your project and then click New -> Data Object.
    2. Select Flat File Data Object -> Create as Empty -> Fixed Width.
    3. In the properties for the Elasticsearch object, select the rows you want, right-click, and then click copy. Paste the rows into the flat file properties.
    4. Drag the flat file data object onto the mapping. In the dialog that appears, select the Write option.
    5. Click and drag to connect columns.

    To transfer Elasticsearch data, right-click in the workspace and then click Run Mapping.

Ready to get started?

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

 Download Now

Learn more:

Elasticsearch Icon Elasticsearch JDBC Driver

Rapidly create and deploy powerful Java applications that integrate with Elasticsearch.