Spark-用户应用程序

Spark Standalone模式下的Application
  
  Application是Spark中类似于Hadoop的Job的用户提交的应用。sc是Spark集群初始化时创建的SparkContext,Spark中包含Action算子和Transferer算子。有宽依赖和窄依赖。默认情况下Spark的调度器(DAGScheduler)是FIFO方式。

//默认排序输出到磁盘文件
scala> val r1 = sc.textFile("/root/rdd1.txt").flatMap(_.split(" ")).map(x=>(x,1)).reduceByKey(_+_).saveAsTextFile("/root/rddOut/noSort")
FileOutputCommitter: Saved output of task ‘attempt_201507140546_0014_m_000000_14‘ to file:/root/rddOut/noSort/_temporary/0/task_201507140546_0014_m_000000

//字典序正序排序输出到磁盘文件
val r1 = sc.textFile("/root/rdd1.txt").flatMap(_.split(" ")).map(x=>(x,1)).reduceByKey(_+_).sortByKey(true).saveAsTextFile("/root/rddOut/zSort")
FileOutputCommitter: Saved output of task ‘attempt_201507140546_0017_m_000000_17‘ to file:/root/rddOut/zSort/_temporary/0/task_201507140546_0017_m_000000

//字典序倒序排序输出到磁盘文件
val r1 = sc.textFile("/root/rdd1.txt").flatMap(_.split(" ")).map(x=>(x,1)).reduceByKey(_+_).sortByKey(false).saveAsTextFile("/root/rddOut/fSort")
FileOutputCommitter: Saved output of task ‘attempt_201507140547_0020_m_000000_20‘ to file:/root/rddOut/fSort/_temporary/0/task_201507140547_0020_m_000000

时间: 2024-10-10 18:03:56

Spark-用户应用程序的相关文章

Spark的应用程序执行模型

今天看了一篇名为Top 3 Troubleshooting Tips to Keep You Sparking的文章,讲述了一些编写Spark程序需要注意的地方,看完之后想要总结一下. Spark执行模型,总结为官方的架构图: 本文主要讨论Driver和Worker. 我们知道,对于Spark开发的分布式应用程序,和写普通的scala程序基本类似.所以这时往往会陷入一些误区: 在Spark开发的应用程序的对象里,我给他们分成2类对象: 1.闭包内的对象:即在类似map, filter, redu

Linux用户态程序计时方式详解

前言 良好的计时器可帮助程序开发人员确定程序的性能瓶颈,或对不同算法进行性能比较.但要精确测量程序的运行时间并不容易,因为进程切换.中断.共享的多用户.网络流量.高速缓存访问及转移预测等因素都会对程序计时产生影响. 本文将不考虑这些影响因素(相关资料可参考<深入理解计算机系统>一书),而仅仅关注Linux系统中用户态程序执行时间的计算方式.除本文所述计时方式外,还可借助外部工具统计耗时,如<Linux调试分析诊断利器——strace>一文中介绍的strace. 本文示例代码的运行环

13.Python全栈之路:用户登录程序

用户登录程序 功能介绍: 1.支持登录验证 2.支持注册新用户 #!/usr/bin env python # -*- coding:utf-8 -*- def login(user, pwd): """ 用于用户名密码的验证 :param user: 用户名 :param pwd: 密码 :return: True,用户验证成功,Flase,用户验证失败 """ with open("db.log", "r&quo

Linux用户态程序计时方式详解[转]

转自: http://www.cnblogs.com/clover-toeic/p/3845210.html 前言 良好的计时器可帮助程序开发人员确定程序的性能瓶颈,或对不同算法进行性能比较.但要精确测量程序的运行时间并不容易,因为进程切换.中断.共享的多用户.网络流量.高速缓存访问及转移预测等因素都会对程序计时产生影响. 本文将不考虑这些影响因素(相关资料可参考<深入理解计算机系统>一书),而仅仅关注Linux系统中用户态程序执行时间的计算方式.除本文所述计时方式外,还可借助外部工具统计耗时

Python学习笔记一:第一个Python程序,变量,字符编码与二进制,用户交互程序

第一个python程序 Windows:设置环境变量,X:\pthonxxx,xxx是版本号 在命令提示符下 输入python,进入解释器 >>>print("Hello World!") >>>exit() 编辑文件helloworld.py 执行:python helloworld.py Linux:./helloworld.py   声明解释器:#!/usr/bin/env python  在环境变量中找python Chmod 755 hel

编写Spark的WordCount程序并提交到集群运行[含scala和java两个版本]

编写Spark的WordCount程序并提交到集群运行[含scala和java两个版本] 1. 开发环境 Jdk 1.7.0_72 Maven 3.2.1 Scala 2.10.6 Spark 1.6.2 Hadoop 2.6.4 IntelliJ IDEA 2016.1.1 2. 创建项目1) 新建Maven项目 2) 在pom文件中导入依赖pom.xml文件内容如下: <?xml version="1.0" encoding="UTF-8"?> &l

call_usermodehelper内核中运行用户应用程序

init是用户空间第一个程序,在调用init前程序都运行在内核态,之后运行init时程序运行到用户态. 操作系统上,一些内核线程在内核态运行,它们永远不会进入用户态.它们也根本没有用户态的内存空间.它的线性地址空间就是共享内核的线性地址空间.一些用户进程通常在用户态运行.有时因为系统调用而进入内核态,调用内核提供的系统调用处理函数. 但有时,我们的内核模块或者内核线程希望能够调用用户空间的进程,就像系统启动之初init_post函数做的那样. 如,一个驱动从内核得到了主从设备号,然后需要使用mk

运用String类实现一个模拟用户登录程序

package Test; import java.util.Scanner; // 模拟用户登录程序 // 思路: // 1.用两个String类分别接收用户名和密码 // 2.判断输入的用户名和密码是否一致:一致则输入成功,否则重新输入 // 3.输入错误时,提示剩余输入次数,最多三次 public class Test { public static void main (String [] args){ String useName="wang"; String goToCar

Python脚本实现基于文件存储的用户登录程序

1 #!/usr/bin/env python 2 # coding:utf-8 3 4 """ 5 aim: 基于文件存储的用户登录程序(3次登录失败,锁定用户) 6 7 need: 8 a. 用户信息文件 9 b. 用户输入 10 11 logical: 12 a. 校验用户名合法情况 13 b. 校验用户锁定情况 14 c. 校验密码 15 d. 更新登录失败次数 16 e. 写入文件 17 18 sum: 19 a. 更新用户锁定次数不要直接操作文件,可先写入内存,程

Python的用户交互程序及格式化输出

1.  用户输入 在Python 3 中,用户输入用input()函数即可实现用户交互程序. 例如,我们根据程序提示输入用户名和密码,并且打印输入的信息. 2. 字符串格式化输出 例如,我们根据程序提示输入姓名,工作,薪资等信息,然后实现多种格式化输出. (1)用 加好"+"实现格式化输出. 代码如下: 1 name = input("name:") 2 job = input("job:") 3 salary = input("sal