Joh*_*oDo 4 java indexing performance cqengine
我正在考虑将CQEngine用于我需要处理大量实时事件并不时执行一些查询的项目。它适用于返回结果,但我注意到集合越大,向其中添加或从中删除元素的速度就越慢。
我在集合中添加了一些简单的索引,所以我假设延迟是因为在每个添加/删除的事件中,索引都会更新。我还收到了大量事件的 OutOfMemoryError,从索引随着我认为的集合的增加而增加。
所以我的问题是,对于快速变化的集合(经常从集合中添加和删除元素),CQEngine 中的索引惩罚是什么?
如果您在索引的属性中有很多唯一值,您可能会从网站上讨论的IndexQuantization 中受益。
这是一种在内存使用和检索速度之间进行权衡的方法。但是,如果您有大量唯一值,那么减小内存中索引的大小特别有用。
仅供参考,您也可以在 CQEngine讨论论坛中提问。
希望有帮助!