use of org.apache.carbondata.processing.newflow.DataField in project carbondata by apache.
the class DataConverterProcessorWithBucketingStepImpl method initialize.
@Override
public void initialize() throws IOException {
child.initialize();
converters = new ArrayList<>();
badRecordLogger = createBadRecordLogger();
RowConverter converter = new RowConverterImpl(child.getOutput(), configuration, badRecordLogger);
configuration.setCardinalityFinder(converter);
converters.add(converter);
converter.initialize();
List<Integer> indexes = new ArrayList<>();
List<ColumnSchema> columnSchemas = new ArrayList<>();
DataField[] inputDataFields = getOutput();
BucketingInfo bucketingInfo = configuration.getBucketingInfo();
for (int i = 0; i < inputDataFields.length; i++) {
for (int j = 0; j < bucketingInfo.getListOfColumns().size(); j++) {
if (inputDataFields[i].getColumn().getColName().equals(bucketingInfo.getListOfColumns().get(j).getColumnName())) {
indexes.add(i);
columnSchemas.add(inputDataFields[i].getColumn().getColumnSchema());
break;
}
}
}
partitioner = new HashPartitionerImpl(indexes, columnSchemas, bucketingInfo.getNumberOfBuckets());
}
use of org.apache.carbondata.processing.newflow.DataField in project carbondata by apache.
the class CarbonDataProcessorUtil method getComplexTypeString.
private static String getComplexTypeString(DataField[] dataFields) {
StringBuilder dimString = new StringBuilder();
for (int i = 0; i < dataFields.length; i++) {
DataField dataField = dataFields[i];
if (dataField.getColumn().getDataType().equals(DataType.ARRAY) || dataField.getColumn().getDataType().equals(DataType.STRUCT)) {
addAllComplexTypeChildren((CarbonDimension) dataField.getColumn(), dimString, "");
dimString.append(CarbonCommonConstants.SEMICOLON_SPC_CHARACTER);
}
}
return dimString.toString();
}
Aggregations