simulate NTILE(n) , rank() functionality in pig
-----------------------------------------------

                 Key: PIG-821
                 URL: https://issues.apache.org/jira/browse/PIG-821
             Project: Pig
          Issue Type: New Feature
          Components: impl
    Affects Versions: 0.2.0
         Environment: mithril gold -gateway 4000
            Reporter: Rekha
             Fix For: 0.2.0


Hi,

I came across a job which has some processing which I cant seem to get easily 
over-the-counter from pig.
These are NTILE() /rank() operations available in oracle.

While I am trying to write a UDF, that is not working out too well for me yet.. 
:(

I have a ntile(n) over (partititon by x, y, z order by a desc, b desc) 
operation to be done in pig scripts.
Is there a default function in pig scripting which can do this?

For example, lets consider a simple example at 
http://download.oracle.com/docs/cd/B14117_01/server.101/b10759/functions091.htm
So here, how would we ideally substitute NTILE() with? any pig counterpart 
function/udf?

SELECT last_name, salary, NTILE(4) OVER (ORDER BY salary DESC) 
   AS quartile FROM employees
   WHERE department_id = 100;
 
LAST_NAME                     SALARY   QUARTILE
------------------------- ---------- ----------
Greenberg                      12000          1
Faviet                          9000          1
Chen                            8200          2
Urman                           7800          2
Sciarra                         7700          3
Popp                            6900          4
 
In real case, i have ntile over multiple columns, so ideal way to find 
histograms/boundary/spitting out the bucket number is needed.

Similarly a pig function is required for rank() over(partition by a,b,c order 
by d desc) as e

Please let me know soon.

Thanks & Regards,
/Rekha


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to