自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 资源 (1)
  • 收藏
  • 关注

原创 Spark数据不平衡(数据倾斜)特定领域的两个解决方案。

背景  最近在做推荐系统,其中要对数据做召回,需要快速为每个待推荐的“用户”召回100个左右的“电影”。此时一个简单的想法就是计算每个“用户”和“电影”的“相关度”,取top100。假设“用户”和“电影”都有标签。例如“科幻”,“动作”。那么在计算top100,可以只计算同key的相关度。  实现的时候很简单,假设你把用户数据读取好了,电影数据也读取好了val user = sc.paral...

2019-05-17 17:49:58 2009

原创 scala实现根据函数名获取函数的方法

背景工作需要,需要编写一个配置文件来配置一些函数。这些函数会应用于特定数据只上。我们都很熟悉java怎么实现这个东西,可以用反射、或者写一堆if else判断。scala崇尚函数式编程,笔者不才。尝试用3种思路实现以供参考:object FunctionLoaderTest { //函数获取器,反射实现。 import reflect.runtime.universe._ im...

2019-05-16 16:33:47 1169 2

原创 Spark的对象不可序列化(object not serializable)的一个解决方案

       最近在公司开发了一个新项目。这个项目要求人工去编写配置文件,然后根据配置文件配置的函数去处理数据。学到的隐式转换终于排上用场了。假设这些函数就是对比两个Set内容,然后得到这俩Set的相关得分。如下,然后分别实现这些函数即可。object ScoreFunction{ implicit class FunctionGetterFaster(val functionConf:...

2019-01-14 16:08:25 9475 2

原创 spark读取保存gbk的hadoop文件

最近工作遇到一个小问题。隔壁部门非要输出gbk格式的hadoop file。虽然这个要求很奇怪,但是仔细搞了搞发现也没有那么容易。翻了翻书,对implicit这个关键字理解的更深入了一些。编写了这么一个小工具类,可以实现sc.gbkTextFile(path)来读取gbk文件。RDD[String].saveAsGBKTextFile(path)来写入gbk文件。import java.io...

2018-12-28 15:59:40 908 1

原创 Spark中ID发号器实现思路

欢迎转载,转载请注明出处:Spark作为一个分布式处理框架,处理数据非常快。可是我也不知道作者基于什么样的设计哲学,限制了用户对于一些数据的操作。例如你无法改变一个RDD的内容。无法一个split把数据集分割成两份。无法获得RDD的分区信息,无法再map的时候知道自己处于哪个分区。这对于ID分配来说实在是太难办了。甚至想要一个1对1的笛卡尔积都没有。(如果有的话,我们可以计算待分配id数据的个...

2018-04-27 15:43:55 448 1

原创 根据重复部分,合并关联的集合的两种算法(并查集,连通分量)

      欢迎转载,转载请注明出处:http://blog.csdn.net/aicodex/article/details/79218350      在公司实习的过程中,遇到了这样一个场景:      有一个列表,里面存了一些数据的集合,表示这个集合里面是同一种数据。而这些集合与集合之间,又有一些数据是重叠的。此时有重叠数据是可以合并成一个更大的集合的。      举个简单的例子...

2018-01-31 16:41:01 2520

docker shell java 工具类

docker客户端的cmd/shell封装,win下请配置好cmd,linux mac 请分别注释取消注释前边代码。代码是公开开源,使用请保留第一行注释。请尊重代码作者——本人。谢谢。

2016-11-12

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除