首页 > 编程知识 正文

flume的工作原理(Flume 的可靠性级别有哪些?)

时间:2023-05-05 17:40:04 阅读:121566 作者:3914

前言隶属于专栏《1000个问题搞定大数据技术体系》。 这个专栏是笔者原创的。 引用请注明来源。 不足和错误请在评论区指出。 谢谢你。

本专栏的目录结构和参考文献请参考1000个解决问题的大数据技术体系

本文在设计流架构时,可靠性是必须遵循的核心原则之一。

为了实现这一可靠性,Flume允许用户设置可靠性级别。

具体水平为:

端到端可靠性设置为此级别时,如果发送方(接收事件的代理)处于活动状态,发送到Flume的事件一定会到达另一方。

为了实现此级别的可靠性,接收事件数据的代理会将其作为可写入数据的日志(写入头日志,WAL )写入人的磁盘。

当事件数据到达预定终端时,它将向源代理发送一封收件箱,代理将删除该数据。

在此级别,您可以承受原始代理之后的组件故障。

正如我之前指出的,可靠性越高,可扩展性就越低。 此级别是Flume能够提供的最高可靠性级别。

如果Store on failure可靠性设置为此级别,则发送代理(其事件数据通过不同的代理)仅在接收代理出现故障时将数据保存到磁盘。

只有在无法从下一跳接收到确认时,事件的详细信息才会写入磁盘。

此级别更实用,但如果发生无征兆的失败,事件数据可能会永久丢失。

Best-effort这一水平的可靠性是最弱、最轻的水平。 事件直接转发到下一跳,而不写入磁盘,并且与下一个代理无关的收件人可以根据自己的APP应用需求选择正确的信任级别

请记住,可靠性越高,可扩展性越低,维护成本也越高。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。