跳至主要内容
版本:v4

FTP/SFTP

Step 1: 建立資料來源

您可以透過以下兩種操作來建立資料來源,第一種為點擊側欄 Data Source 的 “+” 按鈕,或是點擊 Overview 頁面中的 Create a Data Source 按鈕來建立。

1_ftp

Step 2: 設定連線資訊

在彈出的視窗表單中,填入及設定連線資訊,並點擊 Submit 送出。相關連線欄位設定細節如下方說明。

3_ftp

相關連線欄位設定細節如下方說明。

Basic

  • Name: 資料庫於 Canner Enterprise 之顯示名稱,後續可作修改。
  • Data Source Type: 資料庫類型,請選擇 FTP

Data Source Properties

File Format

Canner Enterprise 每個資料來源只能連結單一種檔案格式,請在此選擇一個您要連結的 Canner Enterprise 支援檔案格式。舉例來說,若您選擇連結 CSV 格式檔案,即使您 FTP 指定路徑下有包含 JSON, Excel, CSV 等多種資料格式檔案,系統也只會連結 CSV 檔。

URI

填入您要連結的 FTP 路徑。
路徑格式為: ftp(s)://<host>:<port>/<folder_name>

若您填入的 URI 有特殊字元例如 :?#[]@!$&'()*+; ,會導致系統判斷錯誤,請注意您的 Bucket 或檔案名稱不能包含這些字元。

Scan Type

1.Directory

系統會連結您路徑目錄下的所有指定格式檔案。
請根據您的資料夾結構以及以下兩種連結情境,於 URI 中填入您要指定的資料夾目錄路徑。

範例檔案結構:

Superstore/
├─ Orders/
│ ├─ Orders_2014.csv
│ ├─ Orders_2015.csv
├─ People/
│ ├─ People_East.csv
│ ├─ People_North.csv
│ ├─ People_South.csv
│ ├─ People_West.csv

連結情境A. 指定路徑下每個檔案為一個獨立的 Table
連結 URI ftp://35.65.32.100/Superstore/Orders 下的 Directory。
連線成功後,此來源在 Canner Enterprise 中會有Orders_2014Orders_2015兩個 Table。

連結情境B. 指定路徑下每個資料夾為一個獨立的 Table
連結 URI ftp://35.65.32.100/Superstore 下的 Directory。
連線成功後,此來源在 Canner Enterprise 中會有OrdersPeople兩個 Table。

注意

此情境需要資料夾下的所有檔案格式及 Schema 皆相同。

Recursive Scan

若您連結的指定路徑目錄下還有資料夾,並且希望連結成功後所有資料夾可於 Workspace 中 Query 到的話,可勾選此選項。

2. Single file path

系統會連結您指定路徑的單一檔案。 於 URI 中填入您要指定的檔案路徑。

範例檔案結構:

Superstore/
├─ Orders/
│ ├─ Orders_2014.csv
│ ├─ Orders_2015.csv

範例: 連結 URI ftp://35.65.32.100/Superstore/Orders/Orders_2014.csv 檔案。
連線成功後,此來源在 Canner Enterprise 中會有 Orders_2014 一個 Table。

注意

如果您的 File Format 選擇 Excel 格式,則只能使用 Single file path 方式來連結檔案,請填入單一檔案的連結路徑,系統會將該 Excel 檔中的每個工作表(Sheet) 解析為各個 Table。

3. Multiple file paths

系統會連結您路徑目錄下的所有指定格式檔案,並且可以指定 include/exclude 特定的檔案,再整合為單一 Table

注意

此用法需要您 include 的所有檔案格式及 Schema 皆相同。

Basic URI 中填入您要指定的資料夾目錄路徑,再接續設定要包含或排除的指定檔案路徑。

  • Include file paths: 列出在 Basic URI 下您要指定連結的檔案路徑(支援 wildcard (*),例如 /<folder-name>/*.csv
  • Exclude file paths: 列出在 Basic URI 下您要指定排除的檔案路徑 (支援 wildcard (*),例如 /<folder-name>/*.csv
範例檔案結構:

Superstore/
├─ 2021/
│ ├─ Orders_2021.csv
│ ├─ Orders_history.csv
│ ├─ People_2021.json
│ ├─ .metadata
├─ 2022/
│ ├─ Orders_2022.csv
│ ├─ People_2021.json
│ ├─ .metadata

範例: 連結 Basic URI ftp://35.65.32.100/Superstore 下的 Directory。
Include file paths: 設定 /2021/Orders_2021.csv /2022/Orders_2022.csv
Exclude file paths: 設定 /2021/Orders_history.csv
連線成功後,此來源在 Canner Enterprise 中會有 Superstore 一個 Table,此 Table 內容為 /2021/Orders_2021.csv /2022/Orders_2022.csv 兩份檔案整合。

  • Recursive Scan

若您連結的指定路徑目錄下還有資料夾,並且希望連結成功後所有資料夾可於 Workspace 中 Query 到的話,可勾選此選項。

  • Username / Password

請輸入連接此 SFTP 的 使用者名稱與密碼。

File Format Details

  • File content with headers: CSV 檔案是否有 Header,打開此選項系統會將檔案首列解析為 Column 名稱。
  • Skip Lines: 可以選擇將檔案中的前幾行跳過不匯入。
  • Separator Character: 選擇 CSV 檔案分隔符號。
  • Explore Timeout: 設定系統連結解析資料來源的 Timeout 時間。若系統連結失敗並於 Status 錯誤訊息中顯示 Explore Timeout 錯誤時,可嘗試調高此參數,延長系統解析時間。
  • 信息

    當 File format 為 Excel 時,有以下注意事項。

    1. Canner Enterprise僅連結表格資料,設定格式如字型、粗體、斜體、底線,框線、底色等,將不會顯示於連結後的資料表(Table)上。
    2. Canner Enterprise僅連結表格資料,圖表將不會匯入。
    3. 若工作表欄位內容含有走勢圖,在連結後將被轉換為null。
    4. 若工作表欄位內容含有公式,將會連結公式計算後之數值。
    5. 若工作表同一欄(column)含有不同型別的資料(混合型別內容),將導致系統讀取資料失敗。“混合型別內容”常出現在以下狀況:
      • 同一欄有文字格式的值也有數字格式的值
      • 同一欄在最後一列(row)用公式計算總數
      • 同一欄的不同欄位(cell) 包含不同公式
    6. 目前 Canner Enterprise 不支援Time數字格式,若工作表含有此格式,將無法顯示完整原始資料,只能顯示年/月/日,例如:原始資料為2000-01-01 07:00 AM,將會顯示為2000-01-01。

    若發生混合型別內容問題,系統將出現錯誤訊息 (如下圖),可使用”Manage Mapping Columns”功能更改欄位型別為”varchar”,即可正常讀取資料。

    Manage Mapping Columns 功能

    請至此資料來源之Table 頁籤. 在欲更改的資料表項目(即所連結的工作表)選取 Managing Mapping Columns 選項後即可進行設定。

    • 選取Manage Mapping Columns 選項

    • 輸入更改欄位型別語法後點擊Submit 即完成設定(若點擊 Reinitialize 即還原成初始狀態)

    Step 3: 完成建立

    Submit 送出後,稍後片刻會跳回列表頁面,並可看到 FTP 出現在資料來源在列表中。

    4_ftp