在shell中,既可以使用scala(运行在java虚拟机,因此可以使用java库)也可以使用python。可以在spark的bin目录下启动spark shell: ....用户可以在任何时候调用方法和库,可以使用Math.max()函数: scala> import java.lang.Math import java.lang.Math scala> textFile.map.../src/main/scala/SimpleApp.scala # Package a jar containing your application 运行sbt命令进行打包 $ sbt package.../target/scala-2.11/simple-project_2.11-1.0.jar # Use spark-submit to run your application 通过spark-submit...那么可以参考下面的链接获得更多的内容: 为了更深入的学习,可以阅读Spark编程指南 如果想要运行Spark集群,可以参考部署指南 最后,Spark在examples目录中内置了多种语言版本的例子,如scala
2.11.8 /opt/scala sbt 0.13.12 开发环境 配置环境变量 编辑 ~/.bash_profile 加上下面的语句: export JAVA_HOME=/opt/java.../opt/akka_2.11-2.4.10 /opt/akka KAFKA 由于我们将会使用Spark内置的Stream KAFKA功能,这个功能现在绑定了KAFKA 8.x....2.11-0.8.2.1.tgz mv /opt/kafka_2.11-0.8.2.1 /opt/kafka sbt sbt包用于开发环境,在测试环境和生产环境可以不要。...可以使用yum安装。...sbt 配置软件 复制AKKA的类库到spark里,这样spark应用就可以使用AKKA的类库。
二、SBT简介 使用Scala语言编程,最好使用SBT框架,可以自动帮你完成包管理等,相当于java中的maven,下面先简单介绍一下SBT基础。 ...,2.4.4"为revision,%方法最终就创建了一个ModuleID对象,此处需要注意_2.11表示当前的Scala版本。...引入akka只需要在build.sbt文件中添加在SBT操作一节中介绍的代码即可,但是要根据自己的Scala版本以及要使用的akka版本进行修改。添加完之后IDEA会自动去下载akka的actor包。...首先建立一个RemoteActor项目,将build.sbt中项目的引用改为libraryDependencies ++= Seq("com.typesafe.akka" % "akka-actor_2.11...使用(六)Scala并发(并行)编程
这篇文章是关于怎样将play 2.2.3的工程迁移到play 2.3.0 1、安装sbt 0.13.5,去官网下载sbt 0.13.5: http://www.scala-sbt.org/download.html...修改sbt版本: sbt.version=0.13.5 2、升级scala到2.11.1(可选),由于play 2.3 同时支持 scala 2.10 和 scala 2.11所以,可以不用升级到...2.11, 但是你用什么版本的scala需要显式声明。...)).enablePlugins(PlayScala) scalaVersion := "2.11.1" libraryDependencies ++= Seq( //... } 5、play 2.3使用...def asyncAction = Action { Async { Future(someExpensiveComputation) }} 上面的这个方式在2.2中是建议改成下面这种使用方式
在 Scala(运行于 Java 虚拟机之上, 并能很好的调用已存在的 Java 类库)或者 Python 中它是可用的。...参数 map 与 reduce 是 Scala 函数(closures), 并且可以使用 Scala/Java 库的任何语言特性。.../build.sbt ./src ./src/main ./src/main/scala ..../target/scala-2.11/simple-project_2.11-1.0.jar # Use spark-submit to run your application $ YOUR_SPARK_HOME...2.11-1.0.jar ...
开始学习spark ml了,都知道spark是继hadoop后的大数据利器,很多人都在使用spark的分布式并行来处理大数据。spark中也提供了机器学习的包,就是MLlib。...MLlib底层采用数值计算库Breeze和基础线性代数库BLAS。 还是从helloworld开始吧。 要用spark的话,最好还是使用scala语言。...这个需要在你定下用哪个spark版本后,再去决定下载哪个版本的scala。 ? 我这里就搞了两个scala版本。2.11和2.12能支持的spark版本大不相同。...具体scala和idea怎么配,网上多的是教程。 配好后,我们来新建一个project,然后选择sbt。 ? ? 在scala这里选择一个scala版本。 然后创建完毕这个sbt项目。...注意,你会经历比较漫长的等待,等待sbt的各种jar包下载完毕,然后你的项目才能创建成功。 sbt你可以理解为一种构建方式,和maven、gradle一样,通过sbt能管理你需要依赖的jar。
http://spark.apache.org/downloads.html 4,编译spark 这里需要注意,默认的spark编译,使用的是scala2.10的版本,一定要确保你所有使用的scala...编译步骤 (1)将下载好的spark源码解压到某个目录下 (2)进入源码目录,分别执行如下命令 设置使用scala那个版本编译 dev/change-version-to-2.11.sh maven...(1)安装使用maven 下载地址 https://maven.apache.org/ (2)安装使用sbt 下载地址 http://www.scala-sbt.org/ 这里推荐用...sbt,专门针对scala项目的进行构建打包的 好吧,也许你需要一个demo来帮助你理解?...在IDEA中,创建一个Scala的SBT项目: 然后在build.sbt文件中,加入如下依赖: Java代码 name := "spark2117" version := "1.0"
+= "org.apache.spark" % "spark-core_2.11" % "1.6.1" 你需要确保 spark所使用的scala版本与你系统scala的版本一致 你也可以这样: libraryDependencies...+= "org.apache.spark" %% "spark-core" % "1.6.1" 那怎样确认你的版本是否一致呢: 1 .首先查看你代码使用的版本,这个就是从pom.xml中或者sbt...配置文件中查看 确定你的使用版本 2.查看你的spark的集群,spark使用的scala的版本 a....b.进入spark的安装目录查看jars目录下,scala中的类库版本号 ls /usr/local/spark/jars | grep scala 显示如下: ?...然后你就可以修改你使用的scala版本号了 问题解决
接下来,我们将讨论如何在流应用程序中使用这种方法。...1.1 引入 对于使用 SBT/Maven 项目定义的 Scala/Java 应用程序,请引入如下工件(请参阅主编程指南中的Linking部分以获取更多信息)。...对于 Scala 和 Java 应用程序,如果你使用 SBT 或 Maven 进行项目管理,需要将 spark-streaming-kafka-0-8_2.11 及其依赖项打包到应用程序 JAR 中。...接下来,我们将讨论如何在流应用程序中使用这种方法。...2.1 引入 对于使用 SBT/Maven 项目定义的 Scala/Java 应用程序,请引入如下工件(请参阅主编程指南中的Linking部分以获取更多信息)。
假设你想要在你的 Java 项目中使用 Google 的 Gson 库,这个库可以帮助你处理 JSON 数据。...)中声明依赖项,然后由构建工具自动从远程仓库(如Maven中心)下载所需的库和框架。...如果您有一个托管依赖项,例如想要在项目中使用 Java HtmlCleaner 库,请在 build.sbt 文件中添加如下行(就像maven的.xml文件中添加依赖项):libraryDependencies...scala/: Scala源代码文件存放的目录。 resources/: 主要资源文件(如配置文件、图像等)存放的目录。...动态构建定义 sbt 构建文件使用 Scala 语言,可以通过使用Scala语言的强大特性编写复杂的逻辑和动态配置。
Spark sql on Hive非常方便,通过共享读取hive的元数据,我们可以直接使用spark sql访问hive的库和表,做更快的OLAP的分析。...spark 如果想直接能集成sql,最好自己编译下源码: 切换scala的版本为新版本 dev/change-scala-version.sh 2.11编译支持hive mvn -Pyarn -Phive...-Phive-thriftserver -Phadoop-2.7.3 -Dscala-2.11 -DskipTests clean package 注意,spark sql 可以直接在Linux...本次使用的spark2.0.2,进入交互式终端之后,可以进行任意的查询分析,但本文的笔记例子,不是基于终端的spark sql分析,而是在Scala中使用spark sql on hive,在编程语言里面使用...开发程序是在IDEA里面写的,项目风格是Java+scala混搭采用maven管理,注意不是全scala项目,没有用sbt管理,sbt的国内下载非常慢,能访问外国网站的同学可以尝试一下。
====== The square sum of $n is $squareSum. ==============") squareSum } } 建一个SimpleAPP/build.sbt.../target/scala-2.11/simple-application-project_2.11-1.0.jar ... [info] Done packaging....运行工程 使用spark提供的命令运行我们的spark应用。 --master local[4]表示在local模式下运行,使用4个线程。...-2.11/simple-application-project_2.11-1.0.jar 输出 (会有很多的log输出): ... ============== The square sum of...下一步,看看如何在集群中运行。 启动一个standalone集群环境。 部署一个standalone集群环境不是本文要讲的内容。 所以,现在我们只使用单机上的集群功能。
进行并行计算; 使用 Scala 开发应用程序; 使用 Sbt 工具对 Scala 代码进行构建管理; 其中前两项属于 Spark 计算环境搭建,后两项属于 Scala 编程。...我这里选择 sbt,原因是这三者虽然功能上难分伯仲,但 sbt 与 scala 具备天然的亲和性,它自身是使用 scala 编写的,其工程定义文件实际也是一个 scala 程序,使用它构建 scala...5.1 sbt 简介 sbt 官网: http://www.scala-sbt.org, 在这上面有有很详细的 中文文档。 sbt 从官网下载最新版本,开箱即可使用,其安装说名这里不再赘述。...会首先从本地库中寻找寻找被引用组件包。...scala 编写了单词计数的程序,使用 sbt 进行构建管理,将其提交给 Spark 集群执行,真实感受到了 Spark 编程接口的简洁优雅。
akka只是一个类库,一个工具,并没有提供一个平台。...使用了Spark。...src/main/resources mkdir -p /AkkaSampleApp/src/main/scala 代码 build.sbt name := "akka-sample-app" version...运行: sbt package 第一次运行时间会比较长。.../target/scala-2.11/akka-sample-app_2.11-1.0.jar:$AKKA_HOME/lib/akka/*:$SCALA_HOME/lib/* ClientApp # or
KafkaSampleApp mkdir -p /KafkaSampleApp/src/main/scala 代码 build.sbt name := "kafka-sample-app" version...运行: sbt package 第一次运行时间会比较长。...:2.0.0 --master spark://$(hostname):7077 --class ConsumerApp target/scala-2.11/kafka-sample-app_2.11-.../target/scala-2.11/kafka-sample-app_2.11-1.0.jar:$KAFKA_HOME/libs/* ProducerApp # or # $KAFKA_HOME/bin.../target/scala-2.11/kafka-sample-app_2.11-1.0.jar:$KAFKA_HOME/libs/* ProducerApp 然后:看看Consumer应用是否收到了消息
我们可以轻松地使用SBT创建一个新的Scala项目并定义build.sbt,如下所示: build.sbt 正如你所看到的,Akka HTTP项目的标准依赖关系(通用于提供者和消费者),spry-json...生产者特定的依赖关系仅用于数据库支持,如您所见,我使用H2(在内存数据库中),但您可以轻松地将其替换为其他数据库支持。...并避免在相同或类似项目中使用不同的方法/结构。...如果你很幸运,你应该得到这样的输出: 我已经使用IntelliJ IDEA CE来执行测试,但是您可以直接使用这些命令来使用sbt: sbt test:它执行扩展了FunSpec和WordSpec的所有测试...还有其他类似的库,如Argonaut和JSON4S,可以按你想法评估所有这些库,并选择最适合您需求的库。 如果我们再次执行测试,我们现在应该得到一条绿线。再次,添加更多的测试,以涵盖每一个案例。
从官网下载 Spark Package type Source code: Spark 源码,需要编译才能使用,另外 Scala 2.11 需要使用源码编译才可使用 Pre-build with...map()、reduce() 中的参数是 Scala 的函数字面量(function literals,也称为闭包 closures),并且可以使用语言特征或 Scala/Java 的库。...例如,通过使用 Math.max() 函数(需要导入 Java 的 Math 库),可以使上述代码更容易理解: import java.lang.Math textFile.map(line => line.split...使用 Scala 编写的程序需要使用 sbt 进行编译打包,相应的,Java 程序使用 Maven 编译打包,而 Python 程序通过 spark-submit 直接提交。...点击查看:解决 sbt 无法下载依赖包的问题 使用 sbt 打包 Scala 程序 为保证 sbt 能正常运行,先执行如下命令检查整个应用程序的文件结构: cd ~/sparkappfind .
前提Spark集群已经搭建完毕,如果不知道怎么搭建,请参考这个链接: http://qindongliang.iteye.com/blog/2224797 注意提交作业,需要使用sbt打包成一个jar...,然后在主任务里面添加jar包的路径远程提交即可,无须到远程集群上执行测试,本次测试使用的是Spark的Standalone方式 sbt依赖如下: ?...demo2:使用Scala 在客户端造数据,测试Spark Sql: ?...demo3:使用Scala 远程读取HDFS文件,并映射成Spark表,以Spark Sql方式,读取top10: ?...val jarPaths="target/scala-2.11/spark-hello_2.11-1.0.jar" /**Spark SQL映射的到实体类的方式**/ def mapSQL2()
比如使用sbt,网速慢一些。Linux上就比较容易解决。相信也有很多人习惯window,希望在window上安装IntelliJ IDEA....这里主要介绍如何在window下安装IntelliJ IDEA,及需要jdk和Scala。...IntelliJ IDEA安装 jdk和Scala的安装,是为IntelliJ IDEA的使用做准备。使用IntelliJ IDEA需要引入jdk及Scala sdk....1.通过库安装 库安装非常简单,只要里面搜索安装的插件即可。 比如Scala ? 输入Scala后,会将相关内容都会显示,在图中4位置,通过下拉框,下拉后我们找到Scala ?...这时候我们就看到了Scala选项。同样安装sbt ? 这时候我们看到了Scala选项 ? 2.本地安装 Scala通过库安装经常失败。我们通过官网下载,然后本地安装。
/e44/2.11.x/site-20160504-1321/features/org.scala-ide.play2.feature_0.6.0.v-2_11-201605041113-674180c.jar.../base-20160504-1321/plugins/org.scala-ide.sbt.full.library_0.13.8.v-2_11-201605041056-92a3ed3.jar..../e44/2.11.x/site-20160504-1321/features/org.scala.tools.eclipse.search.feature_0.3.0.v-2_11-201605041114...Read timed out 那么你可以设置代理的方式继续安装; 或者 直接将插件下载下来,再使用本地安装也可。...运行你的第一个Scala应用 同样我们可以使用Eclipse中的快捷方式, 输入 main 然后 按Alt + / , 自动补全 Scala 的main 函数: 编写第一行 Scala 代码, 要求输出
领取专属 10元无门槛券
手把手带您无忧上云