无法在数据流笔记本上的Jupyter笔记本中导入JsonPickle

2024-05-16 21:38:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在用python在Apache Beam上构建一个管道,并使用Dataflow上的笔记本进行原型设计。在尝试加载JSON时,我意识到我与beam.io.ReadFromText(file_pattern, coder=JsonCoder())一起使用的JSON编码器(基本上是JSON.loads())没有规范化JSON。这意味着集合中的一些列只是作为字符串嵌套的JSON

因此,为了规范化JSON,我决定使用JsonPickle。但是,即使在安装并重新启动内核之后,模块导入也不起作用。你能帮忙吗?另外,还有一种更好的方法可以规范化Apache Beam世界上的JSON,请分享

enter image description here


Tags: iojson管道apache笔记本规范化原型file
2条回答

您可以使用默认的编码器并使用后续的ParDo来规范化/格式化转换生成的元素,而不是更改提供给transformReadFromText的编码器吗Coder应被视为Beam runner序列化/反序列化转换生成的元素的一种方式。使用Coder格式化转换生成的元素是一种反模式

根据documentation,您需要像下面这样运行命令:

%pip install jsonpickle

相关问题 更多 >