カスケードが初めてで、並べ替え/順序に基づいて上位 N 個のタプルを取得する方法を見つけようとしています。たとえば、人々が使用している名前の上位 100 位を知りたいとします。
Teradata SQLで同様にできることは次のとおりです。
select top 100 first_name, num_records
from
(select first_name, count(1) as num_records
from table_1
group by first_name) a
order by num_records DESC
これはhadoop pigで似ています
a = load 'table_1' as (first_name:chararray, last_name:chararray);
b = foreach (group a by first_name) generate group as first_name, COUNT(a) as num_records;
c = order b by num_records DESC;
d = limit c 100;
SQL や Pig で実行するのは非常に簡単に思えますが、カスケードで実行する方法を見つけるのに苦労しています。お知らせ下さい!