Spark练习题

本文涉及的产品
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
简介: Spark练习题

hdfs基础操作


删除数据hdfs上的数据

删除文件

hadoop fs -rm /user/root/test.txt


删除目录

hadoop fs -rm -f -r /user/root/test.txt


查看hdfs上的文件

hadoop fs -ls /user/root


练习题1.0


1、将文件上传到hdfs上

[root@hadoop05lyq50 opt]# hdfs dfs -put result_bigdata.txt /user/root
[root@hadoop05lyq50 opt]# hdfs dfs -put result_math.txt /user/root


2、导入到变量(textFile)(创建RDD)

大数据

var bigdata=sc.textFile("/user/root/result_bigdata.txt")
bigdata.collect


数学

var math=sc.textFile("/user/root/result_math.txt")
math.collect


学生

var student=sc.textFile("/user/root/student.txt")
student.collect


3、用\t分割开(splint)

var L_bigdata=bigdata.map(x=>x.split("\t"))             #大数据
L_bigdata.collect
var L_math=math.map(x=>x.split("\t"))                      #数学
L_math.collect
var L_student=student.map(x=>x.split("\t"))                       #学生
L_student.collect


4、把数组转换为元组(提取某几组的数据)(map)

var u_bigdata=L_bigdata.map(x=>(x(0),x(1),x(2).toInt))          #大数据
var u_math=L_math.map(x=>(x(0),x(1),x(2).toInt))                  #大数据
var u_student=L_student.map(x=>(x(0),x(1)))                        #学生


5、合并两个RDD(数学和大数据)(union)

var sum=u_bigdata.union(u_math)                        #大数据和数学
sum.collect


6、用成绩来倒序排序数据(sortBy)

var by_sum=sum.sortBy(x=>x._3,false)


7、获取前3条数据

var data_3=by_sum.take(3)


scala> var data_3=by_sum.take(3) data_3: Array[(String, String, Int)] = Array((1007,大数据基础,100), (1003,应用数学,100), (1004,应用数学,100))            #输出结果


练习题2.0


1、上传到hdfs上

[root@hadoop05lyq50 opt]# hdfs dfs -put users.txt /user/root


2、将文件数据导入到变量中去,并且用“\t”分隔(创建RDD)

var users=sc.textFile("/user/root/users.txt").map(x=>x.split("\t"))
users.collect


3、将数组的数据转化为元组,并提前第二位的数据

var u_users=users.map(x=>(x(1)))
u_users.collect


4、将元组转换为键值对的形式

var users_1=u_users.map(x=>(x,1))
users_1.collect

image.png


5、统计各个地区数量

var data_TJ=users_1.reduceByKey((x,y)=>x+y)
data_TJ.collect

image.png


6、将统计数据以文件形式上传到hdfs上去

data_TJ.saveAsTextFile("/user/root/data_TJ.txt")

image.png


7、将hdfs上的文件下载到本地

image.png

相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
2月前
|
存储 分布式计算 并行计算
【赵渝强老师】Spark中的RDD
RDD(弹性分布式数据集)是Spark的核心数据模型,支持分布式并行计算。RDD由分区组成,每个分区由Spark Worker节点处理,具备自动容错、位置感知调度和缓存机制等特性。通过创建RDD,可以指定分区数量,并实现计算函数、依赖关系、分区器和优先位置列表等功能。视频讲解和示例代码进一步详细介绍了RDD的组成和特性。
|
8月前
|
分布式计算 关系型数据库 MySQL
Spark编程实验四:Spark Streaming编程
Spark编程实验四:Spark Streaming编程
296 2
|
8月前
|
SQL 分布式计算 关系型数据库
Spark编程实验三:Spark SQL编程
Spark编程实验三:Spark SQL编程
246 1
|
8月前
|
分布式计算 资源调度 测试技术
一道Spark练习题
一道Spark练习题
56 0
|
分布式计算 Shell Spark
spark学习记录
spark学习记录
44 0
|
分布式计算 Spark
3.1 spark编程
3.1 spark编程
|
SQL 分布式计算 资源调度
spark 几道面试题
spark 几道面试题
|
SQL 存储 分布式计算
「Spark从精通到重新入门(二)」Spark中不可不知的动态资源分配
资源是影响 Spark 应用执行效率的一个重要因素。Spark 应用中真正执行 task 的组件是 Executor,可以通过spark.executor.instances 指定 Spark 应用的 Executor 的数量。在运行过程中,无论 Executor上是否有 task 在执行,都会被一直占有直到此 Spark 应用结束。
826 0
「Spark从精通到重新入门(二)」Spark中不可不知的动态资源分配
|
SQL 消息中间件 存储
spark面试该准备点啥
大部分面试者被面试的spark问题估计都会集中于spark core,spark streaming和spark sql,至于mllib和graphx这些估计都是了解项,当然也要逐步去学习structured streaming。
spark面试该准备点啥
|
存储 分布式计算 算法
好程序员分享ApacheSpark常见的三大误解
  好程序员分享ApacheSpark常见的三大误解误解一:Spark是一种内存技术   大家对Spark最大的误解就是其是一种内存技术(in-memorytechnology)。其实不是这样的!没有一个Spark开发者正式说明这个,这是对Spark计算过程的误解。
4261 0

热门文章

最新文章