Warehouses and Lakes
Warehouses and Lakes

How to load data from Teradata source to Databricks Lakehouse

Learn how to use Airbyte to synchronize your Teradata source data into Databricks Lakehouse within minutes.

TL;DR

This can be done by building a data pipeline manually, usually a Python script (you can leverage a tool as Apache Airflow for this). This process can take more than a full week of development. Or it can be done in minutes on Airbyte in three easy steps:

  1. set up Teradata source as a source connector (using Auth, or usually an API key)
  2. set up Databricks Lakehouse as a destination connector
  3. define which data you want to transfer and how frequently

You can choose to self-host the pipeline using Airbyte Open Source or have it managed for you with Airbyte Cloud.

This tutorial’s purpose is to show you how.

What is Teradata source

Teradata is a data management and analytics platform that helps businesses to collect, store, and analyze large amounts of data. It provides a range of tools and services that enable organizations to make data-driven decisions and gain insights into their operations. Teradata's platform is designed to handle complex data sets and support advanced analytics, including machine learning and artificial intelligence. It also offers cloud-based solutions that allow businesses to scale their data management and analytics capabilities as needed. Overall, Teradata helps businesses to unlock the value of their data and drive better outcomes across their operations.

What is Databricks Lakehouse

Databricks is an American enterprise software company founded by the creators of Apache Spark. Databricks combines data warehouses and data lakes into a lakehouse architecture.

Integrate Teradata source with Databricks Lakehouse in minutes

Try for free now

Prerequisites

  1. A Teradata source account to transfer your customer data automatically from.
  2. A Databricks Lakehouse account.
  3. An active Airbyte Cloud account, or you can also choose to use Airbyte Open Source locally. You can follow the instructions to set up Airbyte on your system using docker-compose.

Airbyte is an open-source data integration platform that consolidates and streamlines the process of extracting and loading data from multiple data sources to data warehouses. It offers pre-built connectors, including Teradata source and Databricks Lakehouse, for seamless data migration.

When using Airbyte to move data from Teradata source to Databricks Lakehouse, it extracts data from Teradata source using the source connector, converts it into a format Databricks Lakehouse can ingest using the provided schema, and then loads it into Databricks Lakehouse via the destination connector. This allows businesses to leverage their Teradata source data for advanced analytics and insights within Databricks Lakehouse, simplifying the ETL process and saving significant time and resources.

Step 1: Set up Teradata source as a source connector

1. First, navigate to the Airbyte website and create an account.
2. Once you have logged in, click on the ""Sources"" tab on the left-hand side of the screen.
3. Scroll down until you find the Teradata source connector and click on it.
4. You will be prompted to enter your Teradata database credentials, including the host, port, username, and password.
5. After entering your credentials, click on the ""Test"" button to ensure that the connection is successful.
6. If the test is successful, click on the ""Save"" button to save your Teradata source connector settings.
7. You can now use the Teradata source connector to extract data from your Teradata database and load it into your destination of choice.
8. To set up a destination connector, navigate to the ""Destinations"" tab on the left-hand side of the screen and select the destination you want to use.
9. Follow the prompts to enter your destination credentials and configure your destination settings.
10. Once you have set up both your source and destination connectors, you can create a new pipeline to move data from your Teradata database to your destination.

Step 2: Set up Databricks Lakehouse as a destination connector

1. First, navigate to the Airbyte website and log in to your account.
2. Once you are logged in, click on the "Destinations" tab on the left-hand side of the screen.
3. Scroll down until you find the "Databricks Lakehouse" connector and click on it.
4. You will be prompted to enter your Databricks Lakehouse credentials, including your account name, personal access token, and workspace ID.
5. Once you have entered your credentials, click on the "Test" button to ensure that the connection is successful.
6. If the test is successful, click on the "Save" button to save your Databricks Lakehouse destination connector settings.
7. You can now use the Databricks Lakehouse connector to transfer data from your source connectors to your Databricks Lakehouse destination.
8. To set up a data transfer, navigate to the "Sources" tab and select the source connector that you want to use.
9. Follow the prompts to enter your source connector credentials and configure your data transfer settings.
10. Once you have configured your source connector, select the Databricks Lakehouse connector as your destination and follow the prompts to configure your data transfer settings.
11. Click on the "Run" button to initiate the data transfer.

Step 3: Set up a connection to sync your Teradata source data to Databricks Lakehouse

