JSON数据怎么从OSS迁移到MaxCompute

这篇文章主要讲解了“JSON数据怎么从OSS迁移到MaxCompute”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“JSON数据怎么从OSS迁移到MaxCompute”吧!

成都创新互联是一家集网站建设,黑山企业网站建设,黑山品牌网站建设,网站定制,黑山网站建设报价,网络营销,网络优化,黑山网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

数据上传OSS

将您的JSON文件重命名后缀为TXT文件,并上传到OSS。本文中使用的JSON文件示例如下。

{    "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}

将applog.txt文件上传到OSS,本文中OSS Bucket位于华东2区。 
JSON数据怎么从OSS迁移到MaxCompute

使用DataWorks导入数据到MaxCompute

  1. 新增OSS数据源

    进入DataWorks 数据集成 控制台,新增 OSS类型数据源 。 
    JSON数据怎么从OSS迁移到MaxCompute

    具体参数如下所示,测试数据源连通性通过即可点击完成。Endpoint地址请参见 OSS各区域的外网、内网地址 ,本例中为http://oss-cn-shanghai.aliyuncs.com或 http://oss-cn-shanghai-internal.aliyuncs.com(由于本文中OSS和DataWorks项目处于同一个region中,本文选用后者,通过内网连接)。 
    JSON数据怎么从OSS迁移到MaxCompute

  2. 新建数据同步任务

    在DataWorks上新建 数据同步类型节点。  
    JSON数据怎么从OSS迁移到MaxCompute
    新建的同时,在DataWorks新建一个 建表任务 ,用于存放JSON数据,本例中新建表名为mqdata。 
    JSON数据怎么从OSS迁移到MaxCompute
    表参数可以通过图形化界面完成。本例中mqdata表仅有一列,类型为string,列名为MQ data。 
    JSON数据怎么从OSS迁移到MaxCompute
    完成上述新建后,您可以在图形化界面配置数据同步任务参数,如下图所示。选择目标数据源名称为odps_first,选择目标表为刚建立的mqdata。数据来源类型为OSS,Object前缀可填写文件路径及名称。列分隔符使用TXT文件中不存在的字符即可,本文中使用 ^(对于OSS中的TXT格式数据源,Dataworks支持多字符分隔符,所以您可以使用例如 %&%#^$$^%这样很难出现的字符作为列分隔符,保证分割为一列)。 
    JSON数据怎么从OSS迁移到MaxCompute
    映射方式选择默认的同行映射即可。 
    JSON数据怎么从OSS迁移到MaxCompute
    点击左上方的切换脚本按钮,切换为脚本模式。修改fileFormat参数为: "fileFormat":"binary"。该步骤可以保证OSS中的JSON文件同步到MaxCompute之后存在同一行数据中,即为一个字段。其他参数保持不变,脚本模式代码示例如下。

    {    "type": "job",    "steps": [
            {            "stepType": "oss",            "parameter": {                "fieldDelimiterOrigin": "^",                "nullFormat": "",                "compress": "",                "datasource": "OSS_userlog",                "column": [
                        {                        "name": 0,                        "type": "string",                        "index": 0
                        }
                    ],                "skipHeader": "false",                "encoding": "UTF-8",                "fieldDelimiter": "^",                "fileFormat": "binary",                "object": [                    "applog.txt"
                    ]
                },            "name": "Reader",            "category": "reader"
            },
            {            "stepType": "odps",            "parameter": {                "partition": "",                "isCompress": false,                "truncate": true,                "datasource": "odps_first",                "column": [                    "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
            }
        }
    }

    完成上述配置后,点击运行接即可。运行成功日志示例如下所示。 
    JSON数据怎么从OSS迁移到MaxCompute

获取JSON字段信息

在您的 业务流程 中新建一个ODPS SQL节点。 
JSON数据怎么从OSS迁移到MaxCompute 
您可以首先输入 SELECT*from mqdata;语句,查看当前mqdata表中数据。当然这一步及后续步骤,您也可以直接在 MaxCompute客户端 中输入命令运行。 
JSON数据怎么从OSS迁移到MaxCompute
确认导入表中的数据结果无误后,您可以使用MaxCompute内建字符串函数 GET_JSON_OBJECT 获取您想要的JSON数据。本例中使用 SELECT GET_JSON_OBJECT(mqdata.MQdata,'$.expensive') FROM mqdata;获取JSON文件中的 expensive值。如下图所示,可以看到已成功获取数据。 
JSON数据怎么从OSS迁移到MaxCompute

感谢各位的阅读,以上就是“JSON数据怎么从OSS迁移到MaxCompute”的内容了,经过本文的学习后,相信大家对JSON数据怎么从OSS迁移到MaxCompute这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联,小编将为大家推送更多相关知识点的文章,欢迎关注!


本文名称:JSON数据怎么从OSS迁移到MaxCompute
地址分享:http://ybzwz.com/article/phdodh.html