我想使用Flink流媒体以低延迟处理市场数据(
我有一组计算,每个都订阅三个流:缓慢移动的参数数据、股票价格和汇率。
例如。
Params(缓慢滴答:每天一次或两次):
symbol|asset|strike 12345 |AAPL |1020 12346 |AAPL | 500 12347 |AAPL |1200 12348 |DAX |2020 12349 |DAX |2500 12350 |DAX |2200 12348 |BASF | 400 12349 |BASF | 300 12350 |BA |1000
资源(每秒多次滴答声):
symbol|currency | spot AAPL | USD | 2300 DAX | EUR | 4002 BASF | EUR | 304 BA | GBP | 234
fx(每秒多次滴答声):
symbol|rate USD | 1 GBP | 1.2 EUR | 1.15 NZD | 1.8
每当任何股票、外汇汇率或参数数据发生变化时,我都想立即计算结果并将其输出为新流。这在逻辑上可以表示为连接:
例如选择价格=(params.strike-asset.spot)*fx.rate参数,资产,外汇fx.symbol=asset.currency和asset.symbol=params.asset
股票和外汇汇率将以不同的速度/时间快速波动(每秒多次),而参数数据的波动频率将非常低(每天一次或两次)。每当这些值发生变化时,我都会重新计算并公布价格。
到目前为止,我已经尝试了不使用windows的“广播”,这确实有效,但确实意味着我需要编写相当多的自定义连接代码,而且我不能使用更优雅的“连接”语法,绝对不能使用SQL。它似乎效率低下,因为数据正在被复制和广播。
为了使用连接,我尝试了windows,它具有自定义触发功能,在数据到达时尝试发送数据,以及保留最新值的自定义逐出代码。这似乎可行,但延迟很高(很多秒)。
还有其他人有什么建议吗?
谢谢
Flink SQL无法(目前)进行广播连接,因此您可以手动实现的优化在SQL API中不可用。关注FLIP-92的进展,其目的是实现这一点。
我试图开发以下代码,但它不起作用。我想使用apache Flink来延迟时间(在时间戳字段中指定的)与当前日期不同的事件。 样品: > 当前日期:2022-05-06 10:30 事件1[{“user1”:“1”,“user2”:“2”,“timestamp”:“2022-05-06 10:30”}-- 事件2[{“user1”:“1”,“user2”:“2”,“timestamp”:“2022-
我正在评估Flink,用于流式分析场景,但还没有找到足够的信息,说明如何实现我们今天在遗留系统中所做的ETL设置。 一个非常常见的场景是,我们有一个键控的低吞吐量元数据流,我们希望使用这些数据流来丰富高吞吐量数据流,如下所示: 这就提出了两个关于Flink的问题:如何使用时间窗口重叠但不相等的缓慢更新流来丰富快速移动的流(元数据可以活几天,而数据可以活几分钟)?如何有效地将多个(最多10个)流与F
我正在尝试运行Flink流媒体作业。我想确定流处理的延迟和吞吐量。我已启动Kafka代理服务器,并收到来自Kafka的传入消息。如何计算每秒的邮件数(吞吐量)?(如rdd.count。是否有类似的方法来获取传入消息的计数) (完整的场景:我已经通过生产者发送了消息作为Json对象。我在Json对象中添加了一些信息,如名称为字符串和System.currentTimeMills。在流式传输期间,我如
延迟连接用于减少长连接数。当有调用发起时,再创建长连接。1 <dubbo:protocol name="dubbo" lazy="true" /> 1. 注意:该配置只对使用长连接的 dubbo 协议生效。 ↩
我正在尝试使用KitKat将实时网络摄像头视频从Ubuntu 12.04 PC传输到android设备。到目前为止,我已经编写了ffserver配置文件来接收ffm提要并通过rtsp协议进行广播。我可以通过ffplay在同一局域网的另一台计算机上观看流。 如何在android设备上观看流?以下代码在使用vlc流式传输网络摄像头图像时效果良好,但在ffmpeg中效果不佳: 我的ffserver.co
我有一个kafka主题,有200万条消息,我的刷新大小是100000,默认分区为分布式模式,有4个工作者,我可以看到数据在几秒钟内立即写入HDFS(10到15秒)。 我看到创建了一个+tmp目录和文件夹,并且每次触发一个新连接器时都会创建主题。 kafka connect的行为是每次都写得这么快,还是已经将数据存储在HDFS中,并根据连接器属性将其移动到主题目录? 我需要清楚这是怎么发生的。如果我