一个因为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,所以只能 ...
 
随机推荐
- boot-repair
			
sudo add-apt-repository ppa:yannubuntu/boot-repair && sudo apt-get update sudo apt-get insta ...
 - quasar打包时:Module not found: Can't resolve imported dependency "dayjs/plugin/customParseFormat"
			
运行quasar build -m electron 后,报错如下: 看了这篇webpack 编译 element-plus 报错后,找到了报错的根源所在 于是,在quasar官方文档找到了针对web ...
 - 0x05_My-OS显示字符串和任意参数
			
先看看效果: 要解决两个问题,第一个如何显示字符串,printf?我之前已经说了所有的头文件都要自己写,printf是stdio里的可是我们没有stdio 我们要通过画像素点的方式显示字符串,有点像我 ...
 - Zabbix监控阿里云SLB操作指引
			
1. SLB介绍 阿里云负载均衡(Server Load Balancer,简称SLB)是云原生时代应用高可用的基本要素.通过将流量分发到不同的后端服务来扩展应用系统的服务吞吐能力,消除单点故障并提升 ...
 - mysql怎么设计库、设计表
			
一. 设计表/库 设计思想就是要分析表每个字段的具体参数,包括但不限于以下几点: 约束? NOT NULL, PRIMARY KEY, UNIQUE KEY, DEFAULT, FOREIGN KEY ...
 - 自己从零写操作系统GrapeOS系列教程——4.GrapeOS开发环境介绍
			
1. 开发环境简介 为了减少开发过程中不必要的麻烦,希望大家的开发环境尽量与我的保持一致. 我的开发环境如下: Windows10电脑一台 Visual Studio Code(最好是最新版) Vir ...
 - PostgreSQL 绑定变量浅析
			
今天我们要探讨的是 custom执行计划和通用执行计划.这一技术在 Oracle中被称为绑定变量窥视.但 Postgresql中并没有这样的定义,更严格地说,Postgresql叫做custom执行计 ...
 - input标签file文件上传图片本地预览(转载)
			
<input type="file" name="img-up" id="img-up" value="" /&g ...
 - linux 内存泄漏检测原理及实现
			
通过检测内存块是否被引用,而判断内存是否泄漏 参考链接:https://mp.weixin.qq.com/s/_WTpg2rnqIJDRKo-UcfeFA
 - Java面向对象之创建对象内存分析
			
创建对象内存分析 代码 内存分析 属性 属性:字段Field 成员变量 默认初始化: 1.数字: 0 0.0 2.char: u0000 3.boolean:false 4.引用数据类型:null 5 ...