MongoDB输出

  • 文檔創建者:Wendy123456
  • 編輯次數:6
  • 最近更新:shuning 于 2026-08-03
  • 1. 概述

    1.1 版本

    FineDataLink 版本功能變更
    4.1.6.4定時任務支援寫入 MongoDB

    1.2 應用場景

    有些使用者業務系統的資料庫是 MongoDB,需要透過定時任務將數倉或其他業務系統的資料匯出到 MongoDB 。

    1.3 功能簡介

    定時任務支援寫入 MongoDB。如下圖所示:

    2. 使用說明

    1)使用該功能前,需要確定資料平台已經註冊了「NoSQL」功能點,註冊事項詳情參見:註冊簡介

    2)需要先建立 MongoDB資料連結

    3)可使用 to_json 函式構建 MongoDB 集合中的 json 欄位。

    3. 操作步驟

    icon提示:
    4.2.20.2 及之後版本,適用於本章範例 。

    3.1 場景模擬

    本文範例:將本地表 jihe 中的資料同步到包含 array 欄位類型的 MongoDB 集合中。

    範例資料(源資料):jihe.xlsx

    如下圖所示:

    1711522358785174.png

    MongoDB 集合資料(info 欄位為 array 類型):

    1711522435298321.png

    需要使用Spark SQL」算子,將二維表的多個欄位拼成一個 json 物件陣列。

    3.2 讀取本地資料

    1)建立定時任務,拖入「資料轉換」節點,進入「資料轉換」節點。

    2)拖入DB表輸入算子,讀取本地資料。如下圖所示:

    螢幕擷取畫面 2026-08-03 111409.png

    3.3 處理資料

    1)拖入Spark SQL」算子,將本地資料的 date、time 欄位拼成一個 json 物件陣列,便於後續同步到包含 array 欄位類型的 MongoDB 集合中。如下圖所示:

    注:語句中表名和表欄位需要點選生成;to_json、struct 函式具體介紹請參見:to_json、struct 函式

    SELECT username, concat("[",concat_ws(",",collect_list(to_json(struct(date,time)))),"]")as kaoqin
    FROM DB表輸入 GROUP BY username

    2026-08-03_11-25-26.png

    點選資料預覽,如下圖所示:

    2026-08-03_11-26-54.png

    3.4 資料匯出

    1)拖入MongoDB匯出算子,將處理後的資料匯出到 MongoDB 集合中,寫入方式選擇直接將資料寫入目標集合即可。如下圖所示:

    注:資料同步到 MongoDB 集合的陣列欄位時,源表欄位值中需要帶中括號[]

    1711523244795322_fixed (2).png

    各設定項介紹如下表所示:

    設定項
    說明
    資料連結
    已配置過且有使用權限的 MongoDB 資料連結
    資料庫選擇資料連結後,備選項為對應資料連結下所有資料庫
    目標集合

    已存在集合:

    選擇資料庫後,備選項為對應資料庫下所有集合

    自動建集合:

    1)支援配置目標集合欄位名稱、欄位類型

    2)4.1.6.1 之前版本集合名稱支援包含英文、數字、底線,4.1.6.1 及之後版本,集合名稱支援包含英文、中文、數字、底線

    3)支援配置欄位的非空屬性

    4)不支援配置主鍵欄位:因為 MongoDB 集合的主鍵,預設為「_id」欄位,不支援自訂

    5)不支援「手動建表」功能

    欄位映射1)不展示欄位的「主鍵」欄位(即_id欄位

    2)支援給已存在集合的「_id」欄位配置映射。如下圖所示:

    1711523509415980_fixed (1).png

    寫入方式

    1)寫入方式支援清空目標集合,再寫入資料

    2)寫入方式支援直接將資料寫入目標集合

    • 支援設定主鍵衝突策略:

    1711524291606154_fixed (1).png

    • 支援設定主鍵映射:當欄位映射中有 MongoDB「_id」欄位的映射,則主鍵預設設定「_id」的欄位映射;當欄位映射中沒有MongoDB「_id」欄位的映射,則使用者可以設定其他欄位為邏輯主鍵

    3)寫入方式支援:基於標識欄位,追加/更新/刪除資料

    1711524455296171_fixed.png

    • 邏輯刪除:只對標識值為null的資料行進行邏輯刪除

    • 支援設定標識欄位、標

    • 支援設定主鍵映射:當欄位映射中有MongoDB「_id」欄位的映射,則主鍵預設設定「_id」的欄位映射;當欄位映射中沒有MongoDB「_id」欄位的映射,則使用者可以設定其他欄位為邏輯主鍵

    2)點選右上角「儲存」按鈕。

    3.5 效果查看

    運作後,MongoDB 集合資料如下圖所示:






    附件列表


    主題: 数据开发-定时任务
    • 有幫助
    • 沒幫助
    • 只是瀏覽
    中文(繁體)

    滑鼠選中內容,快速回饋問題

    滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。

    不再提示

    10s後關閉

    獲取幫助
    線上支援
    獲取專業技術支援,快速幫助您解決問題
    工作日9:00-12:00,13:30-17:30在线
    頁面反饋
    針對當前網頁的建議、問題反饋
    售前咨詢
    業務咨詢
    電話:0933-790886或 0989-092892
    郵箱:taiwan@fanruan.com
    頁面反饋
    *問題分類
    不能為空
    問題描述
    0/1000
    不能為空

    反馈已提交

    网络繁忙