Once you've successfully connected Teradata source as a data source and Databricks Lakehouse as a destination in Airbyte, you can set up a data pipeline between them with the following steps:

  1. Create a new connection: On the Airbyte dashboard, navigate to the 'Connections' tab and click the '+ New Connection' button.
  2. Choose your source: Select Teradata source from the dropdown list of your configured sources.
  3. Select your destination: Choose Databricks Lakehouse from the dropdown list of your configured destinations.
  4. Configure your sync: Define the frequency of your data syncs based on your business needs. Airbyte allows both manual and automatic scheduling for your data refreshes.
  5. Select the data to sync: Choose the specific Teradata source objects you want to import data from towards Databricks Lakehouse. You can sync all data or select specific tables and fields.
  6. Select the sync mode for your streams: Choose between full refreshes or incremental syncs (with deduplication if you want), and this for all streams or at the stream level. Incremental is only available for streams that have a primary cursor.
  7. Test your connection: Click the 'Test Connection' button to make sure that your setup works. If the connection test is successful, save your configuration.
  8. Start the sync: If the test passes, click 'Set Up Connection'. Airbyte will start moving data from Teradata source to Databricks Lakehouse according to your settings.

Remember, Airbyte keeps your data in sync at the frequency you determine, ensuring your Databricks Lakehouse data warehouse is always up-to-date with your Teradata source data.

Use Cases to transfer your Teradata source data to Databricks Lakehouse

Integrating data from Teradata source to Databricks Lakehouse provides several benefits. Here are a few use cases:

  1. Advanced Analytics: Databricks Lakehouse’s powerful data processing capabilities enable you to perform complex queries and data analysis on your Teradata source data, extracting insights that wouldn't be possible within Teradata source alone.
  2. Data Consolidation: If you're using multiple other sources along with Teradata source, syncing to Databricks Lakehouse allows you to centralize your data for a holistic view of your operations, and to set up a change data capture process so you never have any discrepancies in your data again.
  3. Historical Data Analysis: Teradata source has limits on historical data. Syncing data to Databricks Lakehouse allows for long-term data retention and analysis of historical trends over time.
  4. Data Security and Compliance: Databricks Lakehouse provides robust data security features. Syncing Teradata source data to Databricks Lakehouse ensures your data is secured and allows for advanced data governance and compliance management.
  5. Scalability: Databricks Lakehouse can handle large volumes of data without affecting performance, providing an ideal solution for growing businesses with expanding Teradata source data.
  6. Data Science and Machine Learning: By having Teradata source data in Databricks Lakehouse, you can apply machine learning models to your data for predictive analytics, customer segmentation, and more.
  7. Reporting and Visualization: While Teradata source provides reporting tools, data visualization tools like Tableau, PowerBI, Looker (Google Data Studio) can connect to Databricks Lakehouse, providing more advanced business intelligence options. If you have a Teradata source table that needs to be converted to a Databricks Lakehouse table, Airbyte can do that automatically.

Wrapping Up

To summarize, this tutorial has shown you how to:

  1. Configure a Teradata source account as an Airbyte data source connector.
  2. Configure Databricks Lakehouse as a data destination connector.
  3. Create an Airbyte data pipeline that will automatically be moving data directly from Teradata source to Databricks Lakehouse after you set a schedule

With Airbyte, creating data pipelines take minutes, and the data integration possibilities are endless. Airbyte supports the largest catalog of API tools, databases, and files, among other sources. Airbyte's connectors are open-source, so you can add any custom objects to the connector, or even build a new connector from scratch without any local dev environment or any data engineer within 10 minutes with the no-code connector builder.

We look forward to seeing you make use of it! We invite you to join the conversation on our community Slack Channel, or sign up for our newsletter. You should also check out other Airbyte tutorials, and Airbyte’s content hub!

What should you do next?

Hope you enjoyed the reading. Here are the 3 ways we can help you in your data journey:

flag icon
Easily address your data movement needs with Airbyte Cloud
Take the first step towards extensible data movement infrastructure that will give a ton of time back to your data team. 
Get started with Airbyte for free
high five icon
Talk to a data infrastructure expert
Get a free consultation with an Airbyte expert to significantly improve your data movement infrastructure. 
Talk to sales
stars sparkling
Improve your data infrastructure knowledge
Subscribe to our monthly newsletter and get the community’s new enlightening content along with Airbyte’s progress in their mission to solve data integration once and for all.
Subscribe to newsletter

TL;DR

This can be done by building a data pipeline manually, usually a Python script (you can leverage a tool as Apache Airflow for this). This process can take more than a full week of development. Or it can be done in minutes on Airbyte in three easy steps:

  1. set up Teradata source as a source connector (using Auth, or usually an API key)
  2. set up Databricks Lakehouse as a destination connector
  3. define which data you want to transfer and how frequently

