官术网_书友最值得收藏!

The Storm data model

The basic unit of data that can be processed by a Storm application is called a tuple. Each tuple consists of a predefined list of fields. The value of each field can be a byte, char, integer, long, float, double, Boolean, or byte array. Storm also provides an API to define your own datatypes, which can be serialized as fields in a tuple.

A tuple is dynamically typed, that is, you just need to define the names of the fields in a tuple and not their datatype. The choice of dynamic typing helps to simplify the API and makes it easy to use. Also, since a processing unit in Storm can process multiple types of tuples, it's not practical to declare field types.

Each of the fields in a tuple can be accessed by its name, getValueByField(String), or its positional index, getValue(int), in the tuple. Tuples also provide convenient methods such as getIntegerByField(String) that save you from typecasting the objects. For example, if you have a Fraction (numerator, denominator) tuple, representing fractional numbers, then you can get the value of the numerator by either using getIntegerByField("numerator") or getInteger(0).

You can see the full set of operations supported by org.apache.storm.tuple.Tuple in the Java doc that is located at https://storm.apache.org/releases/1.0.2/javadocs/org/apache/storm/tuple/Tuple.html.

主站蜘蛛池模板: 河池市| 林周县| 公主岭市| 郯城县| 育儿| 金阳县| 无极县| 周宁县| 金乡县| 噶尔县| 张家口市| 德格县| 育儿| 隆尧县| 保定市| 裕民县| 天门市| 宣恩县| 安义县| 浮山县| 定兴县| 竹北市| 纳雍县| 阳信县| 宁国市| 佛教| 清镇市| 兴国县| 环江| 龙门县| 庆城县| 当雄县| 滁州市| 林周县| 济宁市| 筠连县| 新野县| 沿河| 虞城县| 修文县| 巴马|