gpt4 book ai didi

hadoop - Mapreduce POJO 映射

转载 作者:可可西里 更新时间:2023-11-01 15:31:07 26 4
gpt4 key购买 nike

我在 hdfs 系统中有一个文件,它是 3 个与销售数据相关的表的连接输出。(销售抬头、项目详细信息、投标详细信息)。

该文件将合并所有三个表中的列。

如果有 3 个项目和 1 个投标,我将有 6 行用于交易。因此文件中将有 6 行具有相同的交易号。我可以在映射器中读取它并创建一个包含所有字段的 DTO

现在我想从这个扁平化的 DTO 构建复杂的 DTO 结构。是否有任何可用的 pojo 映射框架,它是否支持从普通 DTO 到复杂结构的映射。

结构

public class PlainDTO{

String tranId;
String processDate;
String itemNumber;
String itemName;
int tenderId;
.......
......


}

从列表中,我需要转换为下面的结构

public class ComplexDTO{

private SlsHeader slsHeader;
private Collection<SlsItems> items;
private Collection<SlsTender> tenderDetails

}

最佳答案

从平面 DTO 到复杂 DTO 的转换是普通的 Java 内容。一旦你写了它,它就会保持这样。从复杂的 DTO 到 json,您可以使用任何 JSON-Java 解析器,如 Jackson 或 Gson。

挑战可能是,一旦您在 json 中拥有这种一对多映射(DTO 复杂结构),您应该了解 Elastic 搜索如何管理这些关系。我使用 Solr(类似于 Elastic Search)。他们在 Solr 中有子文档概念。

此外,在更高级别,如果您的 Elastic 搜索客户端是基于 java 的,您可以直接从 Flat 结构转到 ES 客户端,跳过 json。

关于hadoop - Mapreduce POJO 映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32730677/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com