You can choose to self-host the pipeline using Airbyte Open Source or have it managed for you with Airbyte Cloud.

This tutorial’s purpose is to show you how.

What is Teradata source

Teradata is a data management and analytics platform that helps businesses to collect, store, and analyze large amounts of data. It provides a range of tools and services that enable organizations to make data-driven decisions and gain insights into their operations. Teradata's platform is designed to handle complex data sets and support advanced analytics, including machine learning and artificial intelligence. It also offers cloud-based solutions that allow businesses to scale their data management and analytics capabilities as needed. Overall, Teradata helps businesses to unlock the value of their data and drive better outcomes across their operations.

What is Databricks Lakehouse

Databricks is an American enterprise software company founded by the creators of Apache Spark. Databricks combines data warehouses and data lakes into a lakehouse architecture.

 {{COMPONENT_CTA}}

Prerequisites

  1. A Teradata source account to transfer your customer data automatically from.
  2. A Databricks Lakehouse account.
  3. An active Airbyte Cloud account, or you can also choose to use Airbyte Open Source locally. You can follow the instructions to set up Airbyte on your system using docker-compose.

Airbyte is an open-source data integration platform that consolidates and streamlines the process of extracting and loading data from multiple data sources to data warehouses. It offers pre-built connectors, including Teradata source and Databricks Lakehouse, for seamless data migration.

When using Airbyte to move data from Teradata source to Databricks Lakehouse, it extracts data from Teradata source using the source connector, converts it into a format Databricks Lakehouse can ingest using the provided schema, and then loads it into Databricks Lakehouse via the destination connector. This allows businesses to leverage their Teradata source data for advanced analytics and insights within Databricks Lakehouse, simplifying the ETL process and saving significant time and resources.

Methods to Move Data From Teradata to databricks lakehouse

  • Method 1: Connecting Teradata to databricks lakehouse using Airbyte.
  • Method 2: Connecting Teradata to databricks lakehouse manually.

Method 1: Connecting Teradata to databricks lakehouse using Airbyte

Step 1: Set up Teradata source as a source connector

1. First, navigate to the Airbyte website and create an account.
2. Once you have logged in, click on the ""Sources"" tab on the left-hand side of the screen.
3. Scroll down until you find the Teradata source connector and click on it.
4. You will be prompted to enter your Teradata database credentials, including the host, port, username, and password.
5. After entering your credentials, click on the ""Test"" button to ensure that the connection is successful.
6. If the test is successful, click on the ""Save"" button to save your Teradata source connector settings.
7. You can now use the Teradata source connector to extract data from your Teradata database and load it into your destination of choice.
8. To set up a destination connector, navigate to the ""Destinations"" tab on the left-hand side of the screen and select the destination you want to use.
9. Follow the prompts to enter your destination credentials and configure your destination settings.
10. Once you have set up both your source and destination connectors, you can create a new pipeline to move data from your Teradata database to your destination.

Step 2: Set up Databricks Lakehouse as a destination connector

1. First, navigate to the Airbyte website and log in to your account.
2. Once you are logged in, click on the "Destinations" tab on the left-hand side of the screen.
3. Scroll down until you find the "Databricks Lakehouse" connector and click on it.
4. You will be prompted to enter your Databricks Lakehouse credentials, including your account name, personal access token, and workspace ID.
5. Once you have entered your credentials, click on the "Test" button to ensure that the connection is successful.
6. If the test is successful, click on the "Save" button to save your Databricks Lakehouse destination connector settings.
7. You can now use the Databricks Lakehouse connector to transfer data from your source connectors to your Databricks Lakehouse destination.
8. To set up a data transfer, navigate to the "Sources" tab and select the source connector that you want to use.
9. Follow the prompts to enter your source connector credentials and configure your data transfer settings.
10. Once you have configured your source connector, select the Databricks Lakehouse connector as your destination and follow the prompts to configure your data transfer settings.
11. Click on the "Run" button to initiate the data transfer.

Step 3: Set up a connection to sync your Teradata source data to Databricks Lakehouse

