
Scala
三劫散仙
唯有学习,可以解忧
展开
-
scala可变参数列表使用
在Scala中,可以使用可变参数列表(varargs)来定义一个函数,以接受可变数量的参数。语法可以将一个数组的元素作为可变参数传递给函数。原创 2023-11-29 18:39:18 · 554 阅读 · 0 评论 -
scala集合的partition方法使用
在Scala中,partition 方法用于将集合(例如 List、Array ,Set等)中的元素根据给定的条件分成两个部分,并返回一个元组,其中包含两个新的集合,第一个包含满足条件的元素,另一个包含不满足条件的元素。可以看到非常方便快速的就将两个集合分开了,还是比较好用的。原创 2023-10-25 15:14:03 · 624 阅读 · 0 评论 -
spark sql使用常量列值创建虚拟表
在代码中,其实很容易实现,我们看下在sql里面怎么实现,关键知识点:spark inline表 + create view。原创 2023-03-01 11:45:38 · 440 阅读 · 0 评论 -
Intellj IDEA +SBT + Scala + Spark Sql读取HDFS数据
[size=large]前提Spark集群已经搭建完毕,如果不知道怎么搭建,请参考这个链接:[url]http://qindongliang.iteye.com/blog/2224797[/url]注意提交作业,需要使用sbt打包成一个jar,然后在主任务里面添加jar包的路径远程提交即可,无须到远程集群上执行测试,本次测试使用的是Spark的Standalone方式sbt依赖...2015-08-28 19:22:59 · 520 阅读 · 1 评论 -
Spark入门之WordCount
[img]http://dl2.iteye.com/upload/attachment/0111/4770/079b7965-40fb-318c-8c35-cd5d6aa03c83.png[/img][size=large]环境:Hadoop版本:Apache Hadoop2.7.1 Spark版本:Apache Spark1.4.1核心代码:[/size]...2015-09-06 20:15:25 · 129 阅读 · 0 评论 -
Scala中的case match语法
scala中的case语法与java中的switch语法类似,但比switch更强大:例子一正则匹配:[code="java"] val Pattern="(s.*)".r val v1="spark"; val r=v1 match { case Pattern(v1)=> "begin s*" case "1"...2016-12-21 20:11:14 · 449 阅读 · 0 评论 -
Scala中的Map使用例子
Map结构是一种非常常见的结构,在各种程序语言都有对应的api,由于Spark的底层语言是Scala,所以有必要来了解下Scala中的Map使用方法。#### (1)不可变Map特点:api不太丰富如果是var修饰,引用可变,支持读写如果是val修饰,引用不可变,只能写入一次值,其后只读[code="java"] var...2016-12-27 22:02:08 · 455 阅读 · 0 评论 -
Scala里面如何使用break和continue
好多从Java转过来使用Scala的人会发现Scala里面竟然没有break和contine关键字,其实不是这样的,Scala里面推荐使用函数式的风格解决break和contine的功能,而不是一个关键字。如何在Scala中实现break和continue呢?(1)break例子[code="java"] breakable( for(i...2016-12-29 19:38:21 · 934 阅读 · 0 评论 -
在Scala里面如何使用正则处理数据
正则在任何一门编程语言中,都是必不可少的一个模块,使用它来处理文本是非常方便的,尤其在处理在使用spark处理大数据的时候,做ETL需要各种清洗,判断,会了正则之后,我们可以非常轻松的面对各种复杂的处理,Scala里面的正则也比Java简化了许多,使用起来也必要简单,下面通过几个例子来展示下其用法:[code="java"]/** * Created by QinDongLi...2017-01-05 11:08:30 · 409 阅读 · 0 评论 -
使用Scala的强大api快速加工数据
Scala是一门高级的,非常灵活和强大的函数式编程语言,既支持类型严格,语义明确的面向对象的编程风格,也支持类型多变,写法风骚的函数式编码。Scala中封装了许多有用强大的api,使我们处理数据更加方便,当然Java8以后也支持了一些函数式编程的写法的语法糖,终于能使雍容的java代码精简不少,有名的开源框架如Spark,Kafka,Filnk也都是使用Scala编写的,感兴趣的朋友可...2017-07-31 20:33:43 · 212 阅读 · 0 评论 -
Scala里面如何使用枚举
枚举通常用来定义已知数量的常量,比如月份,星期,季节等等,用过java的人都知道定义枚举的关键字是enum,在scala里面和java有所不同,来看一个完整的例子定义:[code="java"]object EnumTest { /*** * 定义一个星期的枚举 */ object WeekDay extends Enumeratio...2017-08-23 18:41:37 · 373 阅读 · 0 评论 -
Scala版本的WordCount
[size=large]在处理搜索的同义词数据时遇到一个问题,本来是由数据人员人工整理好的数据,发我直接使用,后来发现发我的数据里面总是存在点问题,也难怪了2000行x5列条左右的数据,让人工去比对,若不是细心的人还真是容易出现问题,这已经是第三次整理的结果了,结果还是有问题,就自己写个程序,找出有问题的数据,然后再处理下,有问题的数据也就几十条。搜索使用的同义词一般是如下格式的:...2015-07-20 19:17:53 · 684 阅读 · 0 评论 -
scala如何读取和写入文件内容?
[color=black][size=large]直接看如下代码:[/size][/color][code="java"]package fileimport java.io.RandomAccessFileimport java.nio.charset.Charsetimport scala.io.Sourceimport scala.reflect.io.{File...2015-07-17 19:29:32 · 2598 阅读 · 0 评论 -
Scala中的case match语法
scala中的case语法与java中的switch语法类似,但比switch更强大:例子一正则匹配:val Pattern="(s.*)".r val v1="spark"; val r=v1 match { case Pattern(v1)=> "begin s*" case "1"=> "1" case "2"=> "2"原创 2016-12-21 20:16:20 · 38699 阅读 · 0 评论 -
Scala中的Map使用例子
Map结构是一种非常常见的结构,在各种程序语言都有对应的api,由于Spark的底层语言是Scala,所以有必要来了解下Scala中的Map使用方法。(1)不可变Map特点:api不太丰富如果是var修饰,引用可变,支持读写如果是val修饰,引用不可变,只能写入一次值,其后只读var a:Map[String,Int]=Map("k1"->1,"k2"-原创 2016-12-27 22:09:46 · 59543 阅读 · 2 评论 -
在Scala里面如何使用正则处理数据
正则在任何一门编程语言中,都是必不可少的一个模块,使用它来处理文本是非常方便的,尤其在处理在使用spark处理大数据的时候,做ETL需要各种清洗,判断,会了正则之后,我们可以非常轻松的面对各种复杂的处理,Scala里面的正则也比Java简化了许多,使用起来也必要简单,下面通过几个例子来展示下其用法:/** * Created by QinDongLiang on 2017/1/5. *原创 2017-01-05 11:08:39 · 1339 阅读 · 0 评论 -
Scala里面如何使用break和continue
好多从Java转过来使用Scala的人会发现Scala里面竟然没有break和contine关键字,其实不是这样的,Scala里面推荐使用函数式的风格解决break和contine的功能,而不是一个关键字。如何在Scala中实现break和continue呢?(1)break例子breakable( for(i0 until 10) { println(i)原创 2016-12-29 19:41:48 · 31049 阅读 · 3 评论 -
Spark Streaming如何使用checkpoint容错
在互联网场景下,经常会有各种实时的数据处理,这种处理方式也就是流式计算,延迟通常也在毫秒级或者秒级,比较有代表性的几个开源框架,分别是Storm,Spark Streaming和Filnk。曾经在一个项目里面用过阿里改造后的JStrom,整体感受就是编程略复杂,在不使用Trident Api的时候是不能保证准确一次的数据处理的,但是能保证不丢数据,但是不保证数据重复,我们在使用期间也出现过原创 2017-01-06 21:33:40 · 2504 阅读 · 1 评论 -
使用Scala的强大api快速加工数据
Scala是一门高级的,非常灵活和强大的函数式编程语言,既支持类型严格,语义明确的面向对象的编程风格,也支持类型多变,写法风骚的函数式编码。Scala中封装了许多有用强大的api,使我们处理数据更加方便,当然Java8以后也支持了一些函数式编程的写法的语法糖,终于能使雍容的java代码精简不少,有名的开源框架如Spark,Kafka,Filnk也都是使用Scala编写的,感兴趣的朋友可以学原创 2017-07-31 20:34:17 · 1337 阅读 · 0 评论 -
Scala里面如何使用枚举
枚举通常用来定义已知数量的常量,比如月份,星期,季节等等,用过java的人都知道定义枚举的关键字是enum,在scala里面和java有所不同,来看一个完整的例子定义:object EnumTest { /*** * 定义一个星期的枚举 */ object WeekDay extends Enumeration{ type WeekDay = Value /原创 2017-08-23 18:52:31 · 20710 阅读 · 0 评论 -
在Scala里面如何使用元组
元组在Scala语言中是一种十分重要的数据结构,类似数据库里面的一行记录(row),它可以将不同类型的值组合成一个对象,在实际应用中十分广泛。先来看一个简单的tuple定义:val tuple=("张三",25)//定义一个tupleval (name,age)=("张三",25)//变量绑定模式上面的第二种例子中,可以直接通过name和age来访问单个tuple的元素原创 2018-01-08 22:07:33 · 3724 阅读 · 0 评论 -
Scala里面的排序函数的使用
排序方法在实际的应用场景中非常常见,Scala里面有三种排序方法,分别是: sorted,sortBy ,sortWith分别介绍下他们的功能:(1)sorted对一个集合进行自然排序,通过传递隐式的Ordering(2)sortBy对一个属性或多个属性进行排序,通过它的类型。(3)sortWith基于函数的排序,通过一个comparator原创 2018-01-09 20:22:16 · 29101 阅读 · 3 评论 -
Scala集合笔记
[b][color=olive][size=large]Scala的集合框架类比Java提供了更多的一些方便的api,使得使用scala编程时代码变得非常精简,尤其是在Spark中,很多功能都是由scala的这些api构成的,所以,了解这些方法的使用,将更加有助于我们学习Scala和Spark:List,Map,Set的一些api的用法如下:[/size][/color][/b][co...2015-07-08 20:15:55 · 116 阅读 · 0 评论 -
Scala集合笔记
java,scala,spark原创 2015-07-09 11:44:01 · 2414 阅读 · 0 评论