Ready to get started?

Learn more about CData Cloud Hub or sign up for a free trial:

Learn More

Query HPCC Systems Data as a MySQL Database in Node.js

Execute MySQL queries against HPCC Systems data from Node.js.

You can use the CData Cloud Hub to query HPCC Systems data through a MySQL interface. Follow the procedure below to create a virtual database for HPCC Systems in the Cloud Hub and start querying using Node.js.

The CData Cloud Hub provides a pure MySQL, cloud-to-cloud interface for HPCC Systems, allowing you to easily query live HPCC Systems data in Node.js — without replicating the data to a natively supported database. As you query data in Node.js, the CData Cloud Hub pushes all supported SQL operations (filters, JOINs, etc) directly to HPCC Systems, leveraging server-side processing to quickly return HPCC Systems data.

Create a Virtual MySQL Database for HPCC Systems Data

CData Cloud Hub uses a straightforward, point-and-click interface to connect to data sources and generate APIs.

  1. Login to Cloud Hub and click Databases.
  2. Select "HPCC Systems" from Available Data Sources.
  3. Enter the necessary authentication properties to connect to HPCC Systems.

    To connect, set the following connection properties: Set URL to the machine name or IP address of the server and the port the server is running on, for example, https://server:port. The User and Password are required to authenticate to the HPCC Systems cluster specified in the URL. Note that LDAP authentication is not currently supported by our ODBC driver.

    Set Version to the WsSQL Web server version. Note that if you have not already done so, you will need to install the WsSQL service on the HPCC Systems server. The WsSQL Web service is used to interact with the underlying HPCC Systems platform.

    Set Cluster to the target cluster.

  4. Click Test Database.
  5. Click Privileges -> Add and add the new user (or an existing user) with the appropriate permissions.

With the virtual database created, you are ready to connect to HPCC Systems data from any MySQL client.

Query HPCC Systems from Node.js

The following example shows how to define a connection and execute queries to HPCC Systems with the MySQL module. You will need the following information:

  • Host name, or address, and port: The address of your instance of the Cloud Hub (myinstance.cdatacloud.net) and the port (3306)
  • Username and password: The username and password of a user you authorized on the Cloud Hub
  • Database name: The database you configured for HPCC Systems (hpccdb)

Connect to HPCC Systems data and start executing queries with the code below:

var mysql      = require('mysql');
var fs         = require('fs');
var connection = mysql.createConnection({
  host     : 'myinstance.cdatacloud.net',
  database : 'hpccdb',
  port	   : '3306',
  user     : 'admin',
  password : 'password',
  ssl      : {
    ca : fs.readFileSync('C:/certs/myCA.pem')
  }
});
connection.connect();
connection.query('SELECT * FROM hpcc::test::orders', function(err, rows, fields) {
  if (err) throw err;
  console.log(rows);
});

connection.end();