public static List<DimensionSchema> getDefaultSchemas( final List<String> dimNames, final DimensionSchema.MultiValueHandling multiValueHandling ) { return dimNames.stream() .map(input -> new StringDimensionSchema(input, multiValueHandling, true)) .collect(Collectors.toList()); }
protected DimensionSchema(String name, MultiValueHandling multiValueHandling, boolean createBitmapIndex) { if (Strings.isNullOrEmpty(name)) { log.warn("Null or Empty Dimension found"); } this.name = name; this.multiValueHandling = multiValueHandling == null ? MultiValueHandling.ofDefault() : multiValueHandling; this.createBitmapIndex = createBitmapIndex; }
@JsonCreator public static MultiValueHandling fromString(String name) { return name == null ? ofDefault() : valueOf(StringUtils.toUpperCase(name)); }
public static DimensionHandler getHandlerFromCapabilities( String dimensionName, ColumnCapabilities capabilities, MultiValueHandling multiValueHandling ) { if (capabilities == null) { return new StringDimensionHandler(dimensionName, multiValueHandling, true); } multiValueHandling = multiValueHandling == null ? MultiValueHandling.ofDefault() : multiValueHandling; if (capabilities.getType() == ValueType.STRING) { if (!capabilities.isDictionaryEncoded()) { throw new IAE("String column must have dictionary encoding."); } return new StringDimensionHandler(dimensionName, multiValueHandling, capabilities.hasBitmapIndexes()); } if (capabilities.getType() == ValueType.LONG) { return new LongDimensionHandler(dimensionName); } if (capabilities.getType() == ValueType.FLOAT) { return new FloatDimensionHandler(dimensionName); } if (capabilities.getType() == ValueType.DOUBLE) { return new DoubleDimensionHandler(dimensionName); } // Return a StringDimensionHandler by default (null columns will be treated as String typed) return new StringDimensionHandler(dimensionName, multiValueHandling, true); }
@JsonCreator public static MultiValueHandling fromString(String name) { return name == null ? ofDefault() : valueOf(StringUtils.toUpperCase(name)); }
public StringDimensionIndexer(MultiValueHandling multiValueHandling, boolean hasBitmapIndexes) { this.dimLookup = new DimensionDictionary(); this.multiValueHandling = multiValueHandling == null ? MultiValueHandling.ofDefault() : multiValueHandling; this.hasBitmapIndexes = hasBitmapIndexes; }
protected DimensionSchema(String name, MultiValueHandling multiValueHandling, boolean createBitmapIndex) { if (Strings.isNullOrEmpty(name)) { log.warn("Null or Empty Dimension found"); } this.name = name; this.multiValueHandling = multiValueHandling == null ? MultiValueHandling.ofDefault() : multiValueHandling; this.createBitmapIndex = createBitmapIndex; }
public static List<DimensionSchema> getDefaultSchemas( final List<String> dimNames, final DimensionSchema.MultiValueHandling multiValueHandling ) { return dimNames.stream() .map(input -> new StringDimensionSchema(input, multiValueHandling, true)) .collect(Collectors.toList()); }
public static DimensionHandler getHandlerFromCapabilities( String dimensionName, ColumnCapabilities capabilities, MultiValueHandling multiValueHandling ) { if (capabilities == null) { return new StringDimensionHandler(dimensionName, multiValueHandling, true); } multiValueHandling = multiValueHandling == null ? MultiValueHandling.ofDefault() : multiValueHandling; if (capabilities.getType() == ValueType.STRING) { if (!capabilities.isDictionaryEncoded()) { throw new IAE("String column must have dictionary encoding."); } return new StringDimensionHandler(dimensionName, multiValueHandling, capabilities.hasBitmapIndexes()); } if (capabilities.getType() == ValueType.LONG) { return new LongDimensionHandler(dimensionName); } if (capabilities.getType() == ValueType.FLOAT) { return new FloatDimensionHandler(dimensionName); } if (capabilities.getType() == ValueType.DOUBLE) { return new DoubleDimensionHandler(dimensionName); } // Return a StringDimensionHandler by default (null columns will be treated as String typed) return new StringDimensionHandler(dimensionName, multiValueHandling, true); }
public StringDimensionIndexer(MultiValueHandling multiValueHandling, boolean hasBitmapIndexes) { this.dimLookup = new DimensionDictionary(); this.multiValueHandling = multiValueHandling == null ? MultiValueHandling.ofDefault() : multiValueHandling; this.hasBitmapIndexes = hasBitmapIndexes; }