溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

JSON數(shù)據(jù)怎么從MongoDB遷移到MaxCompute

發(fā)布時(shí)間:2021-09-14 18:18:08 來源:億速云 閱讀:140 作者:chen 欄目:云計(jì)算

這篇文章主要介紹“JSON數(shù)據(jù)怎么從MongoDB遷移到MaxCompute”,在日常操作中,相信很多人在JSON數(shù)據(jù)怎么從MongoDB遷移到MaxCompute問題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”JSON數(shù)據(jù)怎么從MongoDB遷移到MaxCompute”的疑惑有所幫助!接下來,請(qǐng)跟著小編一起來學(xué)習(xí)吧!

{    "store": {        "book": [
             {                "category": "reference",                "author": "Nigel Rees",                "title": "Sayings of the Century",                "price": 8.95
             },
             {                "category": "fiction",                "author": "Evelyn Waugh",                "title": "Sword of Honour",                "price": 12.99
             },
             {                 "category": "fiction",                 "author": "J. R. R. Tolkien",                 "title": "The Lord of the Rings",                 "isbn": "0-395-19395-8",                 "price": 22.99
             }
          ],          "bicycle": {              "color": "red",              "price": 19.95
          }
    },    "expensive": 10}

登錄MongoDB的DMS控制臺(tái),本例中使用的數(shù)據(jù)庫(kù)為 admin,集合為 userlog,您可以在查詢窗口使用db.userlog.find().limit(10)命令查看已上傳好的數(shù)據(jù),如下圖所示。 
JSON數(shù)據(jù)怎么從MongoDB遷移到MaxCompute 
此外,需提前在數(shù)據(jù)庫(kù)內(nèi)新建用戶,用于DataWorks添加數(shù)據(jù)源。本例中使用命令db.createUser({user:"bookuser",pwd:"123456",roles:["root"]}),新建用戶名為 bookuser,密碼為 123456,權(quán)限為root。

使用DataWorks提取數(shù)據(jù)到MaxCompute

  1. 新增MongoDB數(shù)據(jù)源

    進(jìn)入DataWorks 數(shù)據(jù)集成 控制臺(tái),新增 MongoDB類型 數(shù)據(jù)源。 
    JSON數(shù)據(jù)怎么從MongoDB遷移到MaxCompute

    具體參數(shù)如下所示,測(cè)試數(shù)據(jù)源連通性通過即可點(diǎn)擊完成。由于本文中MongoDB處于VPC環(huán)境下,因此 數(shù)據(jù)源類型需選擇 有公網(wǎng)IP。 
    JSON數(shù)據(jù)怎么從MongoDB遷移到MaxCompute
    訪問地址及端口號(hào)可通過在 MongoDB管理控制臺(tái) 點(diǎn)擊實(shí)例名稱獲取,如下圖所示。 
    JSON數(shù)據(jù)怎么從MongoDB遷移到MaxCompute

  2. 新建數(shù)據(jù)同步任務(wù)

    在DataWorks上新建 數(shù)據(jù)同步類型節(jié)點(diǎn)。  
    JSON數(shù)據(jù)怎么從MongoDB遷移到MaxCompute
    新建的同時(shí),在DataWorks新建一個(gè) 建表任務(wù) ,用于存放JSON數(shù)據(jù),本例中新建表名為mqdata。 
    JSON數(shù)據(jù)怎么從MongoDB遷移到MaxCompute
    表參數(shù)可以通過圖形化界面完成。本例中mqdata表僅有一列,類型為string,列名為MQ data。 
    JSON數(shù)據(jù)怎么從MongoDB遷移到MaxCompute
    完成上述新建后,您可以在圖形化界面進(jìn)行數(shù)據(jù)同步任務(wù)參數(shù)的初步配置,如下圖所示。選擇目標(biāo)數(shù)據(jù)源名稱為odps_first,選擇目標(biāo)表為剛建立的mqdata。數(shù)據(jù)來源類型為MongoDB,選擇我們剛創(chuàng)建的數(shù)據(jù)源mongodb_userlog。完成上述配置后, 點(diǎn)擊轉(zhuǎn)換為腳本,跳轉(zhuǎn)到腳本模式。 
    JSON數(shù)據(jù)怎么從MongoDB遷移到MaxCompute
    腳本模式代碼示例如下。


    {    "type": "job",    "steps": [
            {            "stepType": "mongodb",            "parameter": {                "datasource": "mongodb_userlog", //數(shù)據(jù)源名稱
                    "column": [
                        {                        "name": "store.bicycle.color", //JSON字段路徑,本例中提取color值
                            "type": "document.document.string" //本欄目的字段數(shù)需和name一致。假如您選取的JSON字段為一級(jí)字段,如本例中的expensive,則直接填寫string即可。
                        }
                    ],                "collectionName //集合名稱": "userlog"
                },            "name": "Reader",            "category": "reader"
            },
            {            "stepType": "odps",            "parameter": {                "partition": "",                "isCompress": false,                "truncate": true,                "datasource": "odps_first",                "column": [     //MaxCompute表列名                 "mqdata"
                    ],                "emptyAsNull": false,                "table": "mqdata"
                },            "name": "Writer",            "category": "writer"
            }
        ],    "version": "2.0",    "order": {        "hops": [
                {                "from": "Reader",                "to": "Writer"
                }
            ]
        },    "setting": {        "errorLimit": {            "record": ""
            },        "speed": {            "concurrent": 2,            "throttle": false,            "dmu": 1
            }
        }
    }

    完成上述配置后,點(diǎn)擊運(yùn)行接即可。運(yùn)行成功日志示例如下所示。 
    JSON數(shù)據(jù)怎么從MongoDB遷移到MaxCompute

結(jié)果驗(yàn)證

在您的 業(yè)務(wù)流程 中新建一個(gè)ODPS SQL節(jié)點(diǎn)。 
JSON數(shù)據(jù)怎么從MongoDB遷移到MaxCompute 
您可以輸入 SELECT * from mqdata;語句,查看當(dāng)前mqdata表中數(shù)據(jù)。當(dāng)然這一步您也可以直接在 MaxCompute客戶端 中輸入命令運(yùn)行。 
JSON數(shù)據(jù)怎么從MongoDB遷移到MaxCompute

到此,關(guān)于“JSON數(shù)據(jù)怎么從MongoDB遷移到MaxCompute”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注億速云網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI