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

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.

主站蜘蛛池模板: 正阳县| 新昌县| 化州市| 丽水市| 岚皋县| 阳春市| 岳西县| 丹巴县| 屏东县| 海门市| 永康市| 自贡市| 清水河县| 永靖县| 平阳县| 武城县| 康马县| 安康市| 桃园市| 龙井市| 昆山市| 屏东市| 汉源县| 枣阳市| 罗田县| 特克斯县| 永和县| 阜阳市| 绥中县| 三原县| 红原县| 滨海县| 大石桥市| 兴隆县| 诏安县| 星座| 会同县| 长岭县| 浦北县| 长乐市| 高安市|