Search in sources :

Example 1 with RowConverter

use of org.apache.carbondata.processing.newflow.converter.RowConverter in project carbondata by apache.

the class DataConverterProcessorStepImpl 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();
}
Also used : RowConverterImpl(org.apache.carbondata.processing.newflow.converter.impl.RowConverterImpl) RowConverter(org.apache.carbondata.processing.newflow.converter.RowConverter)

Example 2 with RowConverter

use of org.apache.carbondata.processing.newflow.converter.RowConverter 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());
}
Also used : RowConverterImpl(org.apache.carbondata.processing.newflow.converter.impl.RowConverterImpl) HashPartitionerImpl(org.apache.carbondata.processing.newflow.partition.impl.HashPartitionerImpl) ArrayList(java.util.ArrayList) ColumnSchema(org.apache.carbondata.core.metadata.schema.table.column.ColumnSchema) RowConverter(org.apache.carbondata.processing.newflow.converter.RowConverter) BucketingInfo(org.apache.carbondata.core.metadata.schema.BucketingInfo) DataField(org.apache.carbondata.processing.newflow.DataField)

Example 3 with RowConverter

use of org.apache.carbondata.processing.newflow.converter.RowConverter in project carbondata by apache.

the class DataConverterProcessorStepImpl method close.

@Override
public void close() {
    if (!closed) {
        if (null != badRecordLogger) {
            badRecordLogger.closeStreams();
            // rename the bad record in progress to normal
            CarbonTableIdentifier identifier = configuration.getTableIdentifier().getCarbonTableIdentifier();
            CarbonDataProcessorUtil.renameBadRecordsFromInProgressToNormal(identifier.getDatabaseName() + File.separator + identifier.getTableName() + File.separator + configuration.getSegmentId() + File.separator + configuration.getTaskNo());
        }
        super.close();
        if (converters != null) {
            for (RowConverter converter : converters) {
                converter.finish();
            }
        }
    }
}
Also used : CarbonTableIdentifier(org.apache.carbondata.core.metadata.CarbonTableIdentifier) RowConverter(org.apache.carbondata.processing.newflow.converter.RowConverter)

Aggregations

RowConverter (org.apache.carbondata.processing.newflow.converter.RowConverter)3 RowConverterImpl (org.apache.carbondata.processing.newflow.converter.impl.RowConverterImpl)2 ArrayList (java.util.ArrayList)1 CarbonTableIdentifier (org.apache.carbondata.core.metadata.CarbonTableIdentifier)1 BucketingInfo (org.apache.carbondata.core.metadata.schema.BucketingInfo)1 ColumnSchema (org.apache.carbondata.core.metadata.schema.table.column.ColumnSchema)1 DataField (org.apache.carbondata.processing.newflow.DataField)1 HashPartitionerImpl (org.apache.carbondata.processing.newflow.partition.impl.HashPartitionerImpl)1