39、基于数据实例的流式处理与约束优化问题研究

基于数据实例的流式处理与约束优化问题研究

流式处理中的推式与拉式策略对比

在流式处理场景中,我们进行了一系列实验来对比推式(push-based)和拉式(pull-based)策略的性能。

首先,将数据复制为具有八个分区的流(复制因子为 2),同时运行四个消费者,这些消费者配置为使用基于 Flink 的推式和拉式策略以及原生 C++ 拉式消费者。消费者会对八个 Flink 映射器每秒报告的元组进行迭代、过滤和计数。

在实验结果方面,生产者与拉式消费者直接竞争。我们预期当并发消费者使用推式策略时,集群吞吐量会更高。实验发现,除了 32 KB 块大小的情况外,生产者的结果相似。在 32 KB 块大小时,由于拉式消费者速度较慢,生产者能够推送更多数据。C++ 拉式消费者能更好地跟上生产者的节奏,而推式消费者在配置为使用较小块时也能跟上生产者。Flink 的推式策略比拉式策略性能高出达 2 倍,因此在资源受限的场景中,推式方法可能更具性能优势。

在 Wikipedia 基准测试(窗口化词频计数流)中,生产者配置为以 2 KiB 记录的块读取 Wikipedia 文件,能在几秒内推送约 2 GiB 的文本。消费者运行数十秒,且不与生产者竞争。拉式和推式消费者表现出相似的性能。当从一个消费者扩展到四个消费者时,我们绘制了八个映射器每秒聚合的词频元组。由于该基准测试受 CPU 限制,使用较小块或更多分区的流进行实验时,结果相似。为避免在商用集群上处理大型数据集(如数十 GB)时出现网络瓶颈,在存储端进行预处理和本地聚合时,推式方法可能更具竞争力。

未来实现优化方向

对于当前的原型实现,仍有进一步改进的空间:
1.

源码来自:https://pan.quark.cn/s/d16ee28ac6c2 ### 上线流程 Java Web平台在实施Java Web应用程序的发布过程时,通常包含以下几个关键阶段:应用程序归档、生产环境配置文件替换、系统部署(涉及原有应用备份、Tomcat服务关闭、缓存数据清除、新版本WAR包上传及服务重启测试)以及相关异常情况记录。以下将对各阶段进行深入说明。#### 一、应用程序归档1. **归档前的准备工作**: - 需要事先验证Java开发环境的变量配置是否正确。 - 一般情况下,归档操作会在项目开发工作结束后执行,此时应确认所有功能模块均已完成测试并符合发布标准。 2. **具体执行步骤**: - 采用`jar`指令执行归档操作。例如,在指定文件夹`D:\apache-tomcat-7.0.2\webapps\prsncre`下运行指令`jar –cvf prsncre.war`。 - 执行该指令后,会生成一个名为`prsncre.war`的Web应用归档文件,其中包含了项目的全部资源文件及编译后的程序代码。#### 二、生产环境配置文件调换1. **操作目标**:确保线上运行环境开发或测试环境的参数设置存在差异,例如数据库连接参数、服务监听端口等信息。2. **执行手段**: - 将先前成功部署的WAR包中`xml-config`文件夹内的配置文件进行复制处理。 - 使用这些复制得到的配置文件对新生成的WAR包内的对应文件进行覆盖更新。 #### 三、系统部署1. **原版应用备份**: - 在发布新版本之前,必须对当前运行版本进行数据备份。例如,通过命令`cp -r prsncre ../templewebapps/`将旧版应用复...
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值