Apache storm ApacheStorm中Fields类的用途是什么

Apache storm ApacheStorm中Fields类的用途是什么,apache-storm,Apache Storm,我正在看一个Apache Storm的例子。 以下是Bolt类的片段 公共无效declareOutputFields(outputfieldsclarer declarer){ declarer.declare(新字段(“word”); } Declarer用于表示Bolt将发出的字段类型。那么,当上面的语法说“newfields(“word”)时意味着什么呢 它定义了输出元组的模式。即,一个元组有多少个属性以及每个属性的名称 Fields(“word”)使用名为word的单个属性定义架构。因此

我正在看一个Apache Storm的例子。 以下是Bolt类的片段
公共无效declareOutputFields(outputfieldsclarer declarer){
declarer.declare(新字段(“word”);
}


Declarer用于表示Bolt将发出的字段类型。那么,当上面的语法说“newfields(“word”)时意味着什么呢

它定义了输出元组的模式。即,一个元组有多少个属性以及每个属性的名称

Fields(“word”)
使用名为
word
的单个属性定义架构。因此,如果调用
collector.emit(新值(…)
,参数列表必须包含单个值

在接收方(即,消耗输出流的螺栓),您可以通过索引或名称访问属性;该名称是制作人通过
字段
声明的名称


在您的示例中,消费者可以通过
input.getX(0)
input.getXByName(“word”)

访问属性,因此您的意思是-这里的“word”没有任何意义。我们可以用任何字符串代替单词,它应该可以工作。我唯一需要注意的是字符串“word”在字段(“word”)和新值(“word”)中应该相同。我说的对吗?是的,差不多。您可以为属性指定任何名称。虽然“word”是属性的名称,
newvalues(“actualWord”)
为属性“word”创建一个属性值为“actualWord”的新元组。如果您通过数据库中的索引访问属性,则属性的名称不重要。