spark dataset join 使用方法java
dataset<Row> df1,df2,df3 //该方法可以执行成功
df3= df1.join(df2,"post_id").selectExpr("hostname,request_date,post_id,title,author,name as category".split(",")); //innner join acc = df1.withColumnRenamed("post_id", "post_id_acc");
//该方法join同名列的时候,要重命名,否则会报错:重名列(通过drop删除无效,不知道是什么原因)
post_categories = acc.join(post_one_cat,acc.col("post_id_acc").equalTo(post_one_cat.col("post_id")),"left_outer").join(categories, post_one_cat.col("cate_id").equalTo(categories.col("id")),"left_outer").selectExpr("hostname,request_date,post_id_acc as post_id,title,author,name as category".split(","));
9 //post_categories = acc.join(post_one_cat,acc.col("post_id_acc").equalTo(post_one_cat.col("post_id")),"left_outer").join(categories, post_one_cat.col("cate_id").equalTo(categories.col("id")),"left_outer").withColumnRenamed("name", "category")
.withColumnRenamed("post_id_cat", "post_id");
 //该方法可以执行成功 
 df3= df1.join(df2,JavaConverters.asScalaIteratorConverter(Arrays.asList("post_id").iterator()).asScala().toSeq(),"left_outer").join(cat, JavaConverters.asScalaIteratorConverter(Arrays.asList("cate_id").iterator()).asScala().toSeq(),"left_outer").selectExpr("hostname,request_date,post_id,title,author,name as category".split(","));
spark dataset join 使用方法java的更多相关文章
- Spark Dataset DataFrame 操作
		Spark Dataset DataFrame 操作 相关博文参考 sparksql中dataframe的用法 一.Spark2 Dataset DataFrame空值null,NaN判断和处理 1. ... 
- Spark DataSet 、DataFrame 一些使用示例
		以前使用过DS和DF,最近使用Spark ML跑实验,再次用到简单复习一下. //案例数据 1,2,3 4,5,6 7,8,9 10,11,12 13,14,15 1,2,3 4,5,6 7,8,9 ... 
- Spark With Mongodb 实现方法及error code -5, 6, 13127解决方案
		1.spark mongo 读取 val rdd = MongoSpark.builder().sparkSession(spark).pipeline(Seq(`match`(regex(" ... 
- Atitit.实现继承的原理and方法java javascript .net c# php ...
		Atitit.实现继承的原理and方法java javascript .net c# php ... 1. 实现继承的问题 1 2. 如何拷贝基类方法?采用prototype原型方式,通过冒充对象 1 ... 
- paip.uapi 获取网络url内容html 的方法java php ahk c++ python总结.
		paip.uapi 获取网络url内容html 的方法java php ahk c++ python总结. 各种语言总结比较,脚本php.python果然是方便.简短,实用. uapi : get_w ... 
- Spark:用Scala和Java实现WordCount
		http://www.cnblogs.com/byrhuangqiang/p/4017725.html 为了在IDEA中编写scala,今天安装配置学习了IDEA集成开发环境.IDEA确实很优秀,学会 ... 
- 【转】Android中引入第三方Jar包的方法(java.lang.NoClassDefFoundError解决办法)
		原文网址:http://www.blogjava.net/anchor110/articles/355699.html 1.在工程下新建lib文件夹,将需要的第三方包拷贝进来.2.将引用的第三方包,添 ... 
- atitit.为什么技术的选择方法java超过.net有前途
		atitit.为什么技术的选择方法java超过.net有前途 #----有没有法律依据不同的铜需求... 通常有开发效率,需要在稳定性.. 笔者 老哇爪 Attilax 艾龙, EMAIL:1466 ... 
- 【原创】大数据基础之Spark(8)Spark中Join实现原理
		spark中join有两种,一种是RDD的join,一种是sql中的join,分别来看: 1 RDD join org.apache.spark.rdd.PairRDDFunctions /** * ... 
随机推荐
- Google 和 Baidu 常用的搜索技巧
			Google 常用的搜索技巧 1. 精确搜索:双引号 精确搜索,就是在你要搜索的词上,加上双引号,这个Google搜索引擎,就会完全的匹配你所要的词 2. 站内搜索:site 这是一个比较常用的搜索方 ... 
- AD9516锁相环功能外接环路滤波器的设计与分析
- Python 学习笔记(九)Python元组和字典(三)
			字典常用方法 copy() 返回一个字典的浅复制 示例:浅拷贝d.copy() 深拷贝引入import copy copy.deepcopy() >>> help(dict.co ... 
- ZooKeeper系列(1)--分布式系统的基石
			分布式架构有以下几点普适性的共性需求: 1. 提供集群的集中化的配置管理功能,可以不重启就让新的配置参数生效,类似与配置中心 2. 简单可靠的集群节点动态发现机制,便于动态发现服务,动态扩展 ... 
- 查询sqlserver 表结构呀
			SQL Server里查询表结构命令 对于SQL Server数据库有两种方法查询表结构 第一种方法 sp_help Accounts_Users 其中Accounts_Users 表示表名 ... 
- 05 oracle中lock和latch的用途
			oracle中lock和latch的用途 本文向各位阐述Oracle的Latch机制,Latch,用金山词霸翻译是门插栓,闭锁,专业术语叫锁存器,我开始接触时就不大明白为什么不写Lock,不都是锁 ... 
- vue-cli使用swiper4在ie以及safari报错
			vue-cli项目中,通过npm run swiper --save-dev安装的是swiper4版本的插件,这样安装以后在谷歌火狐等浏览器都可以正常运行,但是在safari浏览器(可能是版本太低)还 ... 
- vector,set常见方法
			vector push_back() 压入元素 size()返回元素个数 swap()交换两个向量的位置 erase()任意位置删除元素 reverse(a.begin(),a.end())翻转 se ... 
- #leetcode刷题之路10-正则表达式匹配
			匹配应该覆盖整个字符串 (s) ,而不是部分字符串.说明:s 可能为空,且只包含从 a-z 的小写字母.p 可能为空,且只包含从 a-z 的小写字母,以及字符 . 和 *. 示例 1:输入:s = & ... 
- 【2013 ICPC亚洲区域赛成都站 F】Fibonacci Tree(最小生成树+思维)
			Problem Description Coach Pang is interested in Fibonacci numbers while Uncle Yang wants him to do s ... 
