目录的复合索引

unimr.compositeindex的Python项目详细描述


简介

compositeIndex是zCatalog的插件索引。索引 包含多个用于索引对象的属性的 “综合指数”。如果您希望运行 将在搜索短语和 所有属性加起来的命中率都比任何 只有属性。复合索引的键称为 “复合键”,由 反对。

包含由compositeIndex管理的属性的目录查询 被透明地捕获并转换为compositeIndex查询 (猴子补丁)。尤其是大型网站 附加索引(fieldindex,keywordindex)和大量内容 (10万英镑)将盈利。目录的预期性能增强 查询的系数约为2-3。

统计

Ratio of Calculation Time bet. Atomic- and Composite Index

原子索引查询和复合索引查询之间的计算时间比率。

图中显示compositeIndex的性能提高了 随着索引对象数量的增加(>;1000 目录条目)和 属性。两个查询的命中率约为6% 组合属性,三个组合属性的1% 目录项的总数。为了统一的可比性, 在每次查询之前清除了zodb缓存。

用法

从zcatalog indexes选项卡中,添加compositeindex类型的索引。

id
选择任何您喜欢的有效ID
组合键
要连接的属性的名称

Plone的门户目录示例

plone中的许多目录查询都基于索引的组合 属性如下:是默认页面、查看状态、门户类型和 允许的角色。通常,zcatalog按顺序执行 每个对应的原子索引并计算每个索引之间的交集 结果。这种策略,特别是对于大型站点,减少了 目录的性能和同时增加的波动性 因为每个索引都有一个 命中次数,而每个索引结果之间的交集 点击率低。

compositeIndex克服了这个困难,因为它已经包含了 通过其组合键预先计算的交点。这个 大型机组的负荷和以下昂贵的计算 因此,交集是过时的。

这里我们展示一个plone的配置示例。从门户目录 “索引”选项卡,添加compositeIndex类型的索引。

Id: comp01

Composite key: is_default_page,review_state,portal_type,allowedRolesAndUsers

重新索引复合索引“comp01”。

现在,每个查询包含组合的两个或更多组件 键自动转换为compositeIndex上的查询 “组件01”。

更改日志

0.1-rc1

  • 初始版本

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java日期格式的月和日的固定长度?   无法将java ArrayList<String>转换为字符串。   java当我使用log4j 1.2.15时,编译时出现错误;当更改为1.2.16时,一切正常   java如何使用ArgumentMatchers将任何队列告知Mockito?   如何解决“java”。Java电子邮件API中的lang.ExceptionInInitializerError   java是实例化对象名并设置其值的通用方法   java在多线程环境中,如果一个线程崩溃,如何关闭JVM?   java WebDriverManager在selenium中获取不正确版本的驱动程序   如果JAVA中后减量的优先级高于前增量,那么为什么下面的代码输出为22.0而不是20.0。?   在hibernate中找不到java属性   当我用java运行调度程序时,什么都没有发生   jackson如何在java中从数据库中检索json对象   java安卓:如何在自定义适配器中设置侦听器并获取imagebutton单击的位置   java MySQLIntegrityConstraintViolationException:列“问题id”不能为空错误   JavaSpring自定义注销过滤器在注销前执行一些操作?   java如何返回常量集合   java使用subselect进行一对多分页   java二进制搜索基础。陷入无限循环