Skip to main content

Query Teradata Vantage from a Mule service

Overview

This example is a clone of the Mulesoft MySQL sample project. It demonstrates how to query a Teradata database and expose results over REST API.

Prerequisites

Note

If you need a test instance of Vantage, you can provision one for free at https://clearscape.teradata.com

Example service

This example Mule service takes an HTTP request, queries the Teradata Vantage database and returns results in JSON format.

service flow

The Mule HTTP connector listens for HTTP GET requests with the form: http://<host>:8081/?lastname=<parameter>. The HTTP connector passes the value of <parameter> as one of the message properties to a database connector. The database connector is configured to extract this value and use it in this SQL query:

As you can see, we are using parameterized query with reference to the value of the parameter passed to the HTTP connector. So if the HTTP connector receives http://localhost:8081/?lastname=Smith, the SQL query will be:

The database connector instructs the database server to run the SQL query, retrieves the result of the query, and passes it to the Transform message processor which converts the result to JSON. Since the HTTP connector is configured as request-response, the result is returned to the originating HTTP client.

Setup

  • Clone Teradata/mule-jdbc-example repository:
  • Edit src/main/mule/querying-a-teradata-database.xml, find the Teradata connection string jdbc:teradata://<HOST>/user=<username>,password=<password> and replace Teradata connection parameters to match your environment.
Note

Should your Vantage instance be accessible via ClearScape Analytics Experience, you must replace <HOST> with the host URL of your ClearScape Analytics Experience environment. Additionally, the 'user' and 'password' should be updated to reflect your ClearScape Analytics Environment's username and password.

  • Create a sample database in your Vantage instance. Populate it with sample data.
  • Open the project in Anypoint Studio.

    • Once in Anypoint Studio, click on Import projects..:

    Anypoint import projects menu

    • Select Anypoint Studio project from File System:

    Anypoint import option

    • Use the directory where you cloned the git repository as the Project Root. Leave all other settings at their default values.

Run

  • Run the example application in Anypoint Studio using the Run menu. The project will now build and run. It will take a minute.
  • Go to your web browser and send the following request: http://localhost:8081/?lastname=Testowsky.

You should get the following JSON response:

Further reading

  • View this document for more information on how to configure a database connector on your machine.
  • Access plain Reference material for the Database Connector.
  • Learn more about DataSense.
Note

If you have any questions or need further assistance, please visit our community forum where you can get support and interact with other community members.

Also of interest