最近在搞spark机器学习项目时,碰到了一些小问题。两个数据集要联到一起。比如rdd1=("abc","cde","dfc"),rdd2=(1,2,3)要连接成

rdd3=(("abc",1),("cde",2),("dfc",3)),当然,小数据集的时候用zip就可以了。大数据集的时候就有问题了。每个partiton的数据条数不一致。报错。

尝试着用别的方法解决问题。把他们全部map成1->“abc"这种类型

如i=0;

rdd1.map(line=>

i=i+1;

(i.toString,line)

)

然后再把他们做连接。这下该好了吧。reduce一看,傻眼了。spark它是分布式的。每台机器一个1,机器一的i 从1-20000,机器2的i也是从1-20000.这样就用很多id重复了。

得再想个办法。

zip不是报错嘛,zippatition怎么样?

发现也不太好使。

最后,把rdd1.repartition(1),rdd2.repatition(1).rdd1.zip(rdd2).

问题解决。就是把两个rdd全部重新分区,分到一个区里。

不过这个还是数据集不是很大。如果很大的话,分不到一个区里。就会有问题了。

还是要多琢磨。

zip和zippartition总结的更多相关文章

  1. ZIP压缩算法详细分析及解压实例解释

    最近自己实现了一个ZIP压缩数据的解压程序,觉得有必要把ZIP压缩格式进行一下详细总结,数据压缩是一门通信原理和计算机科学都会涉及到的学科,在通信原理中,一般称为信源编码,在计算机科学里,一般称为数据 ...

  2. 记一个mvn奇怪错误: Archive for required library: 'D:/mvn/repos/junit/junit/3.8.1/junit-3.8.1.jar' in project 'xxx' cannot be read or is not a valid ZIP file

    我的maven 项目有一个红色感叹号, 而且Problems 存在 errors : Description Resource Path Location Type Archive for requi ...

  3. 最好的.NET开源免费ZIP库DotNetZip(.NET组件介绍之三)

    在项目开发中,除了对数据的展示更多的就是对文件的相关操作,例如文件的创建和删除,以及文件的压缩和解压.文件压缩的好处有很多,主要就是在文件传输的方面,文件压缩的好处就不需要赘述,因为无论是开发者,还是 ...

  4. android_m2repository_rxx.zip下载地址以及MD5

    地址 MD5 https://dl-ssl.google.com/android/repository/android_m2repository_r08.zip 8C8EC4C731B7F55E646 ...

  5. Winserver2012下mysql 5.7解压版(zip)配置安装

    一.安装 下载mysqlzip版本mysql不需要运行可执行文件,解压即可,下载zip版本mysqlmsi版本mysql双击文件即可安装,相对简单,本文不介绍此版本安装 配置环境变量打开环境变量配置页 ...

  6. salesforce 零基础学习(五十三)多个文件生成一个zip文件(使用git上封装的代码)

    此篇参考git代码:https://github.com/pdalcol/Zippex 学习salesforce可以访问一个朋友的网站:https://www.xgeek.net 首先感谢git上提供 ...

  7. 【.NET深呼吸】Zip文件操作(2):动态生成Zip文档

    通过前面一篇烂文的介绍,大伙儿知道,ZipArchive类表示一个zip文档实例,除了用上一篇文章中所列的方法来读写zip文件外,还可以直接通过ZipArchive类,动态生成zip文件. 文件流操作 ...

  8. 【.NET深呼吸】Zip文件操作(1):创建和读取zip文档

    .net的IO操作支持对zip文件的创建.读写和更新.使用起来也比较简单,.net的一向作风,东西都准备好了,至于如何使用,请看着办. 要对zip文件进行操作,主要用到以下三个类: 1.ZipFile ...

  9. Android总结之Gzip/Zip压缩

    前言: 做过Android网络开发的都知道,在网络传输中我们一般都会开启GZIP压缩,但是出于刨根问底的天性仅仅知道如何开启就不能满足俺的好奇心的,所以想着写个demo测试一下比较常用的两个数据压缩方 ...

随机推荐

  1. 从零开始学习Node.js例子零 永远的Hello World

    index.js var http = require("http"); http.createServer(function(request, response) { respo ...

  2. 处理oracle的死锁

    Oracle数据库操作中,我们有时会用到锁表查询以及解锁和kill进程等操作,那么这些操作是怎么实现的呢?本文我们主要就介绍一下这部分内容.(1)锁表查询的代码有以下的形式:select count( ...

  3. overflow 清除浮动

    对overflow的理解还停留在“规定当内容溢出元素框时发生的事情”,这种简单的认识上,今天发现overflow还可以清除浮动. <style> .outside{ height:auto ...

  4. [翻译]利用REDIS来搭建可靠分布式锁的提议

    本系列都是翻译REDIS作者的博文  另外加上我自己的一点点理解  希望有问题大家一起讨论 http://antirez.com/news/77 原文地址 在利用REDIS做分布式锁时基本持有2种观点 ...

  5. colormap

    http://cn.mathworks.com/help/matlab/ref/colormap.html

  6. xml 解析的四种方式

    =========================================xml文件<?xml version="1.0" encoding="GB2312 ...

  7. ListView去除顶部和底部边缘阴影(亲测4.4及以前的版本都适用)

    ListView滑动到顶部和底部时出现的阴影消除方法:android2.3以前用android:fadingEdge="none"android2.3以后用android:over ...

  8. 修改xubuntu14.04(同适用ubuntu)下Eclipse默认的黑色注释

    终端输入:sudo gedit /usr/share/themes/Ambiance/gtk-2.0/gtkrc 第一行将看到如下内容: gtk-color-scheme = "base_c ...

  9. 8UFTP

    FTP  文件上传下载工具    FTP(File Transfer Protocol)是Internet上用来传送文件的协议(文件传输协议). 官网:http://ftp.8u.cn 网盘下载(版本 ...

  10. 1-Recyclerview使用系列之Recyclerview的列表数据显示

    使用步骤已经写到我的公众号,二维码在下面,欢迎关注,谢谢. 本人联系方式: 更多精彩分享,可关注我的微信公众号: 若想给予我分享更多知识的动力,请扫描下面的微信打赏二维码,谢谢!: 微信号:Weixi ...