What is Teradata?

Teradata is a powerful relational database management system optimized for large-scale data warehousing and big data analytics. Known for its parallel processing capabilities, scalability, and advanced analytics features, it enables organizations to efficiently manage and analyze vast amounts of data. This makes it a preferred choice for enterprises seeking robust, high-performance solutions for data-driven decision-making.

Why Connect Teradata to Monte Carlo?

Integrating Monte Carlo with Teradata allows you to monitor your data and tables. Monte Carlo can detect anomalous freshness, volume and schema changes out of the box. With the ability to run SQL queries on your Teradata database, you can create advanced monitors to analyze the data in your tables and views. For a full list of supported monitor types see Monitor Support.

After connecting Teradata here is what you can expect to see out of the box:

Freshness:

Freshness monitors are active for Teradata tables out of the box. Monte Carlo's detection models will automatically train on the freshness metadata and alert on anomalies as they emerge.

Volume:

Our volume monitors are active out of the box. By collecting metadata on your tables, Monte Carlo's machine learning algorithm can set automatic thresholds to alert when a table has gone too long without a change in size or when an abnormal amount of bytes are added or deleted.

Monitor & Lineage Support

Below are the monitors & lineage support for the Teradata integration today. Please reach out to your Monte Carlo representative if you have requirements for additional monitors.

CategoryMonitor / Lineage CapabilitiesSupport
Table MonitorFreshness
Table MonitorVolume
Table MonitorSchema Changes
Metric MonitorMetric
Validation MonitorCustom SQL
Validation MonitorComparison
Validation MonitorValidation
Job MonitorQuery performance
LineageLineage

Connecting to Teradata

Note: Teradata databases must be online for MC to be able to run collection processes

Now that we know the value connecting Teradata to Monte Carlo can bring, here are the necessary steps to set up the integration.

📘

Prerequisites

To create a service account, you will need admin credentials to your Teradata database.

This guide explains how to create a read-only service account for Monte Carlo in Teradata.

To review all steps necessary to integrate a data warehouse with Monte Carlo, please see here.

Create a read-only service account

Please run the SQL snippet below on your Teradata database to create a read-only service account for Monte Carlo

CREATE USER montecarlo AS
PASSWORD = <password>
PERMANENT = 1000000 BYTES
TEMPORARY = 1000000 BYTES
SPOOL = 10000000 BYTES;

-- Grants SELECT access on required metadata tables:
GRANT SELECT ON DBC.DatabasesVX TO montecarlo;
GRANT SELECT ON DBC.TablesVX TO montecarlo;
GRANT SELECT ON DBC.TableSizeVX TO montecarlo;
GRANT SELECT ON DBC.TableTextVX TO montecarlo;
GRANT SELECT ON DBC.ColumnsVX TO montecarlo;
GRANT SELECT ON DBC.QryLogV TO montecarlo;
GRANT SELECT ON DBC.QryLogSQLV TO montecarlo;

-- Grants SELECT on all tables contained in <DATABASE NAME>. 
-- Run this command for each Database that contains tables you 
-- would like to create custom monitors on
GRANT SELECT ON <DATABASE NAME> TO montecarlo;

[Optional] Connect using SSL

Monte Carlo supports connecting to your Teradata database using an SSL encrypted connection. You must use the Monte Carlo CLI to configure SSL for new or existing Teradata integrations. If you do not already have the CLI installed see our CLI setup guide.

Use the following command to see a list of all required and optional parameters for onboarding a new Teradata connection:

montecarlo integrations add-teradata --help

Use the following command to see a list of all required and optional parameters for editing an existing Teradata connection:

montecarlo integrations update-teradata --help

For either command, to enable SSL encryption the following parameters need to be provided:

  • Port: the SSL port, usually 443
  • sslmode: Specifies the mode for connections to the database. The options are:
    • ALLOW: uses non-SSL connections.
    • PREFER: attempts to create a SSL connection and will fall back to non-SSL if the SSL connection cannot be established.
    • REQUIRE: uses only SSL connections.
    • VERIFY-CA: uses only SSL connections and verifies that the server certificate is valid and trusted.
    • VERIFY-FULL: uses only SSL connections, verifies that the server certificate is valid and trusted, and verifies that the server certificate matches the database hostname.
  • ssl-ca-directory: Path to a directory on your local machine containing PEM files with public CA certificates to use for the SSL connection. This option cannot be used with ssl-ca.
  • ssl-ca: Path to a PEM file on your local machine for a public CA certificate to use for the SSL connection. This option cannot be used with ssl-ca-directory.

FAQs

What hosting solutions are supported?
This integration supports any instance that is reachable from one of our hosting options. Please see the networking docs for more detail.

Can I use permissions on the Teradata user to control which tables Monte Carlo monitors?
Monte Carlo will query the view DBC.TablesVXwhen collecting metadata. This view will only return tables that the service account user owns or has been granted privileges on. If you do not want a table monitored by Monte Carlo, make sure the service account user has no privileges on that table. If you don't want an entire database (and its tables) monitored by Monte Carlo, remove all grants on that database to the service account user.

Alternatively you can use Monte Carlo's schema controls to control which catalogs and datasets are monitored.

How do I fix No more spool space in montecarlo. error?
Teradata uses Spool Space as a temporary workspace to store intermediate and final result sets. This space is only used temporarily and is released when it is no longer needed or automatically at the end of the session. Depending on the number of tables being monitored, volume of query logs and quantity of custom monitors created, you might need to allocate more spool space to the service account that Monte Carlo is using. If you see this error when trying to add a Teradata connection (during the validation step) or during metadata collection, modify the user to allocate more spool space with this query:

MODIFY USER montecarlo AS
SPOOL = <new spool size> BYTES;

Do you support large view definitions?
We collect up to 32,000 characters of each view definition. If you need this limit increased, please contact support.