add supported indexSpec options (#13388)

This commit is contained in:
Vadim Ogievetsky 2022-11-19 00:00:32 -08:00 committed by GitHub
parent c628947c31
commit 08fa0383b9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 60 additions and 2 deletions

View File

@ -52,6 +52,7 @@ export interface Field<M> {
suggestions?: Functor<M, Suggestion[]>;
placeholder?: Functor<M, string>;
min?: number;
max?: number;
zeroMeansUndefined?: boolean;
height?: string;
disabled?: Functor<M, boolean>;
@ -249,6 +250,7 @@ export class AutoForm<T extends Record<string, any>> extends React.PureComponent
if (onFinalize) onFinalize();
}}
min={field.min || 0}
max={field.max}
fill
large={large}
disabled={AutoForm.evaluateFunctor(field.disabled, model, false)}

View File

@ -1867,6 +1867,7 @@ const TUNING_FORM_FIELDS: Field<IngestionSpec>[] = [
hideInMore: true,
info: <>Milliseconds to wait for segment handoff. 0 means to wait forever.</>,
},
{
name: 'spec.tuningConfig.indexSpec.bitmap.type',
label: 'Index bitmap type',
@ -1876,21 +1877,67 @@ const TUNING_FORM_FIELDS: Field<IngestionSpec>[] = [
hideInMore: true,
info: <>Compression format for bitmap indexes.</>,
},
{
name: 'spec.tuningConfig.indexSpec.bitmap.compressRunOnSerialization',
type: 'boolean',
defaultValue: true,
defined: spec => deepGet(spec, 'spec.tuningConfig.indexSpec.bitmap.type') === 'roaring',
info: (
<>
Controls whether or not run-length encoding will be used when it is determined to be more
space-efficient.
</>
),
},
{
name: 'spec.tuningConfig.indexSpec.dimensionCompression',
label: 'Index dimension compression',
type: 'string',
defaultValue: 'lz4',
suggestions: ['lz4', 'lzf', 'uncompressed'],
suggestions: ['lz4', 'lzf', 'zstd', 'uncompressed'],
hideInMore: true,
info: <>Compression format for dimension columns.</>,
},
{
name: 'spec.tuningConfig.indexSpec.stringDictionaryEncoding.type',
label: 'Index string dictionary encoding',
type: 'string',
defaultValue: 'utf8',
suggestions: ['utf8', 'frontCoded'],
hideInMore: true,
info: (
<>
Encoding format for STRING value dictionaries used by STRING and COMPLEX&lt;json&gt;
columns.
</>
),
},
{
name: 'spec.tuningConfig.indexSpec.stringDictionaryEncoding.bucketSize',
label: 'Index string dictionary encoding bucket size',
type: 'number',
defaultValue: 4,
min: 1,
max: 128,
defined: spec =>
deepGet(spec, 'spec.tuningConfig.indexSpec.stringDictionaryEncoding.type') === 'frontCoded',
hideInMore: true,
info: (
<>
The number of values to place in a bucket to perform delta encoding. Must be a power of 2,
maximum is 128.
</>
),
},
{
name: 'spec.tuningConfig.indexSpec.metricCompression',
label: 'Index metric compression',
type: 'string',
defaultValue: 'lz4',
suggestions: ['lz4', 'lzf', 'uncompressed'],
suggestions: ['lz4', 'lzf', 'zstd', 'uncompressed'],
hideInMore: true,
info: <>Compression format for primitive type metric columns.</>,
},
@ -1910,6 +1957,15 @@ const TUNING_FORM_FIELDS: Field<IngestionSpec>[] = [
</>
),
},
{
name: 'spec.tuningConfig.indexSpec.jsonCompression',
label: 'Index JSON compression',
type: 'string',
defaultValue: 'lz4',
suggestions: ['lz4', 'lzf', 'zstd', 'uncompressed'],
hideInMore: true,
info: <>Compression format to use for nested column raw data. </>,
},
{
name: 'spec.tuningConfig.splitHintSpec.maxSplitSize',
type: 'number',