Follow our setup guide to sync files from Google Cloud Storage to your destination.
Prerequisiteslink
To set up the Fivetran Google Cloud Storage connector, you need:
- A Google Cloud Storage bucket containing files with supported file types and encodings
- A Google Cloud account with the ability to grant Fivetran permission to read from the bucket
Setup instructionslink
Select authentication methodlink
First, decide whether to authenticate your Google Cloud Storage bucket using Fivetran’s service account or your custom service account.
Use Fivetran service account
Find the automatically generated email in your connector setup form and make a note of it. You will need it to edit your Google Cloud Storage bucket permissions.
Use custom service account
-
Create a private key (JSON) for your service account. Make a note of it. You will need it to configure Fivetran.
Authorize Service Accountlink
-
Go to your Google Cloud Storage console.
-
Select the bucket you want to use.
-
Go to Permissions and then click Add Members.
-
In the Add members window, enter the service account you found or created in Step 1.
-
From the Select a role dropdown, select Storage Object Viewer.
Find Bucket namelink
-
Go back to the main Google Cloud Storage Console.
-
Find the name of your bucket and make a note of it. You will need it to configure Fivetran.
Finish Fivetran configurationlink
-
In the connector setup form, enter the Destination schema name of your choice.
-
Enter the Destination table name.
-
Select your Authentication Method: Fivetran Owned Service Account or Custom Service Account. If you selected Custom Service Account, enter the Service Account Private Key you created in Step 1.
-
Enter the Bucket name you found in Step 3.
-
Choose your configuration options. Using these configuration options, you can select subsets of your folders, certain types of files, and more to sync only the files you need in your destination. Setting up multiple Google Cloud Storage connectors targeted at the same bucket, but with different options, can allow you to slice and dice a bucket any way you’d like. You can use the following configuration options:
-
Folder Path (Optional) This folder path is used to specify a portion of the file system in which you’d like Fivetran to look for files. Any files under the specified folder and all of its nested subfolders will be examined for files we can upload. If no prefix is supplied, we’ll look through the entire file system for files to sync.
-
File Pattern (Optional) The file pattern is a regular expression that we use to decide whether or not to sync certain files. It applies to everything under the prefix. For instance, suppose under the prefix
logs
you had three folders:2017
,2016
, anderrors
. Using the pattern\d\d\d\d/.*
, you could exclude all the files in theerrors
folder, because\d\d\d\d
only applies to the folders whose name consists of four consecutive digits, and because.*
after/
applies to any files in these folders. If you’re not sure what regular expression to use, you can leave this field blank, and we’ll sync everything under the prefix. If you’re feeling particularly bold, you can learn to write your own regex here and test it out using this tool. -
File Type The file type is used to let Fivetran know that even files without a file extension ought to be parsed as this file type. For example, if you have an automated CSV output system that saves files without a .csv extension, you can specify the CSV type and we will sync them correctly as CSVs. Selecting “infer” will let Fivetran infer from a file’s extension (
.csv
,.tsv
,.json
,.avro
, or.log
) what to sync. If you do choose a file type, every file we examine will be interpreted as the file type you select, so make sure everything Fivetran syncs has the same file type! -
Compression The compression format is used to let Fivetran know that even files without a compression extension should be decompressed using the selected compression format. For example, if you have an automated CSV output system that GZIPs files to save space, but saves them without a .gzip extension, you can set this field to GZIP. The integration will then decompress every file that it examines using GZIP. If all of your compressed files are correctly marked with a matching compression extension (
.bz2
,.gz
,.gzip
,.tar
, or.zip
), you can select “infer”. -
Error Handling Selecting skip ignores any improperly formatted data within a file, allowing you to sync only valid data. Choosing fail enables you to prevent a file from syncing if any improperly formatted data is detected. With either option you will receive a notification on your dashboard if errors are encountered.
-
-
(Optional) To use the advanced configuration options, set the Enable Advanced Options toggle to ON. You can use the following configuration options for specific use cases:
-
Modified File Merge When a previously synced file is modified, should the rows in the destination be replaced or should the new rows be appended to the table.
upsert_file
option will replace records in destination, using the filename and line number as the primary key.append_file
option will append records. -
Archive Folder Pattern If there are multiple files within archive (TAR or ZIP) folders, you can use the archive folder pattern to filter those as well. For example, the archive folder pattern
.*json
will sync from an archive folder only those files that end in a .json file extension. -
Null Sequence (Optional) CSVs have no native notion of a null character. However, some CSV generators have created one, using characters such as
\N
to represent null. Note: text is un-escaped before the null sequence is matched, so don’t use the escape character in your null sequence. Only use this field if you are sure your CSVs have a null sequence. -
Delimiter (Optional) The delimiter is a character used in CSV files to separate one field from the next. If this is left blank, Fivetran will infer the delimiter for each file, and files of many different types of delimiters can be stored in the same folder with no problems. If this is not left blank, then all CSV files in your search path will be parsed with this delimiter.
-
Escape Character (Optional) CSVs have a special rule for escaping quotation marks as opposed to other characters - they require two consecutive double quotes to represent an escaped double quote. However, some CSV generators do not follow this rule and use other characters like backslash for escaping. Only use this field if you are sure your CSVs have a different escape character.
-
Skip Header Lines (Optional) Some CSV generating programs include additional header lines at the top of the file. They consist of few lines that do not match the format of the rest of the rows in the file. These header rows can cause undesired behavior in Fivetran because we attempt to parse them as if they were records in your CSV. By setting this value, you can skip fixed-length headers at the beginning of your CSV files.
-
Skip footer Lines (Optional) Some CSV generating programs include a footer at the bottom of the file. It consists of a few lines that do not match the format of the rest of the rows in the file. These footer rows can cause undesired behavior in Fivetran because we attempt to parse them as if they were records in your CSV. By setting this value, you can skip fixed-length footers at the end of your CSV files.
-
Headerless Files (Optional) Some CSV generating programs do not include column name headers for the files — they only contain data rows. By setting this value, you request Fivetran to generate generic column names following the convention of
column_0
,column_1
, …column_n
to map the rows.
-
-
Click Save & Test. Fivetran will take it from here and sync your data from your Google Cloud Storage.
Related Contentlink
description Connector Overview
settings API Connector Configuration