8.1 离线项目预备知识

参考: http://www.zhenchao.cf/bigdata_spark_atguigu/di-4-bu-fen-spark-streaming/di-13-zhang-spark-streaming-gai-shu.html

8.1.1 什么是 DStream

DSream 代表了一系列连续的RDD,DStream中每个RDD包含特定时间间隔的数据


8.1.2 常用算子

算子名称 说明
map 对每个传入的元素,返回一个新的元素
flatMap 对每个传入的元素,返回一个或多个元素
fliter 对传入的元素返回 true 或 false,返回 false 的元素将会被过滤掉
union 将连个 Dsrteam 进行合并
count 返回元素的个数
reduce 对所有 value 进行聚合
countByKey 对元素按照值进行分组,对每个组进行计数,最后返回的格式
reduceByKey 对 Key 对应的 values 进行聚合
join 对两个 Dstream 进行 join 操作,每个链接起来的 pair,作为新 Dstream 的 RDD 的一个元素
transform {rdd=>rdd} rdd 到 rdd 的转换
updateStateByKey 为每一个rdd中的key ,保留状态,持续更新 ps: 在大规模数据场景下,可以用redis替代
window 滑动窗口,滑动窗口和滑动步长必须是取数周期的整数倍

8.1.3 redis 知识

1. 启动服务端

redis-server /opt/module/redis-3.2.5/redis.conf

2. 启动客户端

redis-cli

3. 五种 value 类型

4. set 基本操作

SADD key member // 将一个或多个 member 元素加入到集合 key 当中,已经存在于集合的 member 元素将被忽略
SMEMBERS key  // 去除该集合的所有值
SREM key member [member ...]  // 从集合中删除元素

5. hash 基本操作

HGETALL key // 获取指定key的所有信息(field和value)
HINCRBY key field increment // 为指定key的field加上增量increment

6. 创建 redis 连接

new Jedis(redisIp, redisPort)
Copyright © 尚硅谷大数据 2019 all right reserved,powered by Gitbook
该文件最后修订时间: 2019-05-11 17:58:23

results matching ""

    No results matching ""