我们正在使用流式处理来自EventHub的数据。传入流包含各种类型的JSON记录(大约 400 种不同类型)
每条记录都将使用ProductId属性进行分类。
示例(传入的记录流):
record1 - { productId: 101, colA: "some-val", colB: "some-val" }
record2 - { productId: 104, colC: "some-val", colD: "some-val" }
record3 - { productId: 202, colA: "some-val", colD: "some-val", colF: "some-val" }
record3 - { productId: 342, colH: "some-val", colJ: "some-val", colK: "some-val" }
每条记录中的属性数量各不相同,但具有相似productId的记录将具有完全相同数量的属性。
ProductId 范围为 (1 - 400),记录中的属性数量最多为 50。
我想阅读上面的 JSON 记录流并写入不同的parquet/delta 位置,例如
Location(Delta/Parquet) Records
-----------------------------------------------------------------
/mnt/product-101 Contains all records with productId - 101
/mnt/product-104 Contains all records with productId - 104
/mnt/product-202 Contains all records with productId - 202
/mnt/product-342 Contains all records with productId - 342
1) 如何从包含不同类型记录的流中创建 DataFrame/Dataset?
2)是否可以使用单个火花流并写入不同的增量/镶木地板位置?