SparkR终极解决方案
来源:互联网 发布:sql server 字段赋值 编辑:程序博客网 时间:2024/05/16 10:26
原文地址:http://blog.csdn.net/wangjunji34478/article/details/70906537
问题:
Spark支持sparkR需要安装R
如果R需要支持强大的内库,就需要安装第三方内库(需要连网)。
解决步骤:
第一:安装开发工具集
R对操作系统有一定的要求,所以先安装开发工具集,因为里面有c++的编译
配置操作系统yum源(如果不会请百度)
安装开发工具集
yumgroupinstall –y "Development and Creative Workstation"
第二:下载并创建epel yum源
1. 找一台可以上网的机器,操作系统需要跟生产环境一样
yum install epel-*
2. 下载yum 源
reposync -n -r epel -l --download-metadata --downloadcomps
在环境下面就会生产相应的epel目录
3. 创建yum 的yum的包
createrepo epel
在上面的生成的epel 目录之前 ,来创建
4: 创建生产yum源 (注意关闭生产防火墙,关闭selliunx )
yum install httpd
systemctl start httpd
5:将epel目录拷到 /var/www/html
chmod 777 –R /var/www/html/epel
6: 创建系统yum源
[epel]
name=Extra Packages for Enterprise Linux 7
baseurl=http://10.1.245.14/epel/7/x86_64
enabled=1
path=/
gpgcheck=0
第三:安装R
yum install R-\*
第四:测试sparkR可以使用
1:keyberos认证
kinit -k -t /etc/security/keytabs/spark.headless.keytab spark-mysqlcluster@DCP.COM
klist #验证
2:准备测试数据
cd /usr/hdp/current/spark-client
su spark
hdfs dfs -copyFromLocal examples/src/main/resources/people.txt people.txt
hdfs dfs -copyFromLocal examples/src/main/resources/people.json people.json
3:启动sparkR
cd /usr/hdp/2.3.4.7-4/spark/bin/
./sparkR
看到下图
____ __
/ __/__ ___ _____/ /__
_\ \/ _ \/ _ `/ __/ '_/
/___/ .__/\_,_/_/ /_/\_\ version 1.5.2
/_/
成功
4:测试:在>下面一行一行的输入
sqlContext <- sparkRSQL.init(sc)
df <- createDataFrame(sqlContext, faithful)
head(df)
出现如下:
17/04/19 18:11:18 INFO DAGScheduler: Job 1 finished: dfToCols at NativeMethodAccessorImpl.Java:-2, took 0.738906 s
eruptions waiting
1 3.600 79
2 1.800 54
3 3.333 74
4 2.283 62
5 4.533 85
6 2.883 55
成功
查看已安装的包:
>.packages(all.available=T)
[1] "SparkR" 看到这个,可以知道已经支持sparkR
扩展第三方包
1:将第三方的包全部抓下来:
wget -m -e robots=off -U "Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6" https://cran.rstudio.com/
2:安装httpd
yum install httpd –y
3:启动apache
systemctl start httpd
4:将cran.rstudio.com 目录里面的内容移动 /var/www/html
5: 使用浏览器检查一下
6:使用R在线的方式进行安装
R -e "install.packages('shiny', repos='http://ip/')" #说明 第一个红色是包名,第二个红色是url
7:安装完成
检查
R -e ’library("ABC")‘
Error in library("ABC") #报错
好了。
附录
1、查看已加载的包
>(.packages())
2、卸除已加载的包
如卸除RMySQL包
>detach("package:RMySQL")
3、安装包
>install.packages("rjson")
4、彻底删除已安装的包:
remove.packages(c("pkg1","pkg2") , lib = file.path("path", "to", "library"))
5、查看已安装的包
>installed.packages()[,c('Package','Version','LibPath')]
6、查看某个包提供的函数
> help(package='TSA')
7、已安装的所有的包
.packages(all.available=T)
R包安在哪里,可以安装哪些R包
首先在R里面输入.libPaths()即可查看当前的R把包安装到了机器的哪个地方,这样可以直接进入目录去查看有哪些包,每个包都会有一个文件夹。
其次你可以用installed.packages()查看你已经安装了哪些包。
最后你可以用available.packages()可以查看自己的机器可以安装哪些包!
4种常见的R包安装方式
R自带函数直接安装
这个是最简单的,而且不需要考虑各种包之间的依赖关系。
对普通的R包,直接install.packages()即可,一般下载不了都是包的名字打错了,或者是R的版本不够。如果下载了安装不了,一般是依赖包没弄好,或者你的电脑缺少一些库文件,如果实在是找不到或者下载慢,一般就用repos=来切换一些镜像。
> install.packages("ape") ## 直接输入包名字即可
Installing package into ‘C:/Users/jmzeng/Documents/R/win-library/3.1’
(as ‘lib’ is unspecified) ##一般不指定lib,除非你明确知道你的lib是在哪里
trying URL 'http://mirror.bjtu.edu.cn/cran/bin/windows/contrib/3.1/ape_3.4.zip'
Content type 'application/zip' length 1418322 bytes (1.4 Mb)
opened URL ##根据你选择的镜像,程序会自动拼接好下载链接url
downloaded 1.4 Mb
package ‘ape’ successfully unpacked and MD5 sums checked
##表明你已经安装好包啦
The downloaded binary packages are in
##程序自动下载的原始文件一般放在临时目录,会自动删除
C:\Users\jmzeng\AppData\Local\Temp\Rtmpy0OivY\downloaded_packages
对于bioconductor的包,我们一般是
source("http://bioconductor.org/biocLite.R") ##安装BiocInstaller
#options(BioC_mirror=”http://mirrors.ustc.edu.cn/bioc/“) 如果需要切换镜像
biocLite("ggbio")
#或者直接
BiocInstaller::biocLite('ggbio')
## 前提是你已经安装好了BiocInstaller
#某些时候你还需要卸载
remove.packages("BiocInstaller")
#然后安装新的
进入主页找到包下载地址
可以选择用R自带的下载器来下载,也可以把下面的url拷贝到浏览器用浏览器来下载
packageurl <- "http://cran.r-project.org/src/contrib/Archive/ggplot2/ggplot2_0.9.1.tar.gz"
packageurl <- "http://cran.r-project.org/src/contrib/Archive/gridExtra/gridExtra_0.9.1.tar.gz"
install.packages(packageurl, repos=NULL, type="source")
#packageurl <- "http://www.bioconductor.org/packages/2.11/bioc/src/contrib/ggbio_1.6.6.tar.gz"
#packageurl <- "http://cran.r-project.org/src/contrib/Archive/ggplot2/ggplot2_1.0.1.tar.gz"
install.packages(packageurl, repos=NULL, type="source")
这样安装的就不需要选择镜像了,也跨越了安装器的版本!
下载到本地后再安装
download.file("http://bioconductor.org/packages/release/bioc/src/contrib/BiocInstaller_1.20.1.tar.gz","BiocInstaller_1.20.1.tar.gz")
##也可以选择用浏览器下载这个包
install.packages("BiocInstaller_1.20.1.tar.gz", repos = NULL)
如果你用的RStudio这样的IDE,那么直接用鼠标就可以操作了。或者用choose.files()来手动选择把下载的源码BiocInstaller_1.20.1.tar.gz放到哪里。但这种形式大部分安装都无法成功,因为R包之间的依赖性很强!
命令行版本安装
如果是linux版本,命令行从网上自动下载包如下:
sudo su - -c \
"R -e \"install.packages('shiny', repos='https://cran.rstudio.com/')\""
如果是linux,命令行安装本地包,在shell的终端
sudo R CMD INSTALL package.tar.gz
- SparkR终极解决方案
- SparkR终极解决方案
- SparkR
- SparkR
- SparkR
- SparkR
- Android图片压缩终极解决方案,是的,终极,终极,终极
- Android图片压缩终极解决方案,是的,终极,终极,终极
- Android图片压缩终极解决方案,是的,终极,终极,终极
- MySQL乱码终极解决方案
- MySQL乱码终极解决方案
- MySQL乱码终极解决方案
- ibatis 分页“终极”解决方案
- 数据库连接池终极解决方案!
- 编程终极解决方案
- Mysql乱码终极解决方案
- JSP 绝对路径 终极解决方案
- 品牌机GHOST终极解决方案
- Educational Codeforces Round 11 C. Hard Process(尺取 二分 区间天数最多
- 上方固定,下方滚动
- 从值栈获取List集合
- Java基础,创建线程的两种方法
- 数据库备份和恢复以及表数据的导入和导出
- SparkR终极解决方案
- 字符串转换成整数-微软面试题
- Django项目配置让其他用户电脑访问Project
- (4)linux进程通讯之共享内存
- 先序遍历
- 练习24
- 解决 This application requires Java Runtime Environment X
- CentOS6.5final下TFS的安装和使用
- Linux系统的下载和安装