文档章节

spark做聚合计算

KYO4321
 KYO4321
发布于 2017/06/27 16:07
字数 66
阅读 17
收藏 0
from pyspark import SparkContext, SparkConf
conf = SparkConf().setAppName("My Spark Application").setMaster("local")
sc = SparkContext(conf=conf)
text = sc.textFile('/root/common_command/url_data.csv') 
url_info = text.map(lambda line:line.split(","))
id_info = url_info.map(lambda fields:((fields[0], fields[1]),(fields[3])))
url_cnt = id_info.countByKey().items()
url_num = id_info.distinct().countByKey().items()
x = sc.parallelize(url_cnt) 
y = sc.parallelize(url_num)
result = sorted(x.fullOuterJoin(y).collect())
print(result)
print("executed successfully!")

© 著作权归作者所有

KYO4321
粉丝 4
博文 142
码字总数 81632
作品 0
深圳
程序员
私信 提问
加载中

评论(5)

KYO4321
KYO4321 博主
用Spark Python进行数据处理和特征提取
http://blog.csdn.net/u013719780/article/details/51768720
KYO4321
KYO4321 博主
##也可以使用python进行处理
import pandas as pd
df = pd.read_csv('url_data.txt', sep=',')
df.groupby(['ID','name'])['url'].count()

"""
ID name
id1 user1 4
id2 user2 4
Name: url, dtype: int64
"""


df1= df.iloc[:, [0,1,3]]
df1 = df1.drop_duplicates()
df1.groupby(['ID','name']).count()
"""
url
ID name
id1 user1 1
id2 user2 2

"""
KYO4321
KYO4321 博主
##源数据
##如下几个字段ID,name,cnt,url
##统计用户的总访问次数和去除访问同一个URL之后的总访问次数
"""
id1,user1,2,http://www.hupu.com
id1,user1,2,http://www.hupu.com
id1,user1,3,http://www.hupu.com
id1,user1,100,http://www.hupu.com
id2,user2,2,http://www.hupu.com
id2,user2,1,http://www.hupu.com
id2,user2,50,http://www.hupu.com
id2,user2,2,http://touzhu.hupu.com

"""
KYO4321
KYO4321 博主
将正文中的代码封装到new_demo.py文件中,然后运行如下代码
sh run_spark.sh new_demo.py

即可得到相应结果:
[root@SZC-L0033614 common_command]# sh run_spark.sh new_demo.py
17/06/27 16:05:08 WARN SparkContext: Support for Java 7 is deprecated as of Spark 2.0.0
17/06/27 16:05:08 WARN NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
17/06/27 16:05:10 WARN Utils: Service 'SparkUI' could not bind on port 4040. Attempting port 4041.
[((u'id1', u'user1'), (4, 1)), ((u'id2', u'user2'), (4, 2))]
executed successfully!
KYO4321
KYO4321 博主
[root@SZC-L0033614 common_command]# more call_pyspark.sh
cd /usr/lib/spark-2.1.0-bin-hadoop2.7/bin
./pyspark
[root@SZC-L0033614 common_command]# more run_spark.sh
spark_file=$1
/usr/lib/spark-2.1.0-bin-hadoop2.7/bin/spark-submit ${spark_file}
Spark on Angel:Spark机器学习的核心加速器

Spark的核心概念是RDD,而RDD的关键特性之一是其不可变性,来规避分布式环境下复杂的各种并行问题。这个抽象,在数据分析的领域是没有问题的,它能最大化的解决分布式问题,简化各种算子的复...

腾讯开源
2017/08/01
3
0
基于Alluxio系统的Spark DataFrame高效存储管理技术

介绍 越来越多的公司和组织开始将Alluxio和Spark一起部署从而简化数据管理,提升数据访问性能。Qunar最近将Alluxio部署在他们的生产环境中,从而将Spark streaming作业的平均性能提升了15倍,...

开源大数据
01/30
0
0
Apache Flink和Apache Spark有什么异同?它们的发展前景分别怎样?

============================= object WordCount { def main(args: Array[String]) {val env = new SparkContext("local","wordCount")val data = List("hi","how are you","hi")val dataSe......

justlpf
2018/05/12
0
0
突破DBMS局限性,阿里借力Spark提升查询性能

我们知道SQL Server是一款技术上和商业上都很成功的产品,这一次微软选择拥抱Spark大数据生态,着实令人有些惊讶。国内的几款产品也丝毫不落后,阿里云的DRDS、腾讯云TDSQL也都各自推出了与S...

技术小能手
2018/11/05
0
0
Spark 从零到开发(五)初识Spark SQL

Spark SQL是用于结构化数据处理的Spark模块。 与基本的Spark RDD API不同,Spark SQL提供的接口为Spark提供了有关数据结构和正在执行的计算的更多信息。 在内部,Spark SQL使用此额外信息来执...

一个入门攻城狮
2018/11/20
0
0

没有更多内容

加载失败,请刷新页面

加载更多

只需一步,在Spring Boot中统一Restful API返回值格式与统一处理异常

统一返回值 在前后端分离大行其道的今天,有一个统一的返回值格式不仅能使我们的接口看起来更漂亮,而且还可以使前端可以统一处理很多东西,避免很多问题的产生。 比较通用的返回值格式如下:...

晓月寒丶
昨天
59
0
区块链应用到供应链上的好处和实际案例

区块链可以解决供应链中的很多问题,例如记录以及追踪产品。那么使用区块链应用到各产品供应链上到底有什么好处?猎头悬赏平台解优人才网小编给大家做个简单的分享: 使用区块链的最突出的优...

猎头悬赏平台
昨天
28
0
全世界到底有多少软件开发人员?

埃文斯数据公司(Evans Data Corporation) 2019 最新的统计数据(原文)显示,2018 年全球共有 2300 万软件开发人员,预计到 2019 年底这个数字将达到 2640万,到 2023 年达到 2770万。 而来自...

红薯
昨天
65
0
Go 语言基础—— 通道(channel)

通过通信来共享内存(Java是通过共享内存来通信的) 定义 func service() string {time.Sleep(time.Millisecond * 50)return "Done"}func AsyncService() chan string {retCh := mak......

刘一草
昨天
58
0
Apache Flink 零基础入门(一):基础概念解析

Apache Flink 的定义、架构及原理 Apache Flink 是一个分布式大数据处理引擎,可对有限数据流和无限数据流进行有状态或无状态的计算,能够部署在各种集群环境,对各种规模大小的数据进行快速...

Vincent-Duan
昨天
60
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部