Validate Alchemy Data with QuerySurge

Jerod Johnson
Jerod Johnson
Director, Technology Evangelism
Access and validate Alchemy data in QuerySurge using the CData JDBC Driver.

QuerySurge is a smart data testing solution that automates data validation and testing. When paired with the CData API Driver for JDBC, QuerySurge can work with live Alchemy data. This article explains how to connect to Alchemy data from QuerySurge.

With built-in optimized data processing, the CData JDBC Driver offers unmatched performance for interacting with live Alchemy data. When you issue complex SQL queries to Alchemy, the driver pushes supported SQL operations, like filters and aggregations, directly to Alchemy and utilizes the embedded SQL engine to process unsupported operations client-side (often SQL functions and JOIN operations). Its built-in dynamic metadata querying allows you to work with and analyze Alchemy data using native data types.

Connecting to Alchemy Data in QuerySurge

To connect to live Alchemy data from QuerySurge, you need to deploy the JDBC Driver JAR file to your QuerySurge Agent(s) and add a new connection from the QuerySurge Admin view.

Deploy the JDBC Driver

  1. Download the CData API Driver for JDBC installer, unzip the package, and run the JAR file to install the driver.
  2. Once the driver is installed, stop the Agent Service.
  3. Copy the JAR File (and license file if it exists) from the installation location (typically C:\Program Files\CData\CData API Driver for JDBC\lib\) to your Agent(s) (QuerySurge_install_dir\agent\jdbc).
  4. Restart the Agent Service.

For more information on deploying JDBC drivers for QuerySurge, refer to the QuerySurge Knowledge Base.

Configure a New Connection to Alchemy

  1. Log into QuerySurge and navigate to the Admin view.
  2. Click Configuration -> Connections in the Administration Tree.
  3. Click Add to create a new connection.
  4. In the QuerySurge Connection Wizard, click Next. Creating a new connection
  5. Name the connection (e.g. CData JDBC Connection to Alchemy).
  6. Set the Data Source to "All Other JDBC Connections (Connection Extensibility)" and click Next. Naming the connection and choosing a Data Source
  7. Set the Driver Class to cdata.jdbc.api.APIDriver and click Next. Setting the Driver Class
  8. Set the Connection URL using the necessary connection properties to authenticate with Alchemy. Your Connection URL will look something like the following:

    jdbc:api:Profile=C:\profiles\Alchemy.apip;AuthScheme=APIKey;Network=eth-mainnet;ProfileSettings='APIKey=your_api_key';

    Built-in Connection String Designer

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

    java -jar cdata.jdbc.api.jar
    	

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

    Start by setting the Profile connection property to the location of the Alchemy Profile on disk (e.g. C:\profiles\Alchemy.apip). Next, set the ProfileSettings connection property to the connection string for Alchemy (see below).

    Alchemy API Profile Settings

    Alchemy uses API key authentication. The API key is supplied in the request URL path. To obtain an API key:

    1. Sign in to your Alchemy account at https://dashboard.alchemy.com.
    2. Open an existing app or create a new one.
    3. Copy the app's API key from the API Key dialog.

    After obtaining your API key, set the following connection properties:

    • AuthScheme: Set this to APIKey.
    • Network: Optional. The blockchain network slug for NFT API requests (for example, eth-mainnet, base-mainnet, polygon-mainnet). Defaults to eth-mainnet.

    Set the following in the ProfileSettings connection property:

    • APIKey: Set this to your Alchemy app API key.
    Using the built-in connection string designer to generate a JDBC URL (Salesforce is shown.)
  9. Set the Test Query to enable the Test Connection button for the Connection (e.g. SELECT * FROM ContractsForOwner LIMIT 1) and click Next. Setting the Connection URL and Test Query (NetSuite is shown)
  10. Click Test Connection to ensure the connection is configured properly and click Save to add the connection.

Once the connection is added, you can write SQL queries against your Alchemy data in QuerySurge.

Compare Alchemy Data Queries with a QueryPair

With the connection configured, you can follow the steps below to compare querying Alchemy data with a QueryPair.

  1. Select "Design Library" from the Design Menu
  2. Click QueryPairs under QuerySurge Design
  3. Click "Create New QueryPair"
  4. Name the QueryPair and click Save
  5. In either the Source or Target panes, select the connection created above (select the same connection to query Alchemy twice or another connection to perform a comparison)
  6. Write queries in the Editor for each pane, e.g. SELECT * FROM ContractsForOwner Setting the Connection URL and Test Query (NetSuite is shown)
  7. Click the "Design-Time Run" tab to execute the queries
  8. When the query execution is finished, click "View Query Results" to see the Alchemy data returned by the query Setting the Connection URL and Test Query (NetSuite is shown)

Download a free, 30-day trial of the CData API Driver for JDBC and start working with your live Alchemy data in QuerySurge. Reach out to our Support Team if you have any questions.

Ready to get started?

Connect to live data from Alchemy with the API Driver

Connect to Alchemy