Once you've successfully connected Teradata source as a data source and Databricks Lakehouse as a destination in Airbyte, you can set up a data pipeline between them with the following steps:

  1. Create a new connection: On the Airbyte dashboard, navigate to the 'Connections' tab and click the '+ New Connection' button.
  2. Choose your source: Select Teradata source from the dropdown list of your configured sources.
  3. Select your destination: Choose Databricks Lakehouse from the dropdown list of your configured destinations.
  4. Configure your sync: Define the frequency of your data syncs based on your business needs. Airbyte allows both manual and automatic scheduling for your data refreshes.
  5. Select the data to sync: Choose the specific Teradata source objects you want to import data from towards Databricks Lakehouse. You can sync all data or select specific tables and fields.
  6. Select the sync mode for your streams: Choose between full refreshes or incremental syncs (with deduplication if you want), and this for all streams or at the stream level. Incremental is only available for streams that have a primary cursor.
  7. Test your connection: Click the 'Test Connection' button to make sure that your setup works. If the connection test is successful, save your configuration.
  8. Start the sync: If the test passes, click 'Set Up Connection'. Airbyte will start moving data from Teradata source to Databricks Lakehouse according to your settings.

Remember, Airbyte keeps your data in sync at the frequency you determine, ensuring your Databricks Lakehouse data warehouse is always up-to-date with your Teradata source data.

Method 2: Connecting Teradata to databricks lakehouse manually

Moving data from Teradata to Databricks Lakehouse without using third-party connectors or integrations involves several steps, including exporting data from Teradata, transferring the data to a cloud storage solution, and then importing the data into Databricks Lakehouse. Below is a detailed step-by-step guide to accomplish this task.

Step 1: Extract Data from Teradata

1. Prepare Teradata Environment: Make sure you have the necessary permissions to read the data from the tables you want to export.

2. Select Data to Export: Identify the data you want to move to Databricks Lakehouse. It could be specific tables or the result of a query.

3. Export Data to a File:

   - Use the `BTEQ` (Basic Teradata Query) utility to export data. Write a BTEQ script that selects the data and writes it to a flat file (CSV or TSV).

   - Example BTEQ script to export data:

     ```sql

     .LOGON your_teradata_server/your_username,your_password;

     .EXPORT DATA FILE = /path/to/export/file.csv;

     .SET SEPARATOR ',';

     SELECT * FROM your_database.your_table;

     .EXPORT RESET;

     .LOGOFF;

     ```

   - Run the BTEQ script on the Teradata system.

4. Compress the Data: To optimize the transfer, compress the exported files using a tool like `gzip` or `zip`.

Step 2: Transfer Data to Cloud Storage

1. Choose a Cloud Storage Solution: Select a cloud storage provider (AWS S3, Azure Blob Storage, or Google Cloud Storage) that is compatible with Databricks.

2. Upload Data:

   - Use the cloud provider's CLI or web interface to upload the compressed data files to the chosen cloud storage.

   - Ensure the storage bucket or container is secured and has the correct permissions set up.

Step 3: Import Data into Databricks Lakehouse

1. Set Up Databricks Environment:

   - Create a Databricks workspace if you don't already have one.

   - Start a Databricks cluster with the required configuration.

2. Mount Cloud Storage:

   - Mount the cloud storage bucket to Databricks using DBFS (Databricks File System) to make the data accessible from Databricks notebooks.

   - Use the following commands in a Databricks notebook to mount the storage:

     ```python

     dbutils.fs.mount(

       source = "s3a://your-bucket-name",

       mount_point = "/mnt/your-mount-name",

       extra_configs = {"fs.s3a.access.key": "your-access-key", "fs.s3a.secret.key": "your-secret-key"}

     )

     ```

3. Read Data into Databricks:

   - Use the `spark.read` function to read the data from the mounted cloud storage into a Spark DataFrame.

   - For example, to read a CSV file:

     ```python

     df = spark.read.csv("/mnt/your-mount-name/file.csv", header=True, inferSchema=True)

     ```

4. Transform Data (Optional):

   - Perform any necessary data transformations using Spark DataFrame operations.

5. Write Data to Databricks Lakehouse:

   - Use the `df.write` function to save the DataFrame to the Databricks Lakehouse in the desired format (Delta, Parquet, etc.).

   - For example, to write data as a Delta table:

     ```python

     df.write.format("delta").saveAsTable("your_table_name")

     ```

6. Verify Data:

   - Query the data using a Databricks notebook to ensure it was imported correctly.

Step 4: Clean Up

1. Unmount Cloud Storage:

   - Once the data transfer is complete, unmount the cloud storage to prevent unauthorized access.

   - Use the following command in a Databricks notebook:

     ```python

     dbutils.fs.unmount("/mnt/your-mount-name")

     ```

2. Delete Temporary Files:

   - Remove any temporary files from Teradata and the cloud storage to maintain security and reduce costs.

Use Cases to transfer your Teradata source data to Databricks Lakehouse

