java吧 关注:1,238,777贴子:12,709,802
  • 6回复贴,共1

有大佬在学hive或者spark这方面的东西吗?求教。学习中

只看楼主收藏回复

有大佬在学hive或者spark这方面的东西吗?求教。学习中遇到的问题,左边为会员号,右边是会员对应购买的商品编号,我已经按照日期分区存储在hive中,下一步想求出一段时间内哪两件商品的关联度最高,也就是想把右边那个array数组里面的商品编号一一组合成一个键值对并记为一,然后按照分区统计出每天,继而统计出一段时间内哪两件商品的关联度最高,大佬们给个思路,应该怎么搞,用什么办法或者用什么算子来解决


IP属地:山东来自iPhone客户端1楼2019-12-15 21:33回复
    我自己顶一顶


    IP属地:山东来自iPhone客户端2楼2019-12-15 21:35
    回复
      吧里只讨论就业,不讨论技术,


      来自Android客户端3楼2019-12-15 23:26
      回复
        因为被各种机构占领了,没人讨论和分享技术了


        IP属地:广西4楼2019-12-15 23:36
        收起回复
          hive的话要炸裂开再按用户id自连接,中间要!=本身,再去重,再groupby求count
          最简单的应该是你写个udtf,输入个数组,做个遍历输出成1:2这种,然后按这个字段group求count
          spark应该也差不多吧,你最后结果和用户无关,就直接把商品id拿出来,做个遍历再打散,做成(1:2,1)这样的元组,再按key求和就行了,用map flatmap reducebykey,好久没写这些了,我思路就是这样


          IP属地:北京5楼2019-12-20 14:16
          收起回复