InfoSphere Streams 2.0特性简介: 使用集合

您还将学习如何使用基础 C++++ Streams 运算符访问集合。

本文介绍目前可供 InfoSphere Streams 2.0 ">开发人员使用的 3 种集合类型。集和映射复合类型不仅可用于 Streams 2.0 版,还为基础和复合类型的嵌套增添了灵活性。本文将同时使用 Streams 处理语言和 C++ 的一些示例展示新类型的强大功能。

前提条件

本文是为拥有 Streams 编程语言技能和 C++ 技能的 Streams 组件开发人员和应用程序编程人员编写的。您可以将本文用作参考,或者可以检查并运行其中的示例来演示所介绍的技术。要执行示例,您应该对 Streams 编程有一般的了解。

运行这些示例需要一台运行 Red Hat Enterprise Linux® 且安装了 InfoSphere Streams V2.0 或更新版本的计算机。

理解集合

Streams 处理语言 (SPL) 既支持基础类型(int 和 string 等),又支持可用于在表示 SPL 应用程序中的流数据的复合类型(集和映射)。一组复合类型(称为集合)可用于表示流数据的复杂排列,支持使用内置的 SPL 函数访问和操作集合内容。

在早期的 InfoSphere Streams 版本中,SPADE 语言支持一组受限制的复合类型,包括矩阵和列表,这些类型可用于管理基础类型分组。Streams 2.0 放弃了矩阵类型。支持的集合列表现在包含:

集(2.0 版中新增) 映射(2.0 版中新增) 列表

集合已进一步扩展,可用它来表示复合类型的复杂嵌套,包括列表的列表,这为集合所管理的数据增添了更高的灵活性。

图 1. Streams 基础和复合类型

受限类型和无限制类型

对于字符串等基础类型,SPL 还实现了具有有限长度的集合类型。任何有限长度集合的大小需要使用一个编译时常量来定义。也可以声明包含无限类型的有限集合,比如一个有限的 rstring 列表。从开发人员的角度讲,有限和无限类型之间的区别很小。但是,在使用有限类型时存在一些编译时优化优势。

请注意,无论受限制还是无限制,SQL 都会将任何集合限制于最多 231-1 个元素。

以下各节将更详细地介绍复合类型。

理解列表集合

时间: 2024-09-13 08:47:36

InfoSphere Streams 2.0特性简介: 使用集合的相关文章

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

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

InfoSphere Streams使用控制端口特性来同步构建过程

该工具中的建模操作符使用传入的时序数据来构建内部的预测或跟踪模型.在真实场景中,用于模型构建的传入数据可能成为干扰数据,应该从模型构建流程中丢弃 这些数据.此外,在清理传入数据后,模型可能必须再次培训 (retrain).本文为这个问题提供了一个解决方案,介绍如何使用控制端口特性来同步和调整模型构建过程和操作符函数,确保传入数据的质量. InfoSphere Streams Time http://www.aliyun.com/zixun/aggregation/16960.html">S

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

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

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

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

Oracle 10G First Release的新特性简介(下)

oracle Oracle 10G First Release的新特性简介(下) By Fenng 2003-07-10 注:近日Oracle已经正式宣布该版本的Oracle命名为10G,其中的G为Grid之意.特此更正. 高可用性的加强 1.缩短应用和数据库升级的宕机时间 通过使用standby数据库.允许在不同版本的standby和产品数据库间切换.现有的联机重定义功能能够支持一步克隆所有相关的数据库对象. 2.回闪(Flashback)任何错误 该版本的Oracle也扩展了Flashbac

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

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

如何从 IBM InfoSphere Streams 调用 Python 代码

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

如何集成PureData System for Analytics和InfoSphere Streams

使用 Streams 操作符有效地将海量数据加载到 Netezza 中 InfoSphere Streams 是一个高性能计算平台,支持持续且极其快速地分析来自多个来源的海量流数据.Netezza 设备加载这些数据集并存储它们,以供 PureData System for Analytics 分析.这个可扩展.大规模并行系统使客户端能够对海量数据执行复杂分析. 但是,Streams 2.0 标准数据库工具包所提供的默认 ODBC 操作符,不足以最大限度地发挥系统之间的高性能加载实用程序的优势.您

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

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