gpt4 book ai didi

apache-pig - 从 Load Func 中获取 Pig Schema?

转载 作者:行者123 更新时间:2023-12-01 09:35:47 26 4
gpt4 key购买 nike

我有一个自定义加载函数,它只是扩展了 Pig 的 PigStorage 加载函数。我正在寻找使用类型转换做一些工作,但我需要访问模式,但我不确定如何/在哪里访问 pig 模式。我不确定您是否需要任何其他信息,但如果您需要,请告诉我,我很乐意提供。

最佳答案

您需要实现 LoadMetadata 接口(interface)并通过 getSchema 方法提供架构详细信息。在那里你必须使用:

org.apache.pig.ResourceSchema;
org.apache.pig.data.DataType;
org.apache.pig.impl.logicalLayer.schema.Schema;
org.apache.pig.impl.logicalLayer.schema.Schema.FieldSchema;

为您的加载函数定义架构。

public ResourceSchema getSchema() {
List<FieldSchema> fieldSchemaList = new ArrayList<FieldSchema>();

fieldSchemaList.add( new FieldSchema("column_name1", org.apache.pig.data.DataType.CHARARRAY) );
fieldSchemaList.add( new FieldSchema("column_name2", org.apache.pig.data.DataType.CHARARRAY) );
fieldSchemaList.add( new FieldSchema("column_name3", org.apache.pig.data.DataType.CHARARRAY) );

return new ResourceSchema( new Schema(fieldSchemaList) );
}

关于apache-pig - 从 Load Func 中获取 Pig Schema?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8348271/

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