一句话:提出倒排索引处理单元 IIU,通过索引压缩与硬件加速器协同设计,提升查询性能并降低能耗。
倒排索引是全文搜索、文档分析等信息检索系统的核心数据结构,其存储需求和查询负载快速增长,因此理想索引系统需在保持小索引的同时降低查询处理时间。已有工作主要利用 CPU/GPU 并行查询并结合压缩方案,但在这些架构上充分扩展并行以利用内存带宽仍具挑战。本文提出 IIU,一种新型倒排索引处理单元,通过协同设计索引方案与硬件加速器,使加速器能高吞吐处理高度压缩的倒排索引;同时提供模块间灵活互连,以利用查询内和查询间并行性。基于周期级模拟器的评估表明,与生产级全文搜索框架 Apache Lucene 相比,IIU 平均降低查询延迟 13.8 倍、提升吞吐 5.4 倍,并平均降低能耗 18.6 倍。
Inverted index serves as a fundamental data structure for efficient search across various applications such as full-text search engine, document analytics and other information retrieval systems. The storage requirement and query load for these structures have been growing at a rapid rate. Thus, an ideal indexing system should maintain a small index size with a low query processing time. Previous works have mainly focused on using CPUs and GPUs to exploit query parallelism while utilizing state-of-the-art compression schemes to fit the index in memory. However, scaling parallelism to maximally utilize memory bandwidth on these architectures is still challenging. In this work, we present IIU, a novel inverted index processing unit, to optimize the query performance while maintaining a low memory overhead for index storage. To this end, we co-design the indexing scheme and hardware accelerator so that the accelerator can process highly compressed inverted index at a high throughput. In addition, IIU provides flexible interconnects between modules to take advantage of both intra- and inter-query parallelism. Our evaluation using a cycle-level simulator demonstrates that IIU provides an average of 13.8\times× query latency reduction and 5.4\times× throughput improvement across different query types, while reducing the average energy consumption by 18.6\times×, compared to Apache Lucene, a production-grade full-text search framework.
DOI 原文 ·
@inproceedings{paperbot5435,
title = {IIU},
author = {Jun Heo and Jaeyeon Won and Yejin Lee and Shivam Bharuka and Jaeyoung Jang and Tae Jun Ham and Jae W. Lee},
booktitle = {ASPLOS},
year = {2020},
doi = {10.1145/3373376.3378521}
}