Skip to content

Web console: improve make type preservation in ingestion configs in the data loader#10533

Merged
clintropolis merged 27 commits intoapache:masterfrom
implydata:verification
Oct 31, 2020
Merged

Web console: improve make type preservation in ingestion configs in the data loader#10533
clintropolis merged 27 commits intoapache:masterfrom
implydata:verification

Conversation

@vogievetsky
Copy link
Copy Markdown
Contributor

This PR fixes an issue that in the data loader if you toggle the rollup it loses any previously entered type information because it will simply rescan the sample. It makes a couple of other fixes also.
This work was done as a result of 2 user studies where people loaded data into Druid via the data loader and then user a couple of other parts of the console.

This PR also refactors all the druid concepts into the druid-modals directory and breaks them up a bit so they are not just huge files (bad code smell).

In addition to that this PR also:

  • Adds a Partitioning column (derived from shardSpec) to the segment view (see screenshot)
  • Adds a Segment granularity column to the datasource view (see screenshot)
  • Creates a framework where auto form fields could be used to verify the modal reducing redundancy
  • Adds an optional validator prop to the JsonInput to let it surface higher level errors
  • Allows for using a __time transform in the parse time step of the data loader
  • Fixes the issue the it was not possible to edit the tuningConfig.partitionsSpec.type from the Edit spec step of the data loader
  • Adds oneOf utility function to make AutoForm definitions more succinct
  • Fixes the height of the icons in the data loader splash screen so it does not bounce
  • Uses the improved escaping from druid-query-toolkit to make data view tables' filtering better
  • Fixes some typos

Partitioning column

image

Segment granularity column

image

Copy link
Copy Markdown
Member

@clintropolis clintropolis left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤘

Comment on lines +116 to +122
defined: (p: InputFormat) => oneOf(p.type, 'parquet', 'orc', 'avro_ocf'),
info: (
<>
Specifies if the bytes parquet column which is not logically marked as a string or enum type
should be treated as a UTF-8 encoded string.
</>
),
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

does this info text always display 'parquet' column even when shown for orc and avro_ocf?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yup, that should be fixed

@clintropolis clintropolis merged commit ee61a16 into apache:master Oct 31, 2020
@vogievetsky vogievetsky deleted the verification branch October 31, 2020 04:28
@jihoonson jihoonson added this to the 0.21.0 milestone Jan 4, 2021
JulianJaffePinterest pushed a commit to JulianJaffePinterest/druid that referenced this pull request Jan 22, 2021
…he data loader (apache#10533)

* improve validation

* move to druid modals

* adjust specs

* oneOf

* move transform

* segment grans

* tidy up webpack

* add Partitioning

* break out druid models

* tidy up

* rename to Expression

* move druid time

* cleanup

* update format

* better detail

* fix e2e test

* remove forceGuaranteedRollup from e2e tests

* clean up imports

* shardSpec -> shard_spec

* fix css

* adjust snapshot

* add granularity to segments view

* rename to Time span

* use OFFSET in segments view query

* update doc links

* simplify require

* more oneOf
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants