Git Product home page Git Product logo

Comments (9)

eirsep avatar eirsep commented on May 5, 2024

Will this feature be implemented anytime soon?

from superset.

zhaown avatar zhaown commented on May 5, 2024

+1, Looking forward to this too.

from superset.

rohitkochar avatar rohitkochar commented on May 5, 2024

+1
We also need this feature

from superset.

kkalyan avatar kkalyan commented on May 5, 2024

@sid88in can you share your work in progress code ?

from superset.

sid88in avatar sid88in commented on May 5, 2024

@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.

from superset.

mistercrunch avatar mistercrunch commented on May 5, 2024

I just added support for dimensionsSpec here #1545 which exposes ways to do specify mapping on a per-column basis:
http://druid.io/docs/latest/querying/dimensionspecs.html

To use it, you have to create a new calculated column on the datasource and paste your valid dimensionSpec expression in the text box.

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 dimensionSpec.
http://druid.io/docs/latest/querying/lookups.html

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.

from superset.

Igosuki avatar Igosuki commented on May 5, 2024

Update - 2017-26-01

Tested 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 :
I have users buying products, my metric is an aggregate of product price, or just the global count. Naturally I try to lookup a table of the following :

{
    "dimensions": [
        "user_id",
        {
            "replaceMissingValueWith": "N/A",
            "name": "product_name",
            "dimension": "product_id",
            "type": "lookup",
            "injective": false,
            "outputName": "product_name_lookup"
        }
    ],
    "aggregations": [
        {
            "type": "count",
            "name": "count"
        }
    ],
    "intervals": "2017-01-12T20:43:43+00:00/2017-01-19T20:43:43+00:00",
    "limitSpec": {
        "limit": 5000,
        "type": "default",
        "columns": [
            {
                "direction": "descending",
                "dimension": "count"
            }
        ]
    },
    "granularity": "all",
    "postAggregations": [],
    "queryType": "groupBy",
    "dataSource": "user-purchases"
}

Druid will return n of :

{
    "version": "v1",
    "timestamp": "2017-01-12T20:43:43.000Z",
    "event": {
      "count": 20,
      "user_id": "10",
      "product_name_lookup": "A Nice Vase"
    }
  },

But the 'product_name_lookup' column will not appear on reports in superset.

from superset.

KostasChr avatar KostasChr commented on May 5, 2024

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?

from superset.

ghulands avatar ghulands commented on May 5, 2024

This should be fixed via #4740

from superset.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.