Integrating data from Teradata source to Databricks Lakehouse provides several benefits. Here are a few use cases:

  1. Advanced Analytics: Databricks Lakehouse’s powerful data processing capabilities enable you to perform complex queries and data analysis on your Teradata source data, extracting insights that wouldn't be possible within Teradata source alone.
  2. Data Consolidation: If you're using multiple other sources along with Teradata source, syncing to Databricks Lakehouse allows you to centralize your data for a holistic view of your operations, and to set up a change data capture process so you never have any discrepancies in your data again.
  3. Historical Data Analysis: Teradata source has limits on historical data. Syncing data to Databricks Lakehouse allows for long-term data retention and analysis of historical trends over time.
  4. Data Security and Compliance: Databricks Lakehouse provides robust data security features. Syncing Teradata source data to Databricks Lakehouse ensures your data is secured and allows for advanced data governance and compliance management.
  5. Scalability: Databricks Lakehouse can handle large volumes of data without affecting performance, providing an ideal solution for growing businesses with expanding Teradata source data.
  6. Data Science and Machine Learning: By having Teradata source data in Databricks Lakehouse, you can apply machine learning models to your data for predictive analytics, customer segmentation, and more.
  7. Reporting and Visualization: While Teradata source provides reporting tools, data visualization tools like Tableau, PowerBI, Looker (Google Data Studio) can connect to Databricks Lakehouse, providing more advanced business intelligence options. If you have a Teradata source table that needs to be converted to a Databricks Lakehouse table, Airbyte can do that automatically.

Wrapping Up

To summarize, this tutorial has shown you how to:

  1. Configure a Teradata source account as an Airbyte data source connector.
  2. Configure Databricks Lakehouse as a data destination connector.
  3. Create an Airbyte data pipeline that will automatically be moving data directly from Teradata source to Databricks Lakehouse after you set a schedule

With Airbyte, creating data pipelines take minutes, and the data integration possibilities are endless. Airbyte supports the largest catalog of API tools, databases, and files, among other sources. Airbyte's connectors are open-source, so you can add any custom objects to the connector, or even build a new connector from scratch without any local dev environment or any data engineer within 10 minutes with the no-code connector builder.

We look forward to seeing you make use of it! We invite you to join the conversation on our community Slack Channel, or sign up for our newsletter. You should also check out other Airbyte tutorials, and Airbyte’s content hub!

What should you do next?

Hope you enjoyed the reading. Here are the 3 ways we can help you in your data journey:

flag icon
Easily address your data movement needs with Airbyte Cloud
Take the first step towards extensible data movement infrastructure that will give a ton of time back to your data team. 
Get started with Airbyte for free
high five icon
Talk to a data infrastructure expert
Get a free consultation with an Airbyte expert to significantly improve your data movement infrastructure. 
Talk to sales
stars sparkling
Improve your data infrastructure knowledge
Subscribe to our monthly newsletter and get the community’s new enlightening content along with Airbyte’s progress in their mission to solve data integration once and for all.
Subscribe to newsletter

Frequently Asked Questions

What data can you extract from Teradata source?

Teradata's API provides access to a wide range of data types, including:

1. Structured data: This includes data that is organized into tables with defined columns and rows, such as customer information, sales data, and financial records.

2. Unstructured data: This includes data that is not organized in a predefined manner, such as social media posts, emails, and documents.

3. Semi-structured data: This includes data that has some structure, but not as much as structured data. Examples include XML files and JSON data.

4. Time-series data: This includes data that is organized by time, such as stock prices, weather data, and sensor readings.

5. Geospatial data: This includes data that is related to geographic locations, such as maps, GPS coordinates, and location-based services.

6. Machine-generated data: This includes data that is generated by machines, such as log files, sensor data, and telemetry data.

Overall, Teradata's API provides access to a wide range of data types, allowing developers and data analysts to work with diverse data sets and extract insights from them.

What data can you transfer to Databricks Lakehouse?

You can transfer a wide variety of data to Databricks Lakehouse. This usually includes structured, semi-structured, and unstructured data like transaction records, log files, JSON data, CSV files, and more, allowing robust, scalable data integration and analysis.

What are top ETL tools to transfer data from Teradata source to Databricks Lakehouse?

The most prominent ETL tools to transfer data from Teradata source to Databricks Lakehouse include:

  • Airbyte
  • Fivetran
  • Stitch
  • Matillion
  • Talend Data Integration

These tools help in extracting data from Teradata source and various sources (APIs, databases, and more), transforming it efficiently, and loading it into Databricks Lakehouse and other databases, data warehouses and data lakes, enhancing data management capabilities.