Table API是流处理和批处理通用的关系型API,Table API可以基于流输入或者批输入来运行而不需要进行任何修改。Table API是SQL语言的超集并专门为Apache Flink设计的,Table API是Scala 和Java语言集成式的API。与常规SQL语言中将查询指定为字符串不 ...
分类:
数据库 时间:
2020-07-09 15:03:48
阅读次数:
83
首先要实现的是实时热门商品统计,我们将会基于UserBehavior数据集来进行分析。 项目主体用Scala编写,采用IDEA作为开发环境进行项目编写,采用maven作为项目构建和管理工具。首先我们需要搭建项目框架。 2.1 创建Maven项目 2.1.1 项目框架搭建 打开IDEA,创建一个mav ...
分类:
其他好文 时间:
2020-07-09 14:59:23
阅读次数:
87
1 变量声明中的模式 match中每一个case都可以单独提取出来,意思是一样的. 应用案例 val (x, y) = (1, 2) val (q, r) = BigInt(10) /% 3 //说明 q = BigInt(10) / 3 r = BigInt(10) % 3 val arr = A ...
分类:
其他好文 时间:
2020-07-08 13:32:30
阅读次数:
57
1 match 应用案例 Scala的模式匹配 案例代码完整: package com.atguigu.base object MatchDemo { def main(args: Array[String]): Unit = { // 模式匹配,类似于Java的switch语法 var resul ...
分类:
其他好文 时间:
2020-07-08 13:24:06
阅读次数:
49
1 匹配数组 1)Array(0) 匹配只有一个元素且为0的数组。 2)Array(x,y) 匹配数组有两个元素,并将两个元素赋值为x和y。当然可以依次类推Array(x,y,z) 匹配数组有3个元素的等等.... 3)Array(0,_*) 匹配数组以0开始 应用案例 2 匹配列表 应用案例 fo ...
分类:
其他好文 时间:
2020-07-08 13:18:41
阅读次数:
64
1 折叠 fold函数将上一步返回的值作为函数的第一个参数继续传递参与运算,直到list中的所有元素被遍历。 1)可以把reduceLeft看做简化版的foldLeft。 如何理解: def reduceLeft[B >: A](@deprecatedName('f) op: (B, A) => B ...
分类:
其他好文 时间:
2020-07-08 10:30:25
阅读次数:
89
1 映射 Map-基本介绍 Scala中的Map介绍 1) Scala中的Map 和Java类似,也是一个散列表,它存储的内容也是键值对(key-value)映射,Scala中不可变的Map是有序的,可变的Map是无序的。 2) Scala中,有可变Map (scala.collection.mut ...
分类:
其他好文 时间:
2020-07-08 01:44:58
阅读次数:
68
集是不重复元素的结合。集不保留顺序,默认是以哈希集实现 默认情况下,Scala 使用的是不可变集合,如果你想使用可变集合,需要引用 scala.collection.mutable.Set 包 1 集 Set-创建 Set不可变集合的创建 val set = Set(1, 2, 3) //不可变 p ...
分类:
其他好文 时间:
2020-07-08 01:36:36
阅读次数:
72
1 filter filter:将符合要求的数据(筛选)放置到新的集合中 应用案例:将 val names = List("Alice", "Bob", "Nick") 集合中首字母为'A'的筛选到新的集合。 思考:如果这个使用传统的方式,如何完成? val names = List("Alice" ...
分类:
其他好文 时间:
2020-07-08 01:27:46
阅读次数:
67
在Scala中可以通过map映射操作来解决: 将集合中的每一个元素通过指定功能(函数)映射(转换)成新的结果集合这里其实就是所谓的将函数作为参数传递给另外一个函数,这是函数式编程的特点 以HashSet为例说明 def map[B](f: (A) ? B): HashSet[B] //map函数的签 ...
分类:
其他好文 时间:
2020-07-08 01:01:44
阅读次数:
67