1、使用两个赋值节点定义时间戳格式的时间
开始时间:
参数:day=$[yyyy-mm-dd] start_time=$[hh24:mi:ss- 1/24/60*10]
赋值语言选ODPS SQL:select UNIX_TIMESTAMP("${day} ${end_time}");
结束时间:
参数:day=$[yyyy-mm-dd] end_time=$[hh24:mi:ss]
赋值语言选ODPS SQL:select UNIX_TIMESTAMP("${day} ${end_time}");
2、配置MongoDB同步节点
添加本节点输入参数 start_time和end_time,取值自上游的两个赋值节点
MongoDB原始数据:
脚本模式配置示例代码,源端create_time是double类型,存的时间戳。
"query": "{'create_time':{'$gte':${start_time},'$lt':${end_time}}}",
脚本配置示例
"type": "job",
"steps": [
"stepType": "mongodb",
"parameter": {
"datasource": "ds1",
"query": "{'create_time':{'$gte':${start_time},'$lt':${end_time}}}",
"column": [
"name": "doc_id",
"type": "STRING"
"name": "create_time",
"type": "DOUBLE"
"name": "date_time",
"type": "DATE"
"collectionName": "test1"
"name": "Reader",
"category": "reader"
"stepType": "odps",
"parameter": {
"partition": "",
"truncate": false,
"compress": false,
"datasource": "odps_first",
"column": [
"doc_id",
"create_time",
"date_time"
"emptyAsNull": false,
"table": "tablename"
"name": "Writer",
"category": "writer"
"version": "2.0",
"order": {
"hops": [
"from": "Reader",
"to": "Writer"
"setting": {
"errorLimit": {
"record": ""
"speed": {
"throttle": false,
"concurrent": 2
DataWorks百问百答历史记录
请点击这里查看>>
更多DataWorks技术和产品信息,欢迎加入
【DataWorks钉钉交流群】
关于MongoDB更多的知识点可看我之前这篇文章:
MongoDB框架零基础入门本身MongoDB的连接就和Mysql的数据库一样
Mysql连接方式:mysql -u -root -p(标准模式下)
MongoDB类似:mongo -u root -p之所以要增加字段值
一般都是python web框架中,在form表单内增加了一个字段值写入数据库(只有最新的数据才有这个字段值)
之前数据没有的字段值只能通过数据库添加
具体添加方式可以通过数据库内或者脚本一键添加(两种方式都差不多)在数据库内增加字段值
{ $concat: [ <expression1>, <expression2>, ... ] }
参数可以是任何有效的表达式,只要它们解析为字符串即可。 有关表达式的更多信息,请参阅表达式。
准备以下测试数据:
db.inventory.drop();
var rows =
阿里云DLA新功能来袭 查询MongoDB嵌套字段更方便
DLA之前对于MongoDB只支持简单类型的映射查询,对于嵌套字段无法直接查询,最近我们加入了对嵌套字段直接查询的支持,这篇文章给大家介绍一下。
11455