首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >什么是Apache Druid中的中间持久化?

什么是Apache Druid中的中间持久化?
EN

Stack Overflow用户
提问于 2019-09-13 19:45:55
回答 1查看 397关注 0票数 3

Druid如何在将实时摄取的数据移交到深度存储之前进行持久化?

在文档中,Druid有关于intermedatepersistperiod的配置,并且maxpendingpersists持久化。但它并没有太多地说明什么是中间持久化,它是如何工作的。

从字面上看,我假设它周期性地将实时数据保存在内存中。给定以小时/天为单位的数据段粒度,如果在数据段时间结束之前没有机制来持久化数据,则会产生可用性和可靠性问题。

EN

回答 1

Stack Overflow用户

发布于 2019-09-14 09:54:36

问得好!持久化调用是在Appenderator接口中定义的,该接口提供了有关如何索引数据、如何将数据推送到深度存储以及如何在摄取期间持久化数据的API。"Appenderator.persistAll()“reads方法的注释

代码语言:javascript
复制
Persist any in-memory indexed data to durable storage. This may be only somewhat durable, e.g. the machine's local disk.

默认情况下,该函数在AppenderatorImpl.java中定义,persistAll()最终调用writeCommit()进行持久化,持久化最终只是将值写入一个名为commit.json的json文件。

因此,为了回答你的问题,默认情况下,德鲁伊只需写入Peon的磁盘,就可以保持实时摄取的数据。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57923060

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档