我scio
用来读取带有嵌套字段的 json 文件。
我的 json 看起来像这样{"context":"mycontext","value":{"foo":"bar", "foo1":"bar1"}}
我正在使用下面的代码,它将返回一个 Scollection[TableRow]。
val data = sc.tableRowJsonFile(jsonFile)
现在我需要从数据中获取记录让我们说“价值”并创建一个新的 Scollection[TableRow]。
我试过代码
sc.tableRowJsonFile(jsonFile).map(_.getRecord("value").asInstanceOf[TableRow])
。
但是当在数据流中执行时,它会在运行时抛出 ClassCastException
Java.lang.ClassCastException: Java.util.Arraylist cannot be cast to Java.Util.Map
我正在从云作曲家作为 dataflowRunner 运行这项工作。有什么方法可以从 scollection[TableRow] 获取记录作为新的 Scollection[TableRow]。我是 scio 和数据流的新手