
## Crawl Teradata

URL: https://docs.atlan.com/apps/connectors/database/teradata/how-tos/crawl-teradata

> Extract metadata from Teradata to catalog databases, tables, views, and columns. Extract query lineage and asset information after configuring user permissions.

Extract metadata from your [Teradata](https://docs.atlan.com/llms/connectors/teradata/set-up-teradata/llms.txt) data warehouse into Atlan to catalog databases, tables, views, and enable data discovery. After configuring the necessary user permissions, you can establish a connection and crawl Teradata to extract lineage and column-level details.

To crawl metadata from Teradata, review the [order of operations](https://docs.atlan.com/llms/catalog/connector-capabilities/order-workflows/llms.txt) and then complete the following steps.

## Select source

To select Teradata as your source:

1. In your Atlan workspace, click **Connectors** in the left sidebar.
 * If you are using the **Old UI (Classic)**, click **New Workflow** in the top navigation.

2. Click **Marketplace**.

3. Search for **Teradata Assets** and select it.

4. Click **Install**.

5. Once installation completes, click **Setup Workflow** on the same tile.

## Configure extraction

Select your extraction method and provide the connection details.

:::warning Offline extraction sunset
The offline extraction method has been sunset and is no longer available. For on-premises or network-restricted environments, use the **Agent** extraction method with [Self-Deployed Runtime](https://docs.atlan.com/llms/platform/self-deployed-runtime/llms.txt).
:::

### Direct

In **Direct** extraction, Atlan connects to your database and crawls metadata directly.

1. Choose whether to use the default connection settings or provide a custom Teradata Driver URL:
 - **Host**: Use the default Teradata Driver URL based on standard connection parameters (host, port).
 - **URL**: Provide a custom Teradata Driver URL with specific driver options. Make sure your connection string conforms to the [Teradata SQL Driver documentation](https://github.com/Teradata/python-driver) and applicable to your Teradata instance.

2. Choose an authentication method for your direct connection.

1. Use standard database credentials created in your Teradata instance.
 - **Host**: Enter the hostname or IP address for your Teradata instance.
 - **Port**: Enter the port number for your Teradata instance (default is `1025`).
 - **Username**: Enter the username you configured when [setting up the Teradata user](https://docs.atlan.com/llms/connectors/teradata/set-up-teradata/llms.txt).
 - **Password**: Enter the password for the specified user.

2. Click **Test Authentication** to verify your configuration. If the test is successful, click **Next** to proceed with the connection configuration.

### LDAP authentication

1. Authenticate using LDAP credentials with your corporate directory (for example, Active Directory or OpenLDAP).
 - **Host**: Enter the hostname or IP address for your Teradata instance.
 - **Port**: Enter the port number for your Teradata instance (default is `1025`).
 - **Username**: Enter your LDAP username (for example, `user@domain.com` or `domain\\user`).
 - **Password**: Enter the password for your LDAP credentials.

2. Click **Test Authentication** to verify your configuration. If the test is successful, click **Next** to proceed with the connection configuration.

### Agent

In **Agent** extraction, Self-Deployed Runtime executes metadata extraction within your organization's environment.

1. Install Self-Deployed Runtime if you haven't already:
 - [Install via Docker Compose](https://docs.atlan.com/llms/platform/self-deployed-runtime/install-on-docker-compose/llms.txt)
 - [Install on Kubernetes](https://docs.atlan.com/llms/platform/self-deployed-runtime/install-on-kubernetes/llms.txt)
2. Select the **Agent** tab.

3. Store sensitive information in the secret store configured with the Self-Deployed Runtime and reference the secrets in the corresponding fields. For more information, see [Configure secrets for workflow execution](https://docs.atlan.com/llms/platform/secure-agent/configure-secure-agent-for-workflow-execution/llms.txt).

4. For details on individual fields, refer to the Direct extraction tab.

5. Click **Next** after completing the configuration.

## Configure connection

Complete the Teradata connection configuration:

1. Provide a _Connection Name_ that represents your source environment. For example, you might use values like `production`, `development`, `gold`, or `analytics`.

2. (Optional) To change the users able to manage this connection, change the users or groups listed under _Connection Admins_.

 :::warning

 If you don't specify any user or group, nobody can manage the connection - not even admins.

 :::

3. At the bottom of the screen, click **Next** to proceed.

## Configure crawler

Before running the Teradata crawler, you can further configure it.

On the _Metadata_ page, you can override the defaults for any of these options:

- To select the assets you want to exclude from crawling, click **Exclude Metadata**. (This defaults to no assets, if none are specified.)
- To select the assets you want to include in crawling, click **Include Metadata**. (This defaults to all assets, if none are specified.)
- To have the crawler ignore tables and views based on a naming convention, specify a regular expression in the _Exclude regex for tables & views_ field.
- For _Advanced Config_, keep _Default_ for the default configuration or click **Custom** to configure the crawler:
 - For _Enable Source Level Filtering_, click **True** to enable schema-level filtering at source or click **False** to disable it.
 - For _Use JDBC Internal Methods_, click **True** to enable JDBC internal methods for data extraction or click **False** to disable it.

:::info Teradata database naming
In Teradata, the database name is always `DEFAULT`. What users typically think of as "databases" are actually schemas within `DEFAULT`.
:::

:::info Agent mode filtering format
When using Agent extraction mode with source-level filtering enabled, filters use a regex-based JSON format. The database must always be `^DEFAULT$` (with regex anchors), and schemas are specified as an array with `^` (start) and `$` (end) anchors.

**Examples:**

- Include specific schemas: `{"^DEFAULT$": ["^test_schema_1$", "^test_schema_2$"]}`
- Exclude specific schemas: `{"^DEFAULT$": ["^test_schema_1$", "^atlan_user$"]}`
:::

:::info **Did you know?** 
 If an asset appears in both the include and exclude filters, the exclude filter takes precedence.

:::

## Run crawler

To run the Teradata crawler, after completing the previous steps:

1. To check for any [permissions or other configuration issues](https://docs.atlan.com/llms/connectors/teradata/preflight-checks-for-teradata/llms.txt) before running the crawler, click **Preflight checks**.

2. You can either:
 - To run the crawler once immediately, at the bottom of the screen, click the **Run** button.
 - To schedule the crawler to run hourly, daily, weekly, or monthly, at the bottom of the screen, click the **Schedule Run** button.

Once the crawler has completed running, you can see the assets in Atlan's assets page! 🎉

---
