我准备将来自Apache NiFi的推文索引到Elasticsearch作为POST,并希望执行以下操作:
将create_at
字段设为日期。我应该使用映射或索引模板吗?
使某些字段未分析。像主题标签,网址等
想要存储不是整个推文,而是存储一些重要字段。与文本类似,不是所有用户信息,而是来自实体的一些字段,主题标签,URL(在帖子URL中)。不需要引用来源。等等。 在这种情况下我应该使用什么?模板?使用某些ETL流程预处理推文,以便在ES中提取我需要的数据和索引?
我有点困惑。真的很感激建议。
提前致谢。
答案 0 :(得分:1)
我想在你的NiFi中你有类似GetTwitter和PostHTTP的配置。 NiFi已经是某种ETL,所以你可能不需要另外一个。但是,由于您不希望索引整个JSOn来自Twitter,您显然需要在其间使用另一个NiFi流程来选择您想要的内容并将原始JSON转换为另一个更轻量级的JSON。 Here是关于如何为Solr执行此操作的示例,但我不确定Elasticsearch是否存在相同的处理器。
关于使用Logstash将Twitter数据流式传输到Elasticsearch的 This article显示了一个可能的索引模板,您可以使用该模板来塑造您自己的模板(例如,如果您愿意,可以添加create_at
数据字段)。
由于您不希望索引所有内容,因此您可以选择自己的映射,然后可以在索引模板中使用它。使用索引模板,您可以根据需要创建每日/每周/每月的Twitter索引。