In the previous part titled ETL | Keboola Free – Creating a Project, Basics, we did a basic introduction to the application. We went through the process of creating a project and also briefly explored the Keboola structure and menu. Today, I’d like to show you how easy it is to create a Keboola flow. In Keboola, a flow is the term used for a pipeline, data flow, or data stream (whatever you prefer).

Keboola Flow – Introduction and How to get Data from SQL Server to Google Drive

You can find the Flow option in the top menu under the Flow section (formerly called orchestration in older versions of Keboola).

Keboola-flows

Task – Our task is to import data from a source to a destination, where:

  • Source – AdventureWorks database SQL Server AdventureWorks – we are interested in the “Customer” table.
  • Destination – our target destination is my Google Drive folder Keboola_GoogleAnalytics/janzednicek_flow.

Overview of the flow we will create in this article

  • Total Time – it takes approximately 10-15 minutes to set up this flow.
  • Source Table – Customer (850 records) on SQL Server
  • Destination Table – Customer on Google Drive
  • Total Run Time – 1 minute
  • Costs – 0 CZK

keboola job summary

Setting Up the Data Flow Source Component in Keboola, Advanced Mode

1) Setting Up the Flow – Click on “Create Flow,” and a window will appear asking you to enter the name of the new flow and optionally the folder where you will save it.

  • Name – janzednicekcz_flow_article
  • Folder – janzednicek_articles (I expect to have multiple flows)

keboola create new flow

Flow Environment – Keboola will take us to the environment of the flow we just created. On this screen, you have the option to:

  • Select First Step – which means creating the flow from scratch
  • Use Template – Keboola provides several templates (I assume more will be added) that you can use as a starting point

We will choose SELECT FIRST STEP.

keboola create flow screen

Selecting the Data Source Component – After clicking “Select First Step,” you need to choose the component to which you will connect. In our case, it’s Microsoft SQL Server Data source.

keboola search component

Click on Create Configuration and give your configuration a name. Configurations can be reused, so it’s a good practice to name them sensibly.

keboola flow component settings

Fill in the login details and click on “Test Connection and Load Available Sources.”

keboola setting database sql server component

If Keboola successfully authenticated to the data source, it will automatically load all available tables under that account.

keboola tables

Advanced Mode – You may want to load data as easily as shown above, but you can also load data via an SQL script if you need to modify or exclude certain data. In that case, click on “Advanced Mode.”
In the advanced mode, you can define various additional settings for individual tables, or you can create a new object and insert a script. Let’s take a look at the settings for the “Customer” table, which we need to download. I will cover advanced mode in a separate article.

In advanced mode, you can set:

  • Select Columns
  • Name and Storage Settings in Keboola Storage
  • Incremental Fetching
    • CDC – if enabled at the source
    • Based on a column (e.g., modified)
  • Primary Key Setting, Nolock Option
  • Write Query Option

keboola advanced mode

Selecting the Table – Stay in advanced mode, go back one step to the table listing, and leave only the “Customer” table in the list, removing the rest.

Setting Up the Keboola Destination Component – Google Drive

10) Google Drive Destination – Return to the Flow and select the next component – Google Drive.

Authorization – Authorization settings for the component can be done in three ways:

  • Online (instant) authorization, where Keboola authorizes you using your Google account
  • External authorization – via a link
  • Custom authorization (OAuth2 – most secure) – using client + secret

keboola google drive authorization

Selecting the Source Table – After successful authorization, click on “Add Table.” Keboola will then ask if you want to update the destination table or always create a new table (full load). You can choose “Create New Table,” for example.

keboola google drive

Google Drive and Location Selection – The final step is selecting the Google Drive folder where you want to upload your table using Keboola.

keboola google drive

Running the Finished Flow and Verification

keboola flow run

Keboola has exported the Customer file to my Google Drive.

Rate this post

Ing. Jan Zedníček - Data Engineer & Controlling

My name is Jan Zedníček and I have been working as a freelancer for many companies for more than 10 years. I used to work as a financial controller, analyst and manager at many different companies in field of banking and manufacturing. When I am not at work, I like playing volleyball, chess, doing a workout in the gym.

🔥 If you found this article helpful, please share it or mention me on your website

Leave a Reply

Your email address will not be published. Required fields are marked *