我想尝试apache flink,hadoop和solr进行非侵入式日志获取,以便处理和索引它们并进行一些分析和查询。 我正在考虑使用flink对多个应用程序的应用程序日志进行数据处理,然后将它们放在hadoop上,然后使用solr查询它们。 问题是:这真的是非侵入性的吗?从我要监视的服务器上安装并配置代理的角度来看,Flink的行为就像flume。 hadoop和solr是索引大量日志然后以sql风格查询以很好地了解数据并做出一些预测对创建警报有用的良好组合吗?
谢谢。
答案 0 :(得分:1)
我建议在这里使用ELK堆栈。 ELK堆栈是Elasticsearch,Logstash和Kibana。
Logstash
:将数据从任何来源提取到Elasticsearch。源可以是RDBMS,File,MQ等。将目标视为Elasticsearch。
在logstach中,您可以通过提及输入和输出,在conf文件中进行配置。您可以过滤logstash conf文件中的数据。
Elasticsearch
:Elasticsearch是基于Lucene库的搜索引擎。它提供了具有HTTP Web界面和无模式JSON文档的分布式多租户全文搜索引擎。
一旦数据在Elasticsearch上建立索引。您可以通过Rest调用获取数据。您可以使用Elasticsearch的观察程序功能,并在某些特定条件下获取警报/通知。
Kibana
:Kibana是Elasticsearch的开源数据可视化插件。它在Elasticsearch集群上索引的内容之上提供可视化功能。用户可以在大量数据之上创建条形图,折线图和散点图,或饼图和地图。
您可以使用Apache Flink而不是Logstash来摄取数据。 Apache flink可以将数据摄取到Elasticsearch。 这是它的示例。
答案 1 :(得分:1)
我建议您看看Flink的SQL支持。一些公司正在使用它来进行警报和预测。这将具有显着简化堆栈的优势,因为您不需要hadoop或solr(或ELK堆栈)。