First time creating a connector? Read this first.
Requirements
You will need:-
A Teradata system that can be accessed by its host name or IP address.
For example, a Teradata system in Teradata Trial includes:
- A Teradata Trial account.
- An environment in the account.
- A Teradata instance in the environment.
- The name and password for a Teradata user who has the appropriate access to the database.
-
The system’s corresponding host name or IP address.
For example, you can get these values from Teradata Trial as follows:
- Sign in to your Teradata Trial account.
- On the sidebar, under Environments, click the name of the database’s corresponding environment.
- Use the Host value.
- Sign in to your Teradata Trial account.
-
The name of the target database in the system. To get a list of available databases in the system, you can run a Teradata SQL query such as the following:
-
The name of the target table in the database. To get a list of available tables in a database, you can run a Teradata SQL query such as the following, replacing
<database-name>with the name of the target database:When Unstructured writes rows to a table, the table’s columns must have a schema that is compatible with Unstructured. Unstructured cannot provide a schema that is guaranteed to work for everyone in all circumstances. This is because these schemas will vary based on your source files’ types; how you want Unstructured to partition, chunk, and generate embeddings; any custom post-processing code that you run; and other factors. In any case, note the following about table schemas:-
The following columns are always required by Unstructured:
record_idandelement_id. -
The following columns are optional for Unstructured, but highly recommended:
textandtype. -
The rest of the columns are optional and typically will be output by Unstructured as part of the
metadatafield. -
If Unstructured is generating vector embeddings, the
embeddingscolumn is also required.
metadatafield. Be sure to replace<database-name>with the name of the target database and<table-name>with the name of the target table (by Unstructured convention, the table name is typicallyelements, but this is not a requirement). -
The following columns are always required by Unstructured:
-
For the source connector, the name of the primary key column in the table (for example, a column named
id, typically defined as"id" VARCHAR(64) NOT NULL, PRIMARY KEY ("id")). - For the source connector, the names of any specific columns to fetch from the table. By default, all columns are fetched unless otherwise specified.
-
For the destination connector, the name of the column in the table that uniquely identifies each record for Unstructured to perform any necessary record updates. By default convention, Unstructured expects this field to be named
record_id. -
The name of the Teradata user who has the appropriate access to the target database.
For example, you can get this from Teradata Trial as follows:
- Sign in to your Teradata Trial account.
- On the sidebar, under Environments, click the name of the database’s corresponding environment.
- Use the Username value.
- Sign in to your Teradata Trial account.
-
The password for the user, which was set up when the user was created.
If the user has forgotten their password, the Teradata SQL command to change a user’s password is as follows, replacing
<user-name>with the name of the user and<new-password>with the new password:To change a user’s password, you must be an administrator (such as theDBCuser or another user withDROP USERprivileges).
The
record_id, element_id, and id fields are closely related, but each has a distinct purpose. For more information, see How connectors use record IDs, element IDs, and IDs.Examples
To create a Teradata SQL source connector, see the following examples. For more information on working with source connectors using the Unstructured API, see Source endpoints.Configuration settings
Replace the preceding placeholders as follows:string
required
A unique name for this connector.
string
required
The hostname or IP address associated with the target Teradata instance.
string
The name of the target database. By default, the default database name is used if not otherwise specified. To get the name of the default database, you can run the Teradata SQL command
SELECT DATABASE;.string
required
The name of the target table in the database.
integer
default:"100"
The maximum number of rows per batch.
string
Source connector only. Required. The name of the primary key column that Teradata uses to uniquely identify each record in the table.
string
default:"record_id"
Destination connector only. The name of the column that Unstructured uses to uniquely identify each record in the table for record update purposes.
string
Source connector only. An array of column names to fetch from the table. By default, all columns are fetched unless otherwise specified.
string
required
The name of the user who has the appropriate access to the database.
string
required
The password for the user.

