我对如何优化我的Hive代码有疑问。 我有一张巨大的桌子,如下所示:
Customer_id Product_id Date Value
1 1 02/28 100.0
1 2 02/02 120.0
1 3 02/10 144.0
2 2 02/15 120.0
2 3 02/28 144.0
... ... ... ...
我想创建一个复杂的网络,在这里我可以通过购买者链接产品。该图不必定向,我必须计算它们之间的链接数。 最后,我需要这个:
Product_x Product_y amount
1 2 1
1 3 1
2 3 2
有人可以帮我吗? 我需要一种优化的方式来做到这一点。表本身的联接不是解决方案。我真的需要在此= /
上的最佳方法CREATE TABLE X AS
SELECT
a.product_id as product_x,
b.product_id as product_y,
count(*) as amout
FROM table as a
JOIN table as b
ON a.customer_id = b.customer_id
WHERE a.product_id < b.product_id
GROUP BY product_x, product_y;