diff --git a/note/实战项目/基于 flink 的电商用户行为数据分析【5】基于埋点日志数据的网络流量统计.md b/note/实战项目/基于 flink 的电商用户行为数据分析【5】基于埋点日志数据的网络流量统计.md
index 3cf49a8..c96a409 100644
--- a/note/实战项目/基于 flink 的电商用户行为数据分析【5】基于埋点日志数据的网络流量统计.md
+++ b/note/实战项目/基于 flink 的电商用户行为数据分析【5】基于埋点日志数据的网络流量统计.md
@@ -13,6 +13,7 @@
所以,接下来我们用UserBehavior.csv作为数据源,实现一个网站总浏览量的统计。我们可以设置滚动时间窗口,实时统计每小时内的网站PV。

+
在src/main/scala下创建 `PageView.scala` 文件,具体代码如下:
```scala
@@ -57,6 +58,7 @@ object PageView {
```
程序运行的结果:
+

@@ -127,9 +129,12 @@ object UniqueVisitor {
程序运行的结果:

+
到了这一步,让我们想想,还有没有更好的方案?
+
+

### 使用布隆过滤器的 UV 统计
@@ -291,12 +296,18 @@ object UvWithBloomFilter {
```
程序运行的效果如下所示:
+

- 可以发现,我们改进之后的程序,不再是把所有需要统计的数据都放到本地内存里进行计算,而是来一条数据,我们就输出,然后利用布隆过滤器进行判断,并将最新的结果存入Redis。
+
+
+ 可以发现,我们改进之后的程序,不再是把所有需要统计的数据都放到本地内存里进行计算,而是来一条数据,我们就输出,然后利用布隆过滤器进行判断,并将最新的结果存入Redis。
等到程序运行完毕,我们打开 `redis`,输入`hgetall count`查看统计的最终结果,可以发现跟我们之前统计的结果是一致的。
+

- 要是嫌利用 redis 的 `bitmap` 自己手动实现一个简单的布隆过滤器过程繁琐的话,我们也可以利用Flink官方实现的布隆过滤器来实现。具体代码见下:
+
+
+ 要是嫌利用 redis 的 `bitmap` 自己手动实现一个简单的布隆过滤器过程繁琐的话,我们也可以利用Flink官方实现的布隆过滤器来实现。具体代码见下:
```scala
/*
@@ -382,7 +393,9 @@ object UvByBloomFilterWithoutRedis {
```
程序的运行结果:
+

+
***
### 小结