How to load data from Excel File to DuckDB

Learn how to use Airbyte to synchronize your Excel File data into DuckDB within minutes.

Trusted by data-driven companies

Building your pipeline or Using Airbyte

Airbyte is the only open source solution empowering data teams  to meet all their growing custom business demands in the new AI era.

Building in-house pipelines
Bespoke pipelines are:
  • Inconsistent and inaccurate data
  • Laborious and expensive
  • Brittle and inflexible
Furthermore, you will need to build and maintain Y x Z pipelines with Y sources and Z destinations to cover all your needs.
After Airbyte
Airbyte connections are:
  • Reliable and accurate
  • Extensible and scalable for all your needs
  • Deployed and governed your way
All your pipelines in minutes, however custom they are, thanks to Airbyte’s connector marketplace and AI Connector Builder.

Start syncing with Airbyte in 3 easy steps within 10 minutes

Set up a Excel File connector in Airbyte

Connect to Excel File or one of 400+ pre-built or 10,000+ custom connectors through simple account authentication.

Set up DuckDB for your extracted Excel File data

Select DuckDB where you want to import data from your Excel File source to. You can also choose other cloud data warehouses, databases, data lakes, vector databases, or any other supported Airbyte destinations.

Configure the Excel File to DuckDB in Airbyte

This includes selecting the data you want to extract - streams and columns -, the sync frequency, where in the destination you want that data to be loaded.

Take a virtual tour

Check out our interactive demo and our how-to videos to learn how you can sync data from any source to any destination.

Demo video of Airbyte Cloud

Demo video of AI Connector Builder

What sets Airbyte Apart

Modern GenAI Workflows

Streamline AI workflows with Airbyte: load unstructured data into vector stores like Pinecone, Weaviate, and Milvus. Supports RAG transformations with LangChain chunking and embeddings from OpenAI, Cohere, etc., all in one operation.

Move Large Volumes, Fast

Quickly get up and running with a 5-minute setup that supports both incremental and full refreshes, for databases of any size.

An Extensible Open-Source Standard

More than 1,000 developers contribute to Airbyte’s connectors, different interfaces (UI, API, Terraform Provider, Python Library), and integrations with the rest of the stack. Airbyte’s AI Connector Builder lets you edit or add new connectors in minutes.

Full Control & Security

Airbyte secures your data with cloud-hosted, self-hosted or hybrid deployment options. Single Sign-On (SSO) and Role-Based Access Control (RBAC) ensure only authorized users have access with the right permissions. Airbyte acts as a HIPAA conduit and supports compliance with CCPA, GDPR, and SOC2.

Fully Featured & Integrated

Airbyte automates schema evolution for seamless data flow, and utilizes efficient Change Data Capture (CDC) for real-time updates. Select only the columns you need, and leverage our dbt integration for powerful data transformations.

Enterprise Support with SLAs

Airbyte Self-Managed Enterprise comes with dedicated support and guaranteed service level agreements (SLAs), ensuring that your data movement infrastructure remains reliable and performant, and expert assistance is available when needed.

What our users say

Jean-Mathieu Saponaro
Data & Analytics Senior Eng Manager

"The intake layer of Datadog’s self-serve analytics platform is largely built on Airbyte.Airbyte’s ease of use and extensibility allowed any team in the company to push their data into the platform - without assistance from the data team!"

Learn more
Chase Zieman headshot
Chase Zieman
Chief Data Officer

“Airbyte helped us accelerate our progress by years, compared to our competitors. We don’t need to worry about connectors and focus on creating value for our users instead of building infrastructure. That’s priceless. The time and energy saved allows us to disrupt and grow faster.”

Learn more
Alexis Weill
Data Lead

“We chose Airbyte for its ease of use, its pricing scalability and its absence of vendor lock-in. Having a lean team makes them our top criteria.
The value of being able to scale and execute at a high level by maximizing resources is immense”

Learn more

How to Sync Excel File to DuckDB Manually

1. Open your Excel workbook and ensure that the data is clean and well-structured.

2. Make sure that the first row contains column headers, as these will be used as column names in DuckDB.

3. Check for any data inconsistencies, such as non-uniform date formats, and correct them.

1. In Excel, go to the worksheet that contains the data you want to export.

2. Click on 'File' > 'Save As' or press `F12` to open the 'Save As' dialog.

3. Choose the location where you want to save the file.

4. In the 'Save as type' dropdown, select 'CSV (Comma delimited) (*.csv)'.

5. Click 'Save'. If your workbook has multiple sheets, Excel will prompt you that only the active sheet will be saved in the CSV file. Click 'OK' to proceed.

