package demo.flink.retained;
import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.io.FileUtil;
import cn.hutool.core.util.StrUtil;
import org.apache.flink.api.common.functions.MapFunction;
import org.apache.flink.api.common.typeinfo.Types;
import org.apache.flink.api.java.DataSet;
import org.apache.flink.api.java.ExecutionEnvironment;
import org.apache.flink.api.java.operators.AggregateOperator;
import org.apache.flink.api.java.operators.FilterOperator;
import org.apache.flink.api.java.tuple.Tuple3;
import org.apache.flink.configuration.Configuration;
import org.apache.flink.core.fs.FileSystem;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import demo.flink.wordcount.util.MappedBiggerFileReaderWrite;
import java.io.FileOutputStream;
import java.util.*;
/**
* flink 计算留存
* 数据源文件:每天一个文件
*
* @Author: lizixian
* @date: 2022/9/7 23:43
*/
public class Retained4Demo {
private static Logger logger = LoggerFactory.getLogger(Retained4Demo.class);
private static String DATA_TEMP_PATH = "G:\\demo\\temp.txt";
private static String DATA_BASE_PATH = "G:\\demo\\%s.txt";
public static void main(String[] args) throws Exception {
Map<String, List<String>> map = new TreeMap<>();
Date date = DateUtil.parse("20220701");
retained("20220701");
System.out.println(map);
}
/*
flink 计算留存 Java 版本
最新推荐文章于 2025-09-14 14:48:45 发布
该代码示例展示了如何利用Apache Flink计算留存率。首先,它合并多个日文件数据,然后通过Flink API进行数据处理,包括去重、过滤、聚合等操作,以计算不同时间段的新增和留存用户。最后,输出留存率相关统计数据。


1258

被折叠的 条评论
为什么被折叠?



