利用Linux通道捆绑来提升IBM InfoSphere Streams性能

本文将从较高的层次介绍通道绑定的概念,如何设置测试环境和我们观察到的结果。在我们的实验中,通道绑定将带宽提高达 68%。

本文探讨 Red Hat Enterprise Linux 上的通道绑定对 IBM InfoSphere Streams 吞吐量和延迟的影响。将介绍如何使用 Red Hat Enterprise Linux 系统设置和配置通道绑定环境,可从在此环境中运行的 InfoSphere Streams 应用程序获得怎样的性能改进。目标读者为熟悉 InfoSphere Streams 和 Linux 网络接口配置并具备相应技能的人群。

通道绑定是什么?

通道绑定 (Channel bonding) 这个术词用于描述在两个网络接口之间拆分单个数据流,同时为应用程序层提供单个接口的过程。通过利用此技术,可实现更高的数据吞吐量,因为数据可同时在两个网络接口卡上流动。通道绑定可用于 InfoSphere Streams 支持的所有 Red Hat Enterprise Linux 内核。我们测试了一种通道绑定设置,并解释所观察到的结果。

设置通道绑定

硬件

要在 1Gbps 连接上通过通道绑定实现最佳的性能结果,请考虑以下硬件需求:

1Gbps 交换机或具有较高的过度订阅比率的更大交换机上的一个线路卡 具有两个 1Gbps Ethernet 连接的两个支持 Linux 的系统

备注:如果使用的是">刀片服务器,在机架中使用穿透 (pass-through) 模块。由于交换机中用于调解流量的算法的原因,交换机模块可能不具有最佳的性能。

在我们的测试环境中,Cisco 6509 交换机构成了私有集群网络的 1Gbps 主干网。为了实现各个系统的最大性能,我们使用了 WS-X6748-GE-TX 线路卡。这些线路卡是高性能卡(每槽 40Gbps ),为卡上的所有 48 个端口提供了接近 1Gbps 的速度。对于本测试,交换运行 Cisco 的 IOS 版本 12,线路卡具有最新的固件。如果您的 Cisco 交换机运行 NX-OS 或者使用另一家供应商的产品,这些命令可能需要修改或者可能完全不同。请向您的网络管理员咨询寻求帮助。

对于下面列出的性能数字,网络交换机中未使用任何特殊的配置。尽管一些供应商交换机支持链路聚合控制协议 (Link Aggregation Control Protocol, LACP),一种纯操作系统的绑定配置可获得更高的性能结果。因为现代的硬件可轻松处理一些问题(如重新排序乱序的包)而不会对性能造成任何显著的影响,所以没有必要依赖交换机硬件来执行此工作。

图 1. InfoSphere Streams 通道绑定测试配置

软件

从软件的角度讲,您需要的所有软件都已包含在 Red Hat Enterprise Linux 5 发行版中。要在您的环境为每台机器设置通道绑定,您需要调整网络配置并将链接聚合在交换机中。为了简化这些说明,我们将假设您将进行通道绑定的任何服务器配置了 Red Hat Enterprise Linux 5 并在构建时定义了两个网络接口中的一个。在我们的示例中,eth0 在最初设置,/etc/sysconfig/network-scripts/ifcfg-eth0 类似于清单 1。

清单 1. /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0

HWADDR=E4:1F:13:78:FE:98

ONBOOT=yes

BOOTPROTO=static

IPADDR=10.6.24.43

NETMASK=255.255.252.0

DNS1=10.6.24.11

设置通道绑定软件涉及到 4 步:

更改 /etc/sysconfig/network-scripts 中的 ifcfg-eth0 更改 /etc/sysconfig/network-scripts 中的 ifcfg-eth1 在 /etc/sysconfig/network-scripts 中创建一个新 ifcfg-bond0 描述系统的 “绑定”

备注:最好在关闭接口时执行此工作。如果在接口运行时执行,系统将发出警告,因为 eth0 现在是一个从属服务器,但您将获得正确的网络配置。您将发现重新启动将花更长时间。

时间: 2024-10-23 18:39:05

利用Linux通道捆绑来提升IBM InfoSphere Streams性能的相关文章

如何从 IBM InfoSphere Streams 调用 Python 代码

概述 IBM InfoSphere Streams 是一个高性能的实时事件处理中间件.它独特的优势在于能够从各种不同的数据来源获取结构化和非结构化数据,以用于执行实时分析.它通过将一种称为 SPL(Streams Processing Language,流处理语言)的易于使用的应用程序开发语言与一个分布式运行时平台相结合来完成此任务.这个中间件还提供了一个灵活的应用程序开发框架,将使用 C++ 和 Java 编写的代码集成到 Streams 应用程序中.除了 C++ 和 Java,许多构建真实

从IBM InfoSphere Streams应用程序调用Python代码

