加入收藏 | 设为首页 | 会员中心 | 我要投稿 淮安站长网 (https://www.0517zz.com.cn/)- 数据开发、人脸识别、智能机器人、图像处理、语音技术!
当前位置: 首页 > 站长资讯 > 外闻 > 正文

带你了解大数据计算原理

发布时间:2021-03-04 17:09:05 所属栏目:外闻 来源:互联网
导读:要计算的是在同一个类别下物品之间两两的相似度。 2.4 相关信息 1.item表总共300万条记录,parquet格式来存储,总大小36G2.总共有1.5万个item_group,最大的一个item_group有8000多个item3.feature是个json字符串,每个大概有8万Byte,约80K4.函数F平均一分

要计算的是在同一个类别下物品之间两两的相似度。

2.4 相关信息

1.item表总共300万条记录,parquet格式来存储,总大小36G2.总共有1.5万个item_group,最大的一个item_group有8000多个item3.feature是个json字符串,每个大概有8万Byte,约80K4.函数F平均一分钟处理10000条数据

大家可以帮我想想,如果你来做这个任务要怎么进行计算呢。

二、我的尝试

2.1 方案1:item和item join

上来就啥都没想,item和item用item_group join一下就能得到同一个item_group下的两两组合(这里我们成为item_pair),就可以计算相似度了。so easy。



 

遇到这种状况加内存、加shuffle分区数(设置spark.sql.shuffle.partitions)这是常规操作

然鹅几个小时之后又挂了,还是一样的问题。难道是feature太大了?后来我把feature进行了压缩,从80k一下子压缩到了8K,结果又双叒挂了

方案1彻底卒。

2.2 方案2 先生成pair

冷静!我要冷静下来分析。既然是feature占了主要的内存,那我前期可以先不带上feature,先计算出需要计算的item_pair,第二步在计算的时候join上feature就可以了呀,我真是太聪明了。方案2:

(编辑:淮安站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读