Class SegmentGeneratorConfig

    • Field Detail

      • DEFAULT_NO_DICTIONARY_SIZE_RATIO_THRESHOLD

        public static final double DEFAULT_NO_DICTIONARY_SIZE_RATIO_THRESHOLD
        See Also:
        Constant Field Values
    • Constructor Detail

      • SegmentGeneratorConfig

        public SegmentGeneratorConfig​(TableConfig tableConfig,
                                      Schema schema)
        Constructs the SegmentGeneratorConfig with table config and schema. NOTE: The passed in table config and schema might be changed.
        Parameters:
        tableConfig - table config of the segment. Used for getting time column information and indexing information
        schema - schema of the segment to be generated. The time column information should be taken from table config. However, for maintaining backward compatibility, taking it from schema if table config is null. This will not work once we start supporting multiple time columns (DateTimeFieldSpec)
    • Method Detail

      • setCustomProperties

        public void setCustomProperties​(Map<String,​String> properties)
      • setDateTimeFormatSpec

        public void setDateTimeFormatSpec​(DateTimeFormatSpec formatSpec)
      • containsCustomProperty

        public boolean containsCustomProperty​(String key)
      • getRawIndexCreationColumns

        public Set<String> getRawIndexCreationColumns()
      • getInvertedIndexCreationColumns

        public List<String> getInvertedIndexCreationColumns()
      • getBloomFilterCreationColumns

        public List<String> getBloomFilterCreationColumns()
      • getRangeIndexCreationColumns

        public List<String> getRangeIndexCreationColumns()
      • getTextIndexCreationColumns

        public List<String> getTextIndexCreationColumns()
        Used by org.apache.pinot.core.segment.creator.impl.SegmentColumnarIndexCreator to get the list of text index columns.
        Returns:
        list of text index columns.
      • getFSTIndexCreationColumns

        public List<String> getFSTIndexCreationColumns()
      • getForwardIndexDisabledColumns

        public List<String> getForwardIndexDisabledColumns()
      • getColumnSortOrder

        public List<String> getColumnSortOrder()
      • setRawIndexCreationColumns

        public void setRawIndexCreationColumns​(List<String> rawIndexCreationColumns)
      • setInvertedIndexCreationColumns

        @Deprecated
        public void setInvertedIndexCreationColumns​(List<String> indexCreationColumns)
        Deprecated.
      • setTextIndexCreationColumns

        public void setTextIndexCreationColumns​(List<String> textIndexCreationColumns)
        Used by org.apache.pinot.core.realtime.converter.RealtimeSegmentConverter and text search functional tests
        Parameters:
        textIndexCreationColumns - list of columns with text index creation enabled
      • setRangeIndexCreationColumns

        public void setRangeIndexCreationColumns​(List<String> rangeIndexCreationColumns)
      • setForwardIndexDisabledColumns

        public void setForwardIndexDisabledColumns​(List<String> forwardIndexDisabledColumns)
      • setFSTIndexCreationColumns

        public void setFSTIndexCreationColumns​(List<String> fstIndexCreationColumns)
      • setColumnSortOrder

        public void setColumnSortOrder​(List<String> sortOrder)
      • getVarLengthDictionaryColumns

        public List<String> getVarLengthDictionaryColumns()
      • setVarLengthDictionaryColumns

        public void setVarLengthDictionaryColumns​(List<String> varLengthDictionaryColumns)
      • createInvertedIndexForColumn

        public void createInvertedIndexForColumn​(String column)
      • createInvertedIndexForAllColumns

        public void createInvertedIndexForAllColumns()
      • getInputFilePath

        public String getInputFilePath()
      • setInputFilePath

        public void setInputFilePath​(String inputFilePath)
      • setFormat

        public void setFormat​(FileFormat format)
      • getRecordReaderPath

        public String getRecordReaderPath()
      • setRecordReaderPath

        public void setRecordReaderPath​(String recordReaderPath)
      • getOutDir

        public String getOutDir()
      • setOutDir

        public void setOutDir​(String dir)
      • getTableName

        public String getTableName()
      • setTableName

        public void setTableName​(String tableName)
      • getSegmentName

        public String getSegmentName()
      • setSegmentName

        public void setSegmentName​(String segmentName)
      • getCreatorVersion

        public String getCreatorVersion()
      • setCreatorVersion

        public void setCreatorVersion​(String creatorVersion)
      • getSegmentNamePrefix

        public String getSegmentNamePrefix()
      • setSegmentNamePrefix

        public void setSegmentNamePrefix​(String segmentNamePrefix)
      • getSegmentNamePostfix

        public String getSegmentNamePostfix()
      • setSegmentNamePostfix

        public void setSegmentNamePostfix​(String postfix)
        If you are adding a sequence Id to the segment, please use setSequenceId.
      • getTimeColumnName

        public String getTimeColumnName()
      • setTimeColumnName

        public void setTimeColumnName​(String timeColumnName)
      • getSequenceId

        public int getSequenceId()
      • setFSTIndexType

        public void setFSTIndexType​(FSTType fstType)
      • getFSTIndexType

        public FSTType getFSTIndexType()
      • setSequenceId

        public void setSequenceId​(int sequenceId)
        This method should be used instead of setPostfix if you are adding a sequence number.
      • getSegmentTimeUnit

        public TimeUnit getSegmentTimeUnit()
      • setSegmentTimeUnit

        public void setSegmentTimeUnit​(TimeUnit timeUnit)
      • getCreationTime

        public String getCreationTime()
      • setCreationTime

        public void setCreationTime​(String creationTime)
      • getStartTime

        public String getStartTime()
      • setStartTime

        public void setStartTime​(String startTime)
      • getEndTime

        public String getEndTime()
      • setEndTime

        public void setEndTime​(String endTime)
      • setSegmentVersion

        public void setSegmentVersion​(SegmentVersion segmentVersion)
      • getSchema

        public Schema getSchema()
      • setStarTreeIndexConfigs

        public void setStarTreeIndexConfigs​(List<StarTreeIndexConfig> starTreeIndexConfigs)
      • isEnableDefaultStarTree

        public boolean isEnableDefaultStarTree()
      • setEnableDefaultStarTree

        public void setEnableDefaultStarTree​(boolean enableDefaultStarTree)
      • inferSegmentNameGeneratorType

        public String inferSegmentNameGeneratorType()
        Infers the segment name generator type based on segment generator config properties. Will default to simple SegmentNameGeneratorType.
      • setSegmentNameGenerator

        public void setSegmentNameGenerator​(SegmentNameGenerator segmentNameGenerator)
      • isOnHeap

        public boolean isOnHeap()
      • setOnHeap

        public void setOnHeap​(boolean onHeap)
      • isSkipTimeValueCheck

        public boolean isSkipTimeValueCheck()
      • setSkipTimeValueCheck

        public void setSkipTimeValueCheck​(boolean skipTimeValueCheck)
      • getDimensions

        public List<String> getDimensions()
      • getDateTimeColumnNames

        public List<String> getDateTimeColumnNames()
      • setSegmentPartitionConfig

        public void setSegmentPartitionConfig​(SegmentPartitionConfig segmentPartitionConfig)
      • isNullHandlingEnabled

        public boolean isNullHandlingEnabled()
      • setNullHandlingEnabled

        public void setNullHandlingEnabled​(boolean nullHandlingEnabled)
      • isContinueOnError

        public boolean isContinueOnError()
      • setContinueOnError

        public void setContinueOnError​(boolean continueOnError)
      • isRowTimeValueCheck

        public boolean isRowTimeValueCheck()
      • setRowTimeValueCheck

        public void setRowTimeValueCheck​(boolean rowTimeValueCheck)
      • isSegmentTimeValueCheck

        public boolean isSegmentTimeValueCheck()
      • setSegmentTimeValueCheck

        public void setSegmentTimeValueCheck​(boolean segmentTimeValueCheck)
      • isOptimizeDictionary

        public boolean isOptimizeDictionary()
      • setOptimizeDictionary

        public void setOptimizeDictionary​(boolean optimizeDictionary)
      • isOptimizeDictionaryForMetrics

        public boolean isOptimizeDictionaryForMetrics()
      • setOptimizeDictionaryForMetrics

        public void setOptimizeDictionaryForMetrics​(boolean optimizeDictionaryForMetrics)
      • getNoDictionarySizeRatioThreshold

        public double getNoDictionarySizeRatioThreshold()
      • setNoDictionarySizeRatioThreshold

        public void setNoDictionarySizeRatioThreshold​(double noDictionarySizeRatioThreshold)
      • isFailOnEmptySegment

        public boolean isFailOnEmptySegment()
      • setFailOnEmptySegment

        public void setFailOnEmptySegment​(boolean failOnEmptySegment)
      • setSegmentZKPropsConfig

        public void setSegmentZKPropsConfig​(SegmentZKPropsConfig segmentZKPropsConfig)