Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/345.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 数据流(PY 2.x SDk)ReadFromPubSub::id\u标签&;时间戳_属性的行为异常_Python_Google Cloud Dataflow_Google Cloud Pubsub - Fatal编程技术网

Python 数据流(PY 2.x SDk)ReadFromPubSub::id\u标签&;时间戳_属性的行为异常

Python 数据流(PY 2.x SDk)ReadFromPubSub::id\u标签&;时间戳_属性的行为异常,python,google-cloud-dataflow,google-cloud-pubsub,Python,Google Cloud Dataflow,Google Cloud Pubsub,我的apache beam管道(使用Python SDK+DirecRunner进行测试…)正在阅读Pubsub主题 发布的消息和属性如下所示: 消息:[{“col1”:“测试列1”,“col2”:“测试列1”}] 属性:{ 'event_time_v1':str(time.time()), “记录id”:“第1行”, } 我正在使用这个函数。代码/文档提到了id\u标签和timestamp\u属性参数(我相信这些是非常新的添加?!仅在13天前更新了..) 当我使用id\u label为每个

我的apache beam管道(使用Python SDK+DirecRunner进行测试…)正在阅读Pubsub主题

发布的消息和属性如下所示:

消息:[{“col1”:“测试列1”,“col2”:“测试列1”}]
属性:{
'event_time_v1':str(time.time()),
“记录id”:“第1行”,
}
我正在使用这个函数。代码/文档提到了
id\u标签
timestamp\u属性
参数(我相信这些是非常新的添加?!仅在13天前更新了..)

  • 当我使用
    id\u label
    为每个元素分配一个用于重复数据消除的唯一id时,我会得到以下错误:
  • NotImplementedError:DirectRunner:id\u标签不支持PubSub读取```

    为什么?我对某些代码实现仍然缺失的理解正确吗?或者我在这里遗漏了什么吗?

  • 当我使用
    timestamp\u attribute='event\u time\u v1'
    时,为了给每个元素分配我自己的时间戳(在消息属性
    event\u time\u v1
    中传递的客户端事件时间),我注意到实际分配给元素的时间戳仍然是消息发布时间
  • 为什么?我希望是在
    event\u time\u v1中经过的时间

    我使用下面的DoFn来打印元素的时间戳

    class PrintFn(beam.DoFn):


    非常感谢您对这一点的解释,我今天也遇到了同样的问题,实际上Jira上存在一个公开问题,即id_标签和时间戳_属性在direct runner中不可用(我从阅读中假设,任何非数据流运行程序都不可用)。在将DataflowRunner指定为运行程序时,我成功地使用了id_标签(还有一些其他问题,但这是由by决定的)

    Jira问题如下:

    因此,目前看来,使用direct runner还不可能做到这一点

          print(element, timestamp)
          return [element]