还可以在一个 Streams 应用程序的上下文内调用 Python 代码.学习如何直接从 IBM InfoSphere Streams 应用程序调用 Python 代码. IBM InfoSphere Streams 是一个高性能的实时事件处理中间件.它独特的优势在于能够从各种不同的数据来源获取结构化和非结构化数据,以用于执行实时分析.它通过将一种称为 SPL(Streams Processing Language,流处理语言)的易于使用的应用程序开发语言与一个分布式运行时平台相结合来完成此任务

使用Java编程语言构建IBM InfoSphere Streams应用程序

简介 IBM InfoSphere Streams( 以下简称 Streams) 是 IBM 于 2009 年推出的具有高可靠性,高可扩展性,分布式流计算平 台,前瞻性地把支持每秒 6G 或者每小时 21600G(相当于互联网上所有网页数量之和)数据处理能力作为系统设计的指标 ,实现了流数据"永恒分析"的能力.它包含一个运行时环境 ( 或者称为实例 ) 和编程模型来简化需要对大批量连续流数 据进行提取.过滤.分析以及关联的应用程序的开发,能够广泛的应用于制造.零售.交通运输.金融证券以

云服务器 ECS 配置:利用MySQL读写分离,提升应用数据吞吐性能

利用MySQL读写分离,提升应用数据吞吐性能 背景 一般情况下,对数据库的读和写都在同一个数据库服务器中操作时,业务系统性能会降低.为了提升业务系统性能,优化用户体验,可以通过读写分离来减轻主数据库的负载.本篇文章分别从应用层和系统层来介绍读写分离的实现方法. 应用层实现方法: 应用层中直接使用代码实现,在进入Service之前,使用AOP来做出判断,是使用写库还是读库,判断依据可以根据方法名判断,比如说以query.find.get等开头的就走读库,其他的走写库. 优点: 1.多数据源切换方便

介绍IBM InfoSphere Streams平台的典型拓扑结构

本文特别适合流计算应用的开发人员阅读,对需要了解和设计流计算架构的人员也有很大的参考价值. 进入 21 世纪,由于处理器性能的大幅提升以及网络技术和应用的日新月异, 数据的传播和交换正经历革命性的变化.图灵奖获得者吉姆·格雷(Jim Gray)认为,网络环境下每 18 个月产生的数据量等于过去几千年的数据量之和.不仅如此,数据还具有实时.异构.非结构化等一系列特点.目前大多数数据分析平台如 Hadoop,采用离线计算的方式来处理具有上述特征的数据,耗费的时间少则数天,多则数月,极大地延误了业务决

如何使用IBM InfoSphere Streams进行模拟

IBM 通过 InfoSphere Streams 提供了一个强大且可扩展的解决方案来处理每秒数百万个数据元组的持续流.该流引擎提供了一种健壮.高度可用且可扩展的运行时,能够在数百个节点和 C++PU 核心上执行分析逻辑.这为您提供了专心使用数据的自由,让您无需花时间研究如何和在何处使用数据. 在一种典型的操作领域,InfoSphere Streams 可帮助您处理动态传入的数据,在不到一秒内对新事件做出反应,无需在事后延迟几分钟或者甚至几小时再处理数据.图 1 显示了一种系统架构,Stream

使用InfoSphere Streams的自定义Java 运算符和ICU4J实现实时音译

集成 Java 音译模块和 InfoSphere Streams 的自定义 Java 运算符 简介 在成长型市场区域中,任何解决方案提供商面临的首要挑战是可用数据的方言和语言学的不一致性.由于成长型市场区域中拥有包括英语在内的多种官方语言,所以地区的语言符号逐渐嵌入到了英语符号中.因此,您首先需要执行音译来实现数据中的一致性,然后再继续执行处理/文本分析. 如果使用预定的语言,那么数据音译会为您提供更统一.更一致的结果.本文将介绍使用 InfoSphere Streams 的自定义 Java 运

InfoSphere Streams如何帮助您将数据转换为洞察

IBM 在多年前就引入了 "智慧地球" 这个术语.利用这个术语,可以描述 3 个主要属性: 物联化 智能化 互连化 长久以来,这已经形成一个现实.想象一下智能手机的激增,这实际上可能提供了比保持联系更多的功能.智能手机包括 GPS 提供的用于测量温度和湿度的一组传感器.再加上世界各地使用的所有传感器和仪表,我们看到了一个不断演化的真实情况. 这就构成了应该转换成信息 的大量数据.例如,我们可以利用群众的力量来洞察不断变化的情形.我们可以察觉出可能产生机遇或避免严重灾害的趋势.我们可以看

InfoSphere Streams 3.0连接Streams作业和DataStage作业

作为 InfoSphere Streams 3.0 和 InfoSphere Information Server 9.1 版本的一部分,这两款产品都进行了改进,让 Streams 应用程序和 DataStage 作业之间的集成变得更容易. 本文提供了解释如何在 Streams 应用程序和 DataStage 作业之间创建端到端集成场景的技术细节.阅读本文后您将熟悉以下概念: 从 Streams 应用程序将数据发送到 DataStage 作业,包括如何: 创建或修改一个现有 Streams SP