map-string-string dimension column contrib extension#10628
map-string-string dimension column contrib extension#10628himanshug wants to merge 1 commit intoapache:masterfrom
Conversation
|
This pull request introduces 2 alerts when merging f306b31 into ae6c43d - view on LGTM.com new alerts:
|
|
This pull request has been marked as stale due to 60 days of inactivity. It will be closed in 4 weeks if no further activity occurs. If you think that's incorrect or this pull request should instead be reviewed, please simply write any comment. Even if closed, you can still revive the PR at any time or discuss it on the dev@druid.apache.org list. Thank you for your contributions. |
|
This pull request has been marked as stale due to 60 days of inactivity. |
|
This pull request/issue has been closed due to lack of activity. If you think that |
Description
Introduces a "mapStringString" complex type dimension column. All the code lives in an isolated contrib extension and implements relevant extensible Druid core interfaces e.g. ComplexColumn, ComplexMetricSerde, DimensionHandler, DimensionIndexer, DimensionMerger etc etc.
It allows ingestion of
Map<String,String>column in users input data as a singledimensioncolumn . At query time, user can access individual keys in the map as if they were simplestringdimension columns (seeMapStringStringKeyVirtualColumn.java) or column can be accessed as records ofMap<String,String>type but that does not have much use in Druid query layer for now aside fromselectquery.User would have to implement their own
InputRowParserto supplyMap<String,String>records for ingestion , we used one that was very specific to our needs.This extension also serves as an example of how users can create their own dimension columns for the specific needs and also [indirectly] tests the dimension extensibility support introduced in #10277
Future: Now that
VirtualColumninterface has been enhanced to support vectorization, maybe the virtual column implementation code in this extension could also be improved to support that for [potentially] better performance.This PR has: