-
Notifications
You must be signed in to change notification settings - Fork 14.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Query Time Lookups for Dimensions in Druid #211
Comments
Will this feature be implemented anytime soon? |
+1, Looking forward to this too. |
+1 |
@sid88in can you share your work in progress code ? |
@kkalyan I moved from Yahoo to Glassdoor while working on Caravel :) Was able to hack the code to implement query time lookups in Caravel. Basically you will need to modify the query function (where the actually query gets formulated). I modified it to use map function and it worked. I'll talk to Maxime to see what is his thought on this and we may want to engineer it properly to be used by everyone. |
I just added support for To use it, you have to create a new calculated column on the datasource and paste your valid You can define your mapping as a hard coded JSON object in our dimensionSpec, and it also looks like you can define "namespace" mappings that are stored on all the nodes on the Druid cluster and you can reference them in Maybe a complementary feature on the Caravel would be for a way to manage your Druid Lookups in Caravel and have Caravel sync them with the Druid cluster. This is not on our current roadmap but we get to it at some point. |
Update - 2017-26-01Tested it again today after adding various mappings and it works fine both for jdbc and static mapping. I think this issue should be closed. Original@mistercrunch I used the feature today, and it seems the columns is ignored when building the result data from the Druid query (I can see the lookup dimension working if I do the query by myself to the Druid API). For instance :
Druid will return n of :
But the 'product_name_lookup' column will not appear on reports in superset. |
I am happily using superset - and I have a calculated column on the datasource with a dimensionSpec expression that describes a query time lookup. Grouping works well but filtering does not on this calculated column... Anyone succeeded in doing this? Maybe I need to update the query generator? |
This should be fixed via #4740 |
Updates the requirements on [terser-webpack-plugin](https://github.com/webpack-contrib/terser-webpack-plugin) to permit the latest version. - [Release notes](https://github.com/webpack-contrib/terser-webpack-plugin/releases) - [Changelog](https://github.com/webpack-contrib/terser-webpack-plugin/blob/master/CHANGELOG.md) - [Commits](webpack-contrib/terser-webpack-plugin@v1.4.1...v2.1.0) Signed-off-by: dependabot-preview[bot] <[email protected]>
Updates the requirements on [terser-webpack-plugin](https://github.com/webpack-contrib/terser-webpack-plugin) to permit the latest version. - [Release notes](https://github.com/webpack-contrib/terser-webpack-plugin/releases) - [Changelog](https://github.com/webpack-contrib/terser-webpack-plugin/blob/master/CHANGELOG.md) - [Commits](webpack-contrib/terser-webpack-plugin@v1.4.1...v2.1.0) Signed-off-by: dependabot-preview[bot] <[email protected]>
Updates the requirements on [terser-webpack-plugin](https://github.com/webpack-contrib/terser-webpack-plugin) to permit the latest version. - [Release notes](https://github.com/webpack-contrib/terser-webpack-plugin/releases) - [Changelog](https://github.com/webpack-contrib/terser-webpack-plugin/blob/master/CHANGELOG.md) - [Commits](webpack-contrib/terser-webpack-plugin@v1.4.1...v2.1.0) Signed-off-by: dependabot-preview[bot] <[email protected]>
Updates the requirements on [terser-webpack-plugin](https://github.com/webpack-contrib/terser-webpack-plugin) to permit the latest version. - [Release notes](https://github.com/webpack-contrib/terser-webpack-plugin/releases) - [Changelog](https://github.com/webpack-contrib/terser-webpack-plugin/blob/master/CHANGELOG.md) - [Commits](webpack-contrib/terser-webpack-plugin@v1.4.1...v2.1.0) Signed-off-by: dependabot-preview[bot] <[email protected]>
This feature comes from http://druid.io/docs/latest/querying/lookups.html
Use Case:
Have dimension -> values mapping at query time. In real world we can have small set of mappings approx 10 - 20 or large mappings > 1000. When we visualize the data in Caravel, then the current version just shows the dimension values as integers if the data in druid is coming from fact table (metrics and dimensions). As we don't have joins in druid, we want query time lookups to get actual value of the dimension in charts and graphs. I have been able to hack the code and test this feature with map lookup feature. The query generator creates query in this form:
I want to discuss the design of this feature before coding it out and making it available for PR.
I am currently thinking of having 2 types of lookups: static lookup (small key value pairs) and dynamic lookups (jdbc lookups). For static lookup we can either have a function to preload the data from json mapping in the code or let users input key value mappings from the UI http://hostname:port/druiddatasourcemodelview/edit/2
Any thoughts? I still have to make jdbc lookups to work
The text was updated successfully, but these errors were encountered: