一个因为windows系统缺失文件而导致的pyspark的BUG
背景: 在windows 系统中开发pyspark程序。
一个简单的WC程序:
from pyspark.sql import SparkSession
spark = SparkSession.builder.appName('SparkByEx').getOrCreate()
sc = spark.sparkContext
text_file = sc.textFile("nba.csv")
counts = text_file.flatMap(lambda line: line.split(" ")) \
.map(lambda word: (word, 1)) \
.reduceByKey(lambda a, b: a + b)
counts.saveAsTextFile("nba_wc.txt")
错误:
Py4JJavaError 051.saveAsTextFile
ExitCodeException exitCode=-1073741515:
at org.apache.hadoop.util.Shell.runCommand(Shell.java:582)
at org.apache.hadoop.util.Shell.run(Shell.java:479)
at org.apache.hadoop.util.Shell$ShellCommandExecutor.execute(Shell.java:773)
at org.apache.hadoop.util.Shell.execCommand(Shell.java:866)
at org.apache.hadoop.util.Shell.execCommand(Shell.java:849)
分析:
1,因为%Hadoop%/bin内的winutils.exe需要MSVCP100.dll 。
2,这个程序需要你的电脑内有MSVCP100.dll文件。 而该文件包含在Microsoft Visual C++ 2010 Service Pack 1 Redistributable Package 里面。
至于为什么会确实文件,可能是系统更新的原因。
下载安装地址:(64位系统)
https://www.microsoft.com/en-us/download/details.aspx?id=26999
亲自验证,成功;
一个因为windows系统缺失文件而导致的pyspark的BUG的更多相关文章
- 在windows系统的文件右键菜单中增加“命令提示符”
本实用小工具能够在windows系统的文件右键菜单中增加“命令提示符”,方便快速进入制定文件的命令提示窗口,避免逐层输入或复制文件夹路径,极其实用. 工具下载地址如下:360云盘(访问密码:5b71) ...
- [C#]Windows系统特殊文件夹路径获取
原文:[C#]Windows系统特殊文件夹路径获取 由于软件开发的需要,近期对Windows特殊文件夹(如桌面,我的文档等)路径的查找方法进行了研究,结果如下. 获取特殊文件夹的方法不止一种,下面列出 ...
- 关于Linux系统和Windows系统中文件夹的命名规范
Windows系统中. 1.在创建文件夹的时候不能以"."开头(但是文件以多个点开头并且还有其他合法字符的话就是合法的) 但是在windows系统中确实见过以一个点".& ...
- 使用VM Tools让VMware虚拟机里的ubuntu能够共享Windows系统的文件夹
我们经常有这样的使用场景,在宿主机Windows(Linux)操作系统上通过VMware软件安装了一个Linux(Windows)的虚拟机, 然后需要在两种操作系统中通过某种介质共享数据. 一种比较麻 ...
- WIndows系统BAT文件语法和技巧 原文的地址(http://www.jb51.net/article/5828.htm)
批处理文件是一个文本文件,这个文件的每一行都是一条DOS命令(大部分时候就好象我们在DOS提示符下执行的命令行一样),你可以使用DOS下的Edit或者Windows的记事本(notepad)等任何文本 ...
- C# - 获取windows系统特殊文件夹路径
一.路径分类 1.绝对路径 完整路径,从磁盘符号开始,如:C:\Windows 2.相对路径 以当前路径为起点,不包含磁盘符号,通常使用“..\”符号来访问上级目录中的文件或文件夹. ../Windo ...
- Windows系统,文件和文件夹命名规则:
不能包含:< > / \ | : * ? windows中,文件名(包括扩展名)可高达 个字符.文件名可以包含除 ? “ ”/ \ < > * | : 之外的大多数字符:保留文 ...
- 【.Net】C#获取Windows系统特殊文件夹的路径
系统特殊文件夹是包含公共信息的文件夹,如“Program Files”.“Programs”.“System”或“Startup”.特殊文件夹在默认情况下由系统设置,或者由用户在安装 Windows ...
- 清除windows系统垃圾文件简易脚本(bat)
@echo off echo 正在清除系统垃圾文件,请稍等...... del /f /s /q %systemdrive%\*.tmp del /f /s /q %sy ...
- 使用C#+PowerShell进行Windows系统间文件传输
新的winserver2016支持了一种nano模式,像以前的core模式,只能远程管理,只支持x64,只有610M,不让CentOS mini版独美. 这个nano版,默认只开启WinRM,所以只能 ...
随机推荐
- @EnableDiscoveryClient和@EnableEurekaClient springboot3.x
@EnableDiscoveryClient和@EnableEurekaClient 将一个微服务注册到Eureka Server(或其他服务发现组件,例如Zookeeper.Consul等)的步骤 ...
- Nginx 安装perl
1 安装包下载 https://www.cpan.org/src获取最新偶数版本下载链接并替换(偶数版本为稳定版) 2 上传到服务器解压 tar -zxvf perl-5.36.0.tar.gz 3 ...
- JAVA虚拟机23---JAVA与线程
1 线程简介 线程是比进程更轻量级的调度执行单位,线程的引入,可以把一个进程的资源分配和执行调度分开,各个线程既可以共享进程资源(内存地址.文件I/O等),又可以独立调度 目前线程是Java里面进行处 ...
- 五:spring boot
五.spring boot 通过springboot可以快速的搭建一个基于ssm框架的Java application,简单配置,自动装配. JavaConfiguration用java类来替代xml ...
- 关于联想对Jim博士的质疑
对Jim博士质疑的质疑 因为关注司马南,从他的空间里看到Jim博士和其龃龉,大致看了Jim博士头条里的文章,因为看到自己常用的EPICS,上午匆忙就写了上面的文. Jim博士是去年在头条上看到的,因为 ...
- 利用canvas+js完成滑块验证码中canvas部分思路
1. 最终效果 2.滑块验证码思路 大概思路:设置两个画布,一个为显示图像的canvas画布,一个为拼图的block画布,block画布拼图内容从图像画布中的一部分裁剪得到(使用clip()),通过绑 ...
- sqllabs:less18-22
在利用抓包工具进行抓包的时候,我们能看到很多的项,下面详细讲解每一项. HTTP 头部详解 1. Accept:告诉 WEB 服务器自己接受什么介质类型,/ 表示任何类型,type/* 表示该类型下的 ...
- Vulhub 漏洞学习之:ActiveMQ
Vulhub 漏洞学习之:ActiveMQ 目录 Vulhub 漏洞学习之:ActiveMQ 1 ActiveMQ反序列化漏洞(CVE-2015-5254): 1.1 漏洞利用过程 2 ActiveM ...
- unity 音频曲线
jp--------------- https://techblog.kayac.com/dynamic-waveform-generation-without-audio-clip https:// ...
- navicat无法识别登录秘钥
前因 公司数据库未开放外网访问端口,只允许内网登录,这对开发人员查看数据很不友好,所以一般情况下都会让开发人员通过navicat的ssh隧道功能来查看数据. 但在测试ssh隧道过程中,私钥1验证通过, ...