首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用p.run()函数时的Apache Beam问题

使用p.run()函数时的Apache Beam问题
EN

Stack Overflow用户
提问于 2018-10-30 20:32:33
回答 1查看 644关注 0票数 0

我在我的Apache光束脚本中遇到了一个问题。目前,它仍然是一个草案,我正在DirectRunner上运行它。但我一直收到一个错误,这对我来说毫无意义。这是我的脚本的一个缩写版本:

代码语言:javascript
运行
复制
options = PipelineOptions()
p = TestPipeline(options = options)
bill_info = (p
             | 'Create Pcollection' >> beam.Create('a')
             | 'Reformatting' >> beam.ParDo(ReformatAttributesFn())
             | 'Scrub First Name' >> beam.ParDo(ScrubFnameFn())
             | 'Scrub Last Name' >> beam.ParDo(ScrubLnameFn())
             | 'Fix Nickname' >> beam.Map(add_nickname, n_tbl=beam.pvalue.AsList(nickname_tbl_ex), return_n=False)
             | 'Check Sponsor' >> beam.Map(check_pol, p_tbl=beam.pvalue.AsList(pol_tbl_ex))
             | 'Check Bill' >> beam.Map(check_bill, b_tbl=beam.pvalue.AsList(bill_tbl_ex))
             | 'Final Formatting' >> beam.ParDo(FinalFormatFn())
             | 'Write To Text' >> beam.io.WriteToText('C:/Users/cmatt/Downloads/test_bill_votes', 
file_name_suffix='.csv'))
p.run()

我在p.run()函数上收到的错误是"TypeError: object()不带参数“。但即使使用最基本的管道,例如:

代码语言:javascript
运行
复制
options = PipelineOptions()
p = TestPipeline(options = options)
bill_info = (p
             | 'Create Pcollection' >> beam.Create('a'))
p.run()

我仍然得到相同的错误返回。现在,管道对象不应该接受任何输入;它只是一个通过管道运行所有PCollections的方法。但是我的脚本的哪一部分会导致这个错误呢?是不是我的虚拟环境中的一些模块没有正确排列?还是有一个我看不到的单独问题?

感谢大家的帮助!

EN

回答 1

Stack Overflow用户

发布于 2018-12-29 07:49:00

您的python脚本执行没有足够的上下文。你也收到了基本数据流指令的相同错误,这让我认为你的脚本有一个与python本身相关的错误,例如'mixed tabs and spaces',你有这样的东西吗?

我只是从python命令行做了一个快速测试,它工作了(步骤取自Quickstart Using Python):

代码语言:javascript
运行
复制
>>> import apache_beam as beam
>>> from apache_beam.pipeline import PipelineOptions
>>> options = PipelineOptions()
>>> p = beam.Pipeline(options=options)
>>> bill_info = (p | 'Create Pcollection' >> beam.Create(['a','b']))
>>> p.run()
<apache_beam.runners.portability.fn_api_runner.RunnerResult object at 0x7fb57856d290>
>>>

如果上面的信息没有帮助,你能分享你正在执行的整个基本脚本以及如何设置你的虚拟环境吗?这将有助于复制。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53064386

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档