嵌套json中的结构化流式传输不同模式

时间:2018-08-13 16:34:06

标签: apache-spark apache-spark-sql spark-streaming spark-structured-streaming

嗨,我有一种情况,传入的消息是一个Json,它的标题是表名,而数据部分则具有表列数据。现在,我想将此内容写入单独的文件夹,例如/emp/dept。我可以通过基于tablname聚合行来在常规流中实现此目的。但是在结构化流中,我无法拆分。如何在结构化流媒体中实现这一目标。

  

{“ tableName”:“员工”,“数据”:{“ empid”:1“,” empname“:” john“,” dept“:” CS“}       {“ tableName”:“雇员”,“ data”:{“ empid”:2”,“ empname”:“ james”,“ dept”:“ CS”}       {“ tableName”:“ dept”,“ data”:{“ dept”:“ 1”,“ deptname”:“ CS”,“ desc”:“计算机   科学部”}

1 个答案:

答案 0 :(得分:1)

我通过遍历期望表的列表来完成这项工作,然后 从数据框过滤记录,并对该表应用特定的模式和编码器,然后写入接收器。因此,读取仅发生一次,并且对于每个表,都会调用writeStream,并且其工作正常。感谢您的所有帮助

这也将根据表对木地板输出文件夹进行动态分区。