一、业务背景
业务需求:需要实时统计截止到目前 存量订购用户数
根据指标口径:截止到目前依旧处于订购状态的用户
分析:根据离线计算统计出来的,目前存量用户有2E多,而要实时统计该指标,需要将新的订购日志与这2E多数据进行比对,当前该用户如果不是订购状态,则存量订购用户数+1。
并且统计的存量用户的清单表在hive中,如果每来一条日志,就去查询一下hive表,太慢了。所以将数据加载到redis中,不仅可以比对该号码,同时还进行了去重操作。
二、软件版本
flink 1.11.0
redis 2.9
hive 1.1.0
hadoop 2.6.0-cdh5.12.1
三、依赖
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<scala.version>2.11.0</scala.version>
<flink.version>1.11.0</flink.version>
<hive.version>1.1.0</hive.version>
<hadoop.version>2.6.0-cdh5.12.1</hadoop.version>
</properties>
<dependencies>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.9.0</version>
</dependency>
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-table-planner-blink_2.11</artifactId>
<version>${flink.version}</version>
</dependency>
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-table-planner_2.11</artifactId>
<version>${flink.version}</version>
</dependency>
<dependency>
<groupId>org.apache.flink</groupId>