Google cloud dataflow 带有自定义线定界符的Csv边界源

Google cloud dataflow 带有自定义线定界符的Csv边界源,google-cloud-dataflow,Google Cloud Dataflow,我想用除默认行分隔符之外的行分隔符读取csv文件。每个csv记录跨越多行,因此TextIO.Read不够 我应该扩展FileBasedSource还是存在任何现有的CSVBBasedSource(带有自定义行/字段分隔符) 我在查看splitIntoBundles()api时,XmlSource没有覆盖isSplittable(),因此可以将其拆分为多个捆绑包,我想知道XmlSource是如何处理这一点的,因为拆分可以发生在a的中间,因为拆分只基于desiredBundleSize 这是正确的,

我想用除默认行分隔符之外的行分隔符读取csv文件。每个csv记录跨越多行,因此TextIO.Read不够

我应该扩展FileBasedSource还是存在任何现有的CSVBBasedSource(带有自定义行/字段分隔符)


我在查看splitIntoBundles()api时,XmlSource没有覆盖isSplittable(),因此可以将其拆分为多个捆绑包,我想知道XmlSource是如何处理这一点的,因为拆分可以发生在a的中间,因为拆分只基于desiredBundleSize

这是正确的,这需要一个自定义的基于文件的源实现才能工作。关于XMLSource,记录和根元素名称必须是唯一的(即,其他元素不能有这些名称)。我们将更新文档以反映这一点,并考虑在将来对此进行改进。

谢谢。我做了一个有趣的实现,将下面的csv字节转换为xml,并将解析委托给XmlSource。美好的很高兴你能跑起来。