6. If you receive a message about features not being compatible with CSV format, click 'Yes' to keep the workbook in this format.

1. Download DuckDB from the official website (https://duckdb.org/) or install it using a package manager like pip for Python:

   ```

   pip install duckdb

   ```

2. Follow the installation instructions appropriate for your operating system.

1. Open a command-line interface (CLI) or a scripting environment where you can interact with DuckDB.

2. Start the DuckDB CLI by typing `duckdb` in your terminal or command prompt. Alternatively, you can use DuckDB in a scripting language like Python:

   ```python

   import duckdb

   con = duckdb.connect(database=':memory:', read_only=False)

   ```

3. Create a table in DuckDB that corresponds to the structure of your Excel data. For example:

   ```sql

   CREATE TABLE my_table (

       column1 INTEGER,

       column2 VARCHAR,

       column3 DATE

   );

   ```

4. Import the CSV data into the newly created table using the `COPY` command. Adjust the file path and table name accordingly:

   ```sql

   COPY my_table FROM '/path/to/your/csvfile.csv' WITH (HEADER true, DELIMITER ',');

   ```

   If using a scripting language like Python:

   ```python

   con.execute("COPY my_table FROM '/path/to/your/csvfile.csv' WITH (HEADER true, DELIMITER ',')")

   ```

1. To check if the data has been imported correctly, run a simple query to retrieve some records:

   ```sql

   SELECT * FROM my_table LIMIT 10;

   ```

   In Python:

   ```python

   print(con.execute("SELECT * FROM my_table LIMIT 10").fetchall())

   ```

1. If you want to save the DuckDB database to a file for persistence, you can do so by connecting to a specific file when starting DuckDB:

   ```sql

   .open 'my_duckdb_database.duckdb'

   ```

   In Python:

   ```python

   con = duckdb.connect(database='my_duckdb_database.duckdb', read_only=False)

   ```

1. If you used a temporary CSV file, you might want to delete it after the import is complete to save space and keep your working directory clean.

By following these steps, you should be able to move data from Excel to DuckDB without the need for third-party connectors or integrations. Remember to adjust file paths, table names, and column types according to your specific data and environment.

How to Sync Excel File to DuckDB Manually - Method 2:

FAQs

ETL, an acronym for Extract, Transform, Load, is a vital data integration process. It involves extracting data from diverse sources, transforming it into a usable format, and loading it into a database, data warehouse or data lake. This process enables meaningful data analysis, enhancing business intelligence.

Excel File is a software application developed by Microsoft that allows users to create, edit, and analyze spreadsheets. It is widely used in businesses, schools, and personal finance to organize and manipulate data. Excel File offers a range of features including formulas, charts, graphs, and pivot tables that enable users to perform complex calculations and data analysis. It also allows users to collaborate on spreadsheets in real-time and share them with others. Excel File is available on multiple platforms including Windows, Mac, and mobile devices, making it a versatile tool for data management and analysis.

The Excel File provides access to a wide range of data types, including:  
• Workbook data: This includes information about the workbook itself, such as its name, author, and creation date.  
• Worksheet data: This includes data about individual worksheets within the workbook, such as their names, positions, and formatting.  
• Cell data: This includes information about individual cells within the worksheets, such as their values, formulas, and formatting.  
• Chart data: This includes data about any charts that are included in the workbook, such as their types, data sources, and formatting.  
• Pivot table data: This includes information about any pivot tables that are included in the workbook, such as their data sources, fields, and formatting.
• Macro data: This includes information about any macros that are included in the workbook, such as their names, code, and security settings.  

Overall, the Excel File's API provides developers with a comprehensive set of tools for accessing and manipulating data within Excel workbooks, making it a powerful tool for data analysis and management.

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 Excel File to DuckDB as a source connector (using Auth, or usually an API key)
2. Choose a destination (more than 50 available destination databases, data warehouses or lakes) to sync data too and set it up as a destination connector
3. Define which data you want to transfer from Excel File to DuckDB and how frequently
You can choose to self-host the pipeline using Airbyte Open Source or have it managed for you with Airbyte Cloud. 

ELT, standing for Extract, Load, Transform, is a modern take on the traditional ETL data integration process. In ELT, data is first extracted from various sources, loaded directly into a data warehouse, and then transformed. This approach enhances data processing speed, analytical flexibility and autonomy.

ETL and ELT are critical data integration strategies with key differences. ETL (Extract, Transform, Load) transforms data before loading, ideal for structured data. In contrast, ELT (Extract, Load, Transform) loads data before transformation, perfect for processing large, diverse data sets in modern data warehouses. ELT is becoming the new standard as it offers a lot more flexibility and autonomy to data analysts.

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