<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Scala on 说</title>
    <link>/tags/scala/</link>
    <description>Recent content in Scala on 说</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>cn</language>
    <copyright>Powered by [Hugo](//gohugo.io). Theme by [PPOffice](http://github.com/ppoffice).</copyright>
    <lastBuildDate>Sat, 11 May 2019 00:00:00 +0000</lastBuildDate>
    
	<atom:link href="/tags/scala/index.xml" rel="self" type="application/rss+xml" />
    
    
    <item>
      <title>IDEA远程访问Spark直接运行代码的尝试</title>
      <link>/2019/2019-idearemotespark/</link>
      <pubDate>Sat, 11 May 2019 00:00:00 +0000</pubDate>
      
      <guid>/2019/2019-idearemotespark/</guid>
      <description> 直接的集成环境IDEA上连接Spark，运行代码，不用再在服务器上执行代码， 美好的想法，但只成功了一半
1.远程连接的3关 写好代码：
val sparkurl=&amp;quot;spark://guan-pc:7077&amp;quot; val spark = SparkSession.builder.master(sparkurl).appName(&amp;quot;start&amp;quot;).getOrCreate() 1.1 代码工程配置正确 运行错误先是Class Not Found，是工程配置的版本与Spark、Scala不匹配的原因，先要将sbt中的
libraryDependencies += &amp;quot;org.apache.spark&amp;quot; % &amp;quot;spark-streaming_2.12&amp;quot; % &amp;quot;2.4.2&amp;quot; % &amp;quot;provided&amp;quot; 的provided部分删除，因为程序是要在本地运行的
 然后就是这两个版本了，Spark的版本好办，安装的是什么就写什么。 中间的Scala内核版本就要麻烦点，不要想当然，可靠的办法是去Spark安装目录的jars下面看， Spark2.4.2用的内核版本是2.12，但2.4.3又回到了2.11，想当然会错
 window下如此，Linux同
  1.2 HADOOP文件 之后会提示个找不到HADOOP文件winutils.exe，下一个HADOOP的支持目录
 1.3 启动Spark的大坑 似乎万事具备了，但实际上就是连不上，还重新检查了Linux端口，无论怎么弄， 网页没问题，但代码就是连不上，终于找到了大神的解决方案，原来是Spark的启动方式， 启动时我一般都用最简单的命令
start-all.sh  但要在windows上远程连接，要用指明IP的方式启动
start-master.sh -h 192.168.0.109 start-slave.sh spark://192.168.0.109:7077 终于连接好了，准备开始读数据 ## 2.读文件的方法 还不知道怎么解决，因为代码在本地执行，而Spark在服务器， Spark无法读取本地的文件，代码如何才能告诉Spark读的是服务器文件呢？ 试了
spark.read.csv(&amp;quot;file:///home/guan/data/dat.csv&amp;quot;) 还是本地的，难道一定要建个HDFS才行吗？ 有待继续研究
  3 window上安装spark 在windows上安装Spark没有什么不同，但启动是个问题，start-master，start-all之类的命令在windows上不能用 要调用类的方式启动
spark-class org.apache.spark.deploy.master.Master spark-class org.apache.spark.deploy.worker.Worker spark://ip:port  </description>
    </item>
    
  </channel>
</rss>