开发者社区 > 大数据与机器学习 > 大数据开发治理DataWorks > 正文

DataWorks中mongodb截取json?

DataWorks中mongodb截取json?

展开
收起
真的很搞笑 2023-07-01 17:46:40 62 0
2 条回答
写回答
取消 提交回答
  • 北京阿里云ACE会长

    在DataWorks中,您可以使用ODPS SQL节点来处理MongoDB中的JSON数据,并截取需要的部分。具体步骤如下:

    首先,在ODPS控制台中创建MongoDB数据源。具体可参考ODPS官方文档中的《MongoDB数据源使用指南》。

    在DataWorks中打开ODPS SQL节点,并使用如下语句连接MongoDB数据源:

    Copy
    CREATE TEMPORARY TABLE mongo_table AS (
    SELECT * FROM mongo_connector.database.collection
    );
    在上述语句中,mongo_connector为您在ODPS控制台中创建的MongoDB数据源名称,database和collection为MongoDB中的数据库和集合名称。

    接下来,您可以使用MySQL函数来处理JSON数据,并截取需要的部分。例如,可以使用如下语句来截取JSON数据中的某些字段:

    reasonml
    Copy
    SELECT
    JSON_EXTRACT(mongo_data, '$.id') AS id,
    JSON_EXTRACT(mongo_data, '$.name') AS name,
    JSON_EXTRACT(mongo_data, '$.age') AS age,
    JSON_EXTRACT(mongo_data, '$.gender') AS gender
    FROM mongo_table;
    在上述语句中,JSON_EXTRACT函数用于截取JSON数据中的某些字段,并将其转换为MySQL中的列。可以根据实际情况修改JSON_EXTRACT函数中的JSON路径和列名。

    点击SQL节点右上角的“运行”按钮,等待SQL语句执行完成即可。

    2023-07-31 22:36:23
    赞同 展开评论 打赏
  • 用户mongodb同步想取数据json里operator里的name的数数据,数据如下图: image.png

    具体的同步任务column的配置如下: "column":[ { "name":"operator.name", "type":"document.string" }] 这样会在对应的目标列展现hz这个数据。,此回答整理自钉群“DataWorks交流群(答疑@机器人)”

    2023-07-01 17:54:06
    赞同 展开评论 打赏

DataWorks基于MaxCompute/Hologres/EMR/CDP等大数据引擎,为数据仓库/数据湖/湖仓一体等解决方案提供统一的全链路大数据开发治理平台。

相关产品

  • 大数据开发治理平台 DataWorks
  • 相关电子书

    更多
    DataWorks数据集成实时同步最佳实践(含内测邀请)-2020飞天大数据平台实战应用第一季 立即下载
    DataWorks商业化资源组省钱秘籍-2020飞天大数据平台实战应用第一季 立即下载
    基于DataWorks数据服务构建疫情大屏-2020飞天大数据平台实战应用第一季 立即下载