子业务1111

该博客介绍了一个使用Apache Flink处理指数秒级行情数据的Java实现。代码展示了如何进行数据分组、时间窗口操作,以及通过自定义函数处理数据,并最终将结果写入Hbase存储。主要涉及数据流处理、窗口函数和实时数据写入。
摘要由CSDN通过智能技术生成

package cn.itcast.task;

import cn.itcast.bean.CleanBean;
import cn.itcast.config.QuotConfig;
import cn.itcast.function.IndexSecListPutWindowFunction;
import cn.itcast.function.IndexSecWindowFunction;
import cn.itcast.function.KeyFunction;
import cn.itcast.inter.ProcessDataInterface;
import cn.itcast.sink.SinkHbase;
import org.apache.flink.streaming.api.datastream.DataStream;
import org.apache.flink.streaming.api.windowing.time.Time;

/**
 * 指数秒级行情
 * 每5s一条最新时间的数据
 */
public class IndexSecTask implements ProcessDataInterface {
    @Override
    public void process(DataStream<CleanBean> waterData) {
        /**
         * 开发步骤:
         * 1.数据分组
         * 2.划分时间窗口
         * 3.秒级数据处理(新建数据写入Bean和秒级窗口函数)
         * 4.数据写入操作
         *   * 封装ListPuts
         *   * 数据写入
         */
        // 1.数据分组
        waterData.keyBy(new KeyFunction())
                //2.划分时间窗口
                .timeWindow(Time.seconds(5))
                //3.秒级数据处理(新建数据写入Bean和秒级窗口函数)
                .apply(new IndexSecWindowFunction())
                //4.数据写入操作
                .timeWindowAll(Time.seconds(5))
                .apply(new IndexSecListPutWindowFunction())//封装ListPuts
                //数据写入
                .addSink(new SinkHbase(QuotConfig.config.getProperty("index.hbase.table.name")));

    }
}
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值