scala
文章平均质量分 70
董可伦
博主曾获2014年全国数学建模竞赛国家一等奖;有八年大数据经验,大数据领域专家、CSDN博客专家。Apache Hudi Active Contributor,喜欢开源,擅长并乐于分享Flink、Hudi、Spark等大数据领域的技术
展开
-
Spark DataFrame isin方法使用
我的原创地址:https://dongkelun.com/2020/01/21/sparkDfIsin/前言总结如何使用Spark DataFrame isin 方法需求查询DataFrame某列在某些值里面的内容,等于SQL IN ,如 where year in(‘2017’,‘2018’)代码示例isin 方法只能传集合类型,不能直接传DataFame或Columnpackage com.dkl.blog.spark.dfimport org.apache.spark.sql.原创 2021-06-19 15:44:31 · 2138 阅读 · 0 评论 -
sbt 支持打包Java程序
我的原创地址:https://dongkelun.com/2019/11/19/sbtSupportJava/前言最开始用sbt+scala,后来有了scala和Java混合使用的需求,之前在sbt项目下写Java程序,用idea和eclipse运行没问题,但是打包报错,所以一直认为sbt不支持Java,于是就有了IDEA 新建Maven项目同时支持Java和Scala两种语言,但是有的旧项目也需要结合java,所以就再次尝试,结果发现sbt还真的支持打包Java,这里记录一下配置其实就是加一个配置原创 2021-02-26 15:25:42 · 365 阅读 · 0 评论 -
IDEA 新建Maven项目同时支持Java和Scala两种语言
前言之前用Eclipse+sbt+Scala,sbt 不支持Java,如果项目里包含Java文件打包会报错,现在有同时用Java和Scala的需求,比如写一个Java的类,用Scala去调用,所以改用Maven,第一次用,将过程记录下来。首先安装Scala插件然后新建一个maven project建好之后,配一下maven 如图:这个时候是不能使用Scala的,如图配置 Project StructureFile=>Project Structure=>Libraries原创 2020-08-14 20:45:28 · 4600 阅读 · 1 评论 -
Spark读取CSV异常 java.lang.ArrayIndexOutOfBoundsException:62
前言记录一个异常场景Spark读取CSV文件,文件里的某些内容编码格式有问题或者有特殊字符一种情况是 62,我碰到的这种,另一种是63,查资料查的java.lang.ArrayIndexOutOfBoundsException:62java.lang.ArrayIndexOutOfBoundsException:63解决方法情况1:将GBK编码的文件转文UTF-8(我碰见的...原创 2019-11-19 19:01:25 · 2071 阅读 · 0 评论 -
Scala学习笔记
我的原创地址:https://dongkelun.com/2018/12/14/scalaLearningNotes/前言之前看Scala编程思想学习Scala,只看完了一半多,就没再继续深入学习,导致一些Scala基础知识还不知道,而且过去这么长时间了,之前学过的也遗忘了,所以这里主要记录自己学习Scala时容易遗忘的一些点,以备自己随时查看,增加记忆。这个主要给自己用,不定时更新添加~1...原创 2019-01-16 16:13:20 · 359 阅读 · 0 评论 -
打印(获取)HDFS路径下所有的文件名(包括子目录下的)
我的原创地址:https://dongkelun.com/2018/11/20/getAllHDFSFileNames/前言自己有个需求,如题,需要获取HDFS路径下所有的文件名,然后根据文件名用Spark进行后续操作。想了一下用Spark好像不太容易获取到,还要递归的去获取子目录下的文件名,于是查了一下,最后用Hadoop的API搞定,这里记录下,方便以后会用到。1、数据测试路径:/tm......原创 2018-11-21 00:16:52 · 17515 阅读 · 0 评论 -
Spark 持久化(cache和persist的区别)
转载请务必注明原创地址为:https://dongkelun.com/2018/06/03/sparkCacheAndPersist/1、RDD 持久化Spark 中一个很重要的能力是将数据持久化(或称为缓存),在多个操作间都可以访问这些持久化的数据。当持久化一个 RDD 时,每个节点的其它分区都可以使用 RDD 在内存中进行计算,在该数据上的其他 action 操作将直接使用内存中的数据......原创 2018-06-20 10:18:55 · 26968 阅读 · 7 评论 -
Scala日期操作
转载请务必注明原创地址为:https://dongkelun.com/2018/06/01/scalaDate//前言本文主要记录我自己对日期格式数据的一些常用操作,主要目的是备忘,方便随时查阅。本文没有将代码封装为函数,如果有需要的可以自行封装,注意每一部分的代码会依赖前面代码里的变量。代码可以直接在spark-shell里运行(在scala里有的包没有)1、字符串转日期......原创 2018-06-15 09:06:53 · 13306 阅读 · 0 评论 -
Spark读取压缩文件
转载请务必注明原创地址为:https://dongkelun.com/2018/05/30/sparkGZ/前言本文讲如何用spark读取gz类型的压缩文件,以及如何解决我遇到的各种问题。1、文件压缩下面这一部分摘自Spark快速大数据分析: 在大数据工作中,我们经常需要对数据进行压缩以节省存储空间和网络传输开销。对于大多数Hadoop输出格式来说,我们可以指定一种压缩编......原创 2018-06-05 22:40:02 · 19613 阅读 · 1 评论 -
如何解决spark开发中遇到需要去掉文件前几行数据的问题
我碰到的问题是这样的,我需要读取压缩文件里的数据存到hive表里,压缩文件解压之后是一个txt,这个txt里前几行的数据是垃圾数据,而这个txt文件太大,txt是直接打不开的,所以不能手动打开删除前几行数据,而这个文件是业务人员从别人那拿到的所以也不能改,本文就是讲如何解决这个问题。...原创 2018-06-02 18:05:09 · 6927 阅读 · 0 评论 -
spark 统计每天新增用户数
转载请务必注明原创地址为:http://dongkelun.com/2018/04/11/sparkNewUV/前言本文源自一位群友的一道美团面试题,解题思路(基于倒排索引)和代码都是这位大佬(相对于尚处于小白阶段的我)写的,我只是在基于倒排索引的基础上帮忙想出了最后一步思路,感觉这个解题思路不错,值得记录一下。1、原始数据2017-01-01 a2017-01-01 ...原创 2018-05-09 17:23:54 · 5609 阅读 · 0 评论 -
spark-submit报错:Exception in thread “main“ java.sql.SQLException:No suitable driver
最近写了一个用spark连接oracle,然后将mysql所有的表保存到hive中的程序,在本地eclipse里运行没有问题,想在集群上跑一下,看看在集群上性能如何,但是用spark-submit 提交程序时抛出一个异常Exception in thread “main” java.sql.SQLException: No suitable driver,一开始以为spark-submit提交时找不到oracle 驱动jar,折腾了半天才发现是代码问题。...原创 2018-05-09 17:20:12 · 8573 阅读 · 0 评论 -
spark 将DataFrame所有的列类型改为double
由于spark机器学习要求输入的DataFrame类型为数值类型,所以如果原始数据读进来的列为string类型,需要一一转化,而如果列很多的情况下一个转化很麻烦,所以能不能一个循环或者一个函数去解决呢。2、循环转变然后就想能不能用这个方法循环把每一列转成double,但没想到怎么实现,可以用withColumn循环实现。3、通过:...原创 2018-05-09 17:18:14 · 24948 阅读 · 3 评论 -
spark连接hive(spark-shell和eclipse两种方式)
转载请务必注明原创地址为:http://dongkelun.com/2018/03/25/sparkHive/1、在服务器(虚拟机)spark-shell连接hive1.1 将hive-site.xml拷贝到spark/conf里cp /opt/apache-hive-2.3.2-bin/conf/hive-site.xml /opt/spark-2.2.1-bin-hadoo...............原创 2018-05-09 09:14:40 · 16005 阅读 · 0 评论 -
Spark Sql 连接mysql
转载请务必注明原创地址为:http://dongkelun.com/2018/03/21/sparkMysql/1、基本概念和用法(摘自spark官方文档中文版)Spark SQL 还有一个能够使用 JDBC 从其他数据库读取数据的数据源。当使用 JDBC 访问其它数据库时,应该首选 JdbcRDD。这是因为结果是以数据框(DataFrame)返回的,且这样 Spark SQL操作轻松或便......原创 2018-05-09 00:28:27 · 16660 阅读 · 4 评论 -
scala 两个map合并,key相同时value相加
转载请务必注明原创地址为:http://dongkelun.com/2018/04/01/scalaMapAdd/1、先看一下map自带的合并操作的效果val map1 = Map("key1" -> 1, "key2" -> 3, "key3" ->原创 2018-05-08 21:20:58 · 16925 阅读 